summary |
shortlog |
log |
commit | commitdiff |
review |
tree
raw |
patch |
inline | side by side (from parent 1:
209f349)
1. Fix NO_PUBKEY while update apt source of the kubernets
2. Update image address in the o2service-override.yaml
Signed-off-by: Zhang Rong(Jon) <rong.zhang@windriver.com>
Change-Id: I9ffb81cbd4d12566f4f002a1997dc88bd82978a2
(cherry picked from commit
3985a27696d6c5857ad54ecac7f8da32ad8edfc3)
-This project implements a reference implementation for O-RAN O2 IMS and DMS to expose INF platfrom to SMO with O2 interface.
+This project implements a reference implementation for O-RAN O2 IMS and DMS to expose the INF platform to SMO with the O2 interface.
-To contribute on this project, you are supposed to be familiar with INF platfrom as well as O-RAN O2 interface specifications:
+To contribute to this project, you are supposed to be familiar with the INF platform as well as O-RAN O2 interface specifications:
- `O-RAN SC INF platfrom`_
- `O-RAN O2 interface`_
- `O-RAN SC INF platfrom`_
- `O-RAN O2 interface`_
-1. Prerequisite for build environment
--------------------------------------
+1. Prerequisite for building environment
+----------------------------------------
* A ubuntu 18.04 host is sufficient to build o2 projects
* A ubuntu 18.04 host is sufficient to build o2 projects
# clone code from gerrit repo
$ git clone "https://gerrit.o-ran-sc.org/r/pti/o2" && (cd "o2" && mkdir -p .git/hooks && curl -Lo `git rev-parse --git-dir`/hooks/commit-msg https://gerrit.o-ran-sc.org/r/tools/hooks/commit-msg; chmod +x `git rev-parse --git-dir`/hooks/commit-msg)
# clone code from gerrit repo
$ git clone "https://gerrit.o-ran-sc.org/r/pti/o2" && (cd "o2" && mkdir -p .git/hooks && curl -Lo `git rev-parse --git-dir`/hooks/commit-msg https://gerrit.o-ran-sc.org/r/tools/hooks/commit-msg; chmod +x `git rev-parse --git-dir`/hooks/commit-msg)
-1. local test with docker-compose
+2. Local test with docker-compose
---------------------------------
* To test with docker-compose, a docker engine is supposed to be installed as well
---------------------------------
* To test with docker-compose, a docker engine is supposed to be installed as well
$ docker-compose build
$ docker-compose up -d
$ docker-compose build
$ docker-compose up -d
* To test with INF platform, you should install INF platform first, by default you will be able to use the 'admin' user
* To test with INF platform, you should install INF platform first, by default you will be able to use the 'admin' user
$ source ./admin_openrc.sh
$ export |grep OS_AUTH_URL
$ source ./admin_openrc.sh
$ export |grep OS_AUTH_URL
4, Tear down docker containers
4, Tear down docker containers
$ docker-compose down --remove-orphans
$ docker-compose down --remove-orphans
- Please see the O-RAN INF documentation to find out how to ssh to controller host of INF platform.
- Please see the O-RAN INF documentation to find out how to ssh to controller host of INF platform.
USER="admin-user"
NAMESPACE="kube-system"
USER="admin-user"
NAMESPACE="kube-system"
The following instruction should be done outside of INF platform controller host
The following instruction should be done outside of INF platform controller host
sudo apt-get install -y apt-transport-https
echo "deb http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial main" | \
sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo apt-get install -y apt-transport-https
echo "deb http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial main" | \
sudo tee -a /etc/apt/sources.list.d/kubernetes.list
+ gpg --keyserver keyserver.ubuntu.com --recv-keys 836F4BEB
+ gpg --export --armor 836F4BEB | sudo apt-key add -
sudo apt-get update
sudo apt-get install -y kubectl
source <(kubectl completion bash) # setup autocomplete in bash into the current shell, bash-completion package should be installed first.
echo "source <(kubectl completion bash)" >> ~/.bashrc # add autocomplete permanently to your bash shell.
sudo apt-get update
sudo apt-get install -y kubectl
source <(kubectl completion bash) # setup autocomplete in bash into the current shell, bash-completion package should be installed first.
echo "source <(kubectl completion bash)" >> ~/.bashrc # add autocomplete permanently to your bash shell.
- https://get.helm.sh/helm-v3.5.3-linux-amd64.tar.gz
+ curl https://get.helm.sh/helm-v3.5.3-linux-amd64.tar.gz --output helm-v3.5.3-linux-amd64.tar.gz
tar xvf helm-v3.5.3-linux-amd64.tar.gz
tar xvf helm-v3.5.3-linux-amd64.tar.gz
- sudo cp linux-amd64/helm /usr/local/bin
+ sudo cp linux-amd64/helm /usr/local/bin/
source <(helm completion bash)
echo "source <(helm completion bash)" >> ~/.bashrc
source <(helm completion bash)
echo "source <(helm completion bash)" >> ~/.bashrc
kubectl config set-cluster inf-cluster --server=https://${OAM_IP}:6443 --insecure-skip-tls-verify
kubectl config set-credentials ${USER} --token=$TOKEN_DATA
kubectl config set-cluster inf-cluster --server=https://${OAM_IP}:6443 --insecure-skip-tls-verify
kubectl config set-credentials ${USER} --token=$TOKEN_DATA
- kubectl config set-context ${USER}@inf-cluster --cluster=inf-cluster --user ${USER} --namespace=${NAMESPACE}
+ kubectl config set-context ${USER}@inf-cluster --cluster=inf-cluster --user ${USER} --namespace=${NAMESPACE}
kubectl config use-context ${USER}@inf-cluster
kubectl get pods -A
kubectl config use-context ${USER}@inf-cluster
kubectl get pods -A
2.1 Retrieve Helm chart for deploying of O2 service
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2.1 Retrieve Helm chart for deploying of O2 service
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- git clone -b e-release "https://gerrit.o-ran-sc.org/r/pti/o2"
+ git clone -b e-release "https://gerrit.o-ran-sc.org/r/pti/o2"
2.2 Prepare override yaml
~~~~~~~~~~~~~~~~~~~~~~~~~
2.2 Prepare override yaml
~~~~~~~~~~~~~~~~~~~~~~~~~
export NAMESPACE=orano2
kubectl create ns ${NAMESPACE}
export NAMESPACE=orano2
kubectl create ns ${NAMESPACE}
- cd /home/sysadmin/
- source /etc/platform/openrc
+ export OS_AUTH_URL=<INF OAM Auth URL>
+ export OS_USERNAME=<INF username>
+ export OS_PASSWORD=<INF password for user>
+
cat <<EOF>o2service-override.yaml
o2ims:
imagePullSecrets: admin-orano2-registry-secret
image:
cat <<EOF>o2service-override.yaml
o2ims:
imagePullSecrets: admin-orano2-registry-secret
image:
- repository: registry.local:9001/admin/o2imsdms
- tag: 0.1.4
+ repository: nexus3.o-ran-sc.org:10004/o-ran-sc/pti-o2imsdms
+ tag: 1.0.0
pullPolicy: IfNotPresent
logginglevel: "DEBUG"
pullPolicy: IfNotPresent
logginglevel: "DEBUG"
2.3 Deploy by helm cli
~~~~~~~~~~~~~~~~~~~~~~
2.3 Deploy by helm cli
~~~~~~~~~~~~~~~~~~~~~~
helm install o2service o2/charts/ -f o2service-override.yaml
helm list |grep o2service
helm install o2service o2/charts/ -f o2service-override.yaml
helm list |grep o2service
2.4 Verify O2 service
~~~~~~~~~~~~~~~~~~~~~
2.4 Verify O2 service
~~~~~~~~~~~~~~~~~~~~~
curl -k http(s)://<OAM IP>:30205
curl -k http(s)://<OAM IP>:30205
- curl -k http(s)://<OAM IP>:30205/o2ims_infrastructureInventory/v1
+ curl -k http(s)://<OAM IP>:30205/o2ims_infrastructureInventory/v1/
3. Register O-Cloud to SMO
3. Register O-Cloud to SMO
- assumed you have setup SMO O2 endpoint for registration
- O2 service will post the O-Cloud registration data to that SMO O2 endpoint
- assumed you have setup SMO O2 endpoint for registration
- O2 service will post the O-Cloud registration data to that SMO O2 endpoint
- curl -k -X POST http(s)://<OAM IP>:30205/provision/v1/smo-endpoint -d '{"endpoint": "<SMO O2 endpoint for registration>"}'
+ curl -k -X 'POST' \
+ 'http(s)://<OAM IP>:30205/provision/v1/smo-endpoint' \
+ -H 'accept: application/json' \
+ -H 'Content-Type: application/json' \
+ -d '{"endpoint": "<SMO O2 endpoint for registration>"}'