From b10370cb16f07807860f8171432e554cec51e207 Mon Sep 17 00:00:00 2001 From: Bin Yang Date: Sun, 21 Nov 2021 13:14:22 +0800 Subject: [PATCH] Change service type to NodePort Signed-off-by: Bin Yang Change-Id: I3307bed6660da50f28e4d56762e215ef0432db83 --- README-o2imsbuilder.md | 98 +++++++++++++++++++++++++++++++++---------- charts/templates/service.yaml | 5 ++- 2 files changed, 78 insertions(+), 25 deletions(-) diff --git a/README-o2imsbuilder.md b/README-o2imsbuilder.md index a2b4816..e451723 100644 --- a/README-o2imsbuilder.md +++ b/README-o2imsbuilder.md @@ -1,17 +1,24 @@ -## build o2ims from a container over INF +## Build and deploy O2 services over O-Cloud (INF) -## bring up container +## Bring up builder container from O-Cloud controller node -## Important: make sure container and host shares the same filepath to overcome local dir mounting issue +```sh mkdir -p /home/sysadmin/share -sudo docker run -dt --privileged -v /home/sysadmin/share/:/home/sysadmin/share/ -v /var/run:/var/run --name o2imsbuilder2 centos:7 +sudo docker run -dt --privileged -v /home/sysadmin/share/:/home/sysadmin/share/ -v /var/run:/var/run --name o2imsbuilder centos:7 +``` -## build inside container -sudo docker exec -it o2imsbuilder2 bash +## Build O2 service images inside the builder container + +```sh +sudo docker exec -it o2imsbuilder bash +``` + + +```sh curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose docker-compose -v @@ -35,25 +42,26 @@ cd - docker-compose build -## test over inf host -export NAMESPACE=orano2 -kubectl create ns ${NAMESPACE} - -source /etc/platform/openrc -sudo docker login registry.local:9001 -u ${OS_PROJECT_NAME} -p ${OS_PASSWORD} +exit +``` -kubectl -n ${NAMESPACE} create secret docker-registry ${OS_PROJECT_NAME}-${NAMESPACE}-registry-secret \ ---docker-server=registry.local:9001 --docker-username=${OS_PROJECT_NAME} \ ---docker-password=${OS_PASSWORD} --docker-email=noreply@windriver.com - -==> secret/admin-orano2-registry-secret created +### Push O2 service images to local registry (with auth user admin) +```sh sudo docker tag o2imsdms:latest registry.local:9001/admin/o2imsdms:0.1.1 sudo docker image push registry.local:9001/admin/o2imsdms:0.1.1 -cd /home/sysadmin/share/o2 +``` + +## Deploy O2 services with helm chart over O-Cloud controller node (with auth user admin) + +```sh +export NAMESPACE=orano2 +kubectl create ns ${NAMESPACE} +cd /home/sysadmin/ +source /etc/platform/openrc cat <ocloud-override.yaml o2ims: imagePullSecrets: admin-orano2-registry-secret @@ -64,14 +72,58 @@ o2ims: logginglevel: "DEBUG" ocloud: - OS_AUTH_URL: "your O-Cloud Auth endpoint, e.g. http://1.2.3.4:5000/v3" - OS_USERNAME: "Your auth Username" - OS_PASSWORD: "Your auth Password" + OS_AUTH_URL: "${OS_AUTH_URL}" + OS_USERNAME: "${OS_USERNAME}" + OS_PASSWORD: "${OS_PASSWORD}" EOF -helm install o2imstest charts/ -f ocloud-override.yaml +sudo docker login registry.local:9001 -u ${OS_PROJECT_NAME} -p ${OS_PASSWORD} + +kubectl -n ${NAMESPACE} create secret docker-registry ${OS_PROJECT_NAME}-${NAMESPACE}-registry-secret \ +--docker-server=registry.local:9001 --docker-username=${OS_PROJECT_NAME} \ +--docker-password=${OS_PASSWORD} --docker-email=noreply@windriver.com + +cd /home/sysadmin/share/o2 + +helm install o2imstest charts/ -f /home/sysadmin/ocloud-override.yaml kubectl -n ${NAMESPACE} get pods +``` + +### test api endpoint + +```sh +curl -k http(s)://:30205/o2ims_infrastructureInventory/v1 +``` + + +### Debug tips + +```sh +kubectl -n ${NAMESPACE} logs -f o2api- -c o2api +kubectl -n ${NAMESPACE} logs -f o2api- -c postgres +kubectl -n ${NAMESPACE} logs -f o2api- -c o2pubsub +kubectl -n ${NAMESPACE} logs -f o2api- -c watcher + + +kubectl -n ${NAMESPACE} logs -f o2api- -c o2api + +kubectl -n ${NAMESPACE} exec -it o2api- -c postgres -- bash + psql -U o2ims + + \c o2ims + + \d + + select * from stxcache; + + \q + + exit + +``` + +## Issues: -## issues: +1, there is chance the containers crash due to random bootstrap order of containers diff --git a/charts/templates/service.yaml b/charts/templates/service.yaml index 7352918..fba16e3 100644 --- a/charts/templates/service.yaml +++ b/charts/templates/service.yaml @@ -19,11 +19,12 @@ metadata: name: o2api namespace: {{ .Values.global.namespace }} spec: - #clusterIP: None + type: NodePort ports: - name: o2api port: 5005 - targetPort: 5005 + targetPort: 80 + nodePort: 30205 protocol: TCP selector: app: o2api -- 2.16.6