X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=README-o2imsbuilder.md;h=70547c804c269917e2ecd5d2c92c53d0ac5b9978;hb=5c00dc9e61bd13c3f5a97ce5e821512553560043;hp=4ab644f2b18f5e2b854dfc94d7432da43bb266e3;hpb=84867b76a65efc4e9add52c86eae7e451c4a038d;p=pti%2Fo2.git diff --git a/README-o2imsbuilder.md b/README-o2imsbuilder.md index 4ab644f..70547c8 100644 --- a/README-o2imsbuilder.md +++ b/README-o2imsbuilder.md @@ -1,130 +1,135 @@ - -## Build and deploy O2 services over O-Cloud (INF) - - -## Bring up builder container from O-Cloud controller node - - -```sh -mkdir -p /home/sysadmin/share -sudo docker run -dt --privileged -v /home/sysadmin/share/:/home/sysadmin/share/ -v /var/run:/var/run --name o2imsbuilder centos:7 -``` - -## 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 - -yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -yum makecache fast -yum install -y docker-ce -docker ps - -yum install -y git - -cd /home/sysadmin/share/ -git clone "https://gerrit.o-ran-sc.org/r/pti/o2" -cd o2 - -mkdir -p temp -cd temp -git clone https://opendev.org/starlingx/config.git -git clone https://opendev.org/starlingx/distcloud-client.git -cd - - -docker-compose build - -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 -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 - -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 -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: - -1, there is chance the containers crash due to random bootstrap order of containers + +## Build and deploy O2 services over O-Cloud (INF) + + +## Bring up builder container from O-Cloud controller node + + +```sh +mkdir -p /home/sysadmin/share +sudo docker run -dt --privileged -v /home/sysadmin/share/:/home/sysadmin/share/ -v /var/run:/var/run --name o2imsbuilder centos:7 +``` + +## 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 + +yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo +yum makecache fast +yum install -y docker-ce +docker ps + +yum install -y git + +cd /home/sysadmin/share/ +git clone "https://gerrit.o-ran-sc.org/r/pti/o2" +cd o2 + +mkdir -p temp +cd temp +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 + +exit + +``` + +### Push O2 service images to local registry (with auth user admin) + +```sh +sudo docker tag o2imsdms:latest registry.local:9001/o-ran-sc/pti-o2imsdms:2.0.0 +sudo docker image push registry.local:9001/o-ran-sc/pti-o2imsdms:2.0.0 + +``` + +## Deploy O2 services with helm chart over O-Cloud controller node (with auth user admin) + +```sh +export NAMESPACE=oran-o2 +kubectl create ns ${NAMESPACE} + +cd /home/sysadmin/ +source /etc/platform/openrc +cat <ocloud-override.yaml +imagePullSecrets: + - default-registry-key + +o2ims: + serviceaccountname: admin-oran-o2 + images: + tags: + o2service: registry.local:9001/o-ran-sc/pti-o2imsdms:2.0.0 + postgres: docker.io/library/postgres:9.6 + redis: docker.io/library/redis:alpine + 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 + +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 +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: + +1, there is chance the containers crash due to random bootstrap order of containers