-
Notifications
You must be signed in to change notification settings - Fork 0
Deployment Steps
- Mongo version 3.6.8;
- Kubernetes Cluster version between 1.16 and 1.21;
- Kuberbetes SO Nodes:
- Debian Running Real Time Kernel;
- Ubuntu (Recomended) Running Low Latency Kernel;
- First install mongo version 3.6.8 to run core database in one place acessible by cluster:
sudo apt-get install sudo apt-get install -y mongodb-org=3.6.8
-
Change core deployment file to correct database IP updating env value DB_IP to IP from place where is running mongo from the previsous step;
-
Label node or nodes with tag core=true where the core is allowed to run, in the example below, it is allowed to run in node1:
kubectl label nodes node1 core=true
- Start core:
kubectl apply -f images/core/core-deployment.yaml
- Just apply deployment and service from the scheduler file:
kubectl apply -f scheduler-manager/k8s/deployment.yaml
- Install Go Version 1.14
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.14.15.linux-amd64.tar.gz &&\
export PATH=$PATH:/usr/local/go/bin &&\
source $HOME/.profile
- Install kustomize
curl -s "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh" | bash &&\
mv kustomize /usr/bin/
- Compile and deploy Operator. Go inside k8s-operator/ and:
make install && make deploy
- First, get de IP from the core pod:
kubectl get pods -o wide
-
Edit file ran_v1alpha1_randeployer.yaml and change the coreIP parameter to the address we copied in the previous step:
-
And start to chain an applying custom resource RANDeployer with the command:
kubectl apply -f k8s-operator/config/samples/ran_v1alpha1_randeployer.yaml
Running more complex topologies: Now label the nodes that will be able to receive the VNFs from the RAN. In example bellow nodes1 and 2 are used to master. Other are used to run RAN VNFs nodes.
kubectl label node node1 oai.unisinos/node-number=0 --overwrite
kubectl label node node2 oai.unisinos/node-number=0 --overwrite
kubectl label node node3 oai.unisinos/node-number=1 --overwrite
kubectl label node node4 oai.unisinos/node-number=2 --overwrite
kubectl label node node5 oai.unisinos/node-number=3 --overwrite
kubectl label node node6 oai.unisinos/node-number=4 --overwrite
- Setup RUs locations in the format of file rus.yaml, where "RU": 0 not will tun RU and 1 will RUN. This spec is used too to define the number of the chains.
- Setup Network links in the format of file topology.yaml. These values are used to algorithm compute teh VNFs locations.
- Apply topology:
kubectl apply -f k8s-operators/config/samples/ran-placer-config-maps/mini-topo/.
-
Edit file ran_v1alpha1_ranplacer.yaml and change the coreIP parameter to the address we copied in the previous step:
-
And finally, start chain an applying custom resource RANPlacer with the command:
kubectl apply -f k8s-operator/config/samples/ran_v1alpha1_ranplacer.yaml