How to Set Up the 5G Cloud Native Network Demo
Note: This page refers to the version of the demo shown at the Open Networking & Edge Summit, September 28-30, 2020. Further How Tos and Playbooks will be developed after the Open Networking and Edge Summit, October 11-12, 2021 and as part of the 5G Super Blueprint Initiative.
The 5G Cloud Native Network Demo has been shown at several Linux Foundation and industry events over the years. The latest version of the demo was shown at the Open Networking & Edge Summit event, September 28-30, 2020. See the keynote video here (31:00 - 51:00). A goal of the demo is to make it replicable for ecosystem participants to recreate some or all of it in their own labs to help validate this approach to leveraging open source software components.
Listed below are the steps required to recreate this latest version of the demo. Note: The demo working group is now developing a new version that will be shown in Q2/Q3 2021. Please send any questions to lfn-demo@lists.lfnetworking.org.
Clone the EMCO repository
git clone https://git.
onap.org/multicloud/k8s
Deploy the EMCO and EMCO UI Modules
Create onap4k8s namespace.
kubectl create namespace onap4k8s
EMCO modules deployment.
cd k8s/deployment/kubernetes
Open the onap4k8s.yaml and replace the image path 'emcov2/emco:stable' with 'amcop/emco:1.3.0' for all the five modules.
Deploy the DB: kubectl apply -f onap4k8sdb.yaml -n onap4k8s
Deploy the modules: kubectl apply -f onap4k8s.yaml -n onap4k8s
EMCOUI deployment.
cd k8s/src/tools/emcoui/helm
Open the values.yaml and replace the image path 'emcov2/emcoui:stable' with 'emcov2/emcoui'.
Deploy the UI: helm install emcoui --name emcoui --namespace onap4k8s
Access the UI: Open your browser and access http://<EMCO node IP>:30480/app
Deploy OpenShift Cluster
Openshift Kubernetes cluster is used for orchestrating the CNFs.
ALTRAN 5G Core preparation
ALTRAN 5G core CNFs are used for the demo.
Deploy gNB simulator
The gNB simulator from Rebaca is used for the demo.
ALTRAN 5G Core & A10 NGFW Orchestration Using EMCO
Link to the demo recording:
This recording can be referred to for the orchestration of 5G core. However the sequence of Adding cluster and Controller is not complete in the Video. The steps to add cluster and Controller are documented below.
NOTE: NGFW instructions are yet to be added.
EMCO UI Cluster and Controller Registration Flow
Onboard K8s cluster
Before onboarding a K8s cluster, register a cluster provider by clicking on the 'Register Cluster Provider'.
For adding a cluster under the cluster provider, click on the cluster provider drop down and then click on the 'Add Cluster' button.
Fill the above form, upload the kube config of the cluster and click create. In case of OpenShift, specify the username/password in the 'User Data' section in a format as shown in the following example,
{
"cloud-region" : "oc",
"cloud-owner" : "mtl",
"other-connectivity-list" : {
"connectivity-records": [{
"ssl-initiator": "false",
"user-name": "kubeadmin",
"password": <password>
}]
}
}
Once a cluster is added add labels to it by clicking in the plus icon in the labels column. No need to add networks for this DEMO.
Register Controllers
Click on the Controllers from the panel on the left and add Rsync controller,
host: rsync
port: 9041
type: < leave blank, not required.>
priority: < leave blank, not required>
Specs Used During Placement Intent Specification
The placement intents are specified as blobs in the Spec section. Following is the format of the information to be specified,
Generic Placement intent spec, ( use the exact same json).
{"logical-cloud": "unused_logical_cloud"}
For the App Placement intent following is the format,
{ "allOf":[{"provider-name":"<cluster provider name>", "cluster-label-name":" <label of the cluster">}]}