X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=README-o2imsbuilder.md;h=6e00564f5f3d274c2622ee38202f8b929d3b6750;hb=e0e98d8c53a14158105375aa84f489602caa93a8;hp=e19b7592378c6a3d88fcf9621e80b84664b4cb48;hpb=cb9a72de554108746c4ed35f8ad9e0a5550f626d;p=pti%2Fo2.git diff --git a/README-o2imsbuilder.md b/README-o2imsbuilder.md index e19b759..6e00564 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 @@ -29,32 +36,95 @@ cd o2 mkdir -p temp cd temp -git clone https://opendev.org/starlingx/config.git -git clone https://opendev.org/starlingx/distcloud-client.git +git clone --depth 1 --branch master https://opendev.org/starlingx/config.git +git clone --depth 1 --branch master https://opendev.org/starlingx/distcloud-client.git cd - docker-compose build -## test over inf host +exit + +``` + +### Push O2 service images to local registry (with auth user admin) + +```sh +sudo docker tag o2imsdms:latest registry.local:9001/admin/o2imsdms:0.1.4 +sudo docker image push registry.local:9001/admin/o2imsdms:0.1.4 + +``` + +## 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 -sudo docker login registry.local:9001 -u ${OS_PROJECT_NAME} -p ${OS_PASSWORD} +cat <ocloud-override.yaml +o2ims: + imagePullSecrets: admin-orano2-registry-secret + image: + repository: registry.local:9001/admin/o2imsdms + tag: 0.1.4 + pullPolicy: IfNotPresent + logginglevel: "DEBUG" + +ocloud: + OS_AUTH_URL: "${OS_AUTH_URL}" + OS_USERNAME: "${OS_USERNAME}" + OS_PASSWORD: "${OS_PASSWORD}" +EOF +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 -==> secret/admin-orano2-registry-secret created +cd /home/sysadmin/share/o2 -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 +helm install o2imstest charts/ -f /home/sysadmin/ocloud-override.yaml -cd /home/sysadmin/share/o2 -helm install o2imstest charts kubectl -n ${NAMESPACE} get pods +``` + +### test api endpoint + +```sh +curl -k http(s)://:30205 +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 ocloud; + + \q + + exit + +``` + +## Issues: -## issues: +1, there is chance the containers crash due to random bootstrap order of containers