Extend K8S and RIC installation instructions
Fix typo in chartmuseum install output
Increase documented memory and disk requirements
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Ic977fe678a3e114b23c0a8ef144524b23ab3e1d8
diff --git a/docs/installation-ric.rst b/docs/installation-ric.rst
index d93cf30..1bf1368 100644
--- a/docs/installation-ric.rst
+++ b/docs/installation-ric.rst
@@ -19,76 +19,188 @@
Getting and Preparing Deployment Scripts
----------------------------------------
-Run the following commands in a root shell:
+Clone the it/dep git repository that has deployment scripts and support files on the target VM.
+(You might have already done this in a previous step.)
-.. code:: bash
+::
- git clone http://gerrit.o-ran-sc.org/r/it/dep
- cd RECIPE_EXAMPLE
+ % git clone https://gerrit.o-ran-sc.org/r/it/dep
-Edit the recipe files RIC_INFRA_RECIPE_EXAMPLE and RIC_PLATFORM_RECIPE_EXAMPLE. In particular the following values often need adaptation to local deployments:
+Check out the appropriate branch of the repository with the release you want to deploy.
+For example:
-#. Docker registry URL;
-#. Docker registry credential;
-#. Helm repo credential;
-#. Component docker container image tags.
+::
+
+ % git checkout Amber
+
+In the RECIPE_EXAMPLE directory, edit the recipe files RIC_INFRA_RECIPE_EXAMPLE and
+RIC_PLATFORM_RECIPE_EXAMPLE. In particular the following values often need adaptation
+to local deployments:
+
+#. Docker registry URL (property "repository"). This is the default source for
+ container images. For example,
+ nexus3.o-ran-sc.org:10004/o-ran-sc is the staging registry and has freshly built images;
+ nexus3.o-ran-sc.org:10002/o-ran-sc is the release registry and has stable images.
+#. Docker registry credential. This is a name of a Kubernetes credential. Some registries
+ allow anonymous read access, including nexus3.o-ran-sc.org.
+#. Helm repo and credential. The xApp Manager deploys xApps from charts in this repo.
+ No changes are required here for basic dev testing of platform components.
+#. Component docker container image repository override and tag. The recipes specify
+ the docker image to use in terms of name and tag. These entries also allow override
+ of the default docker registry URL (see above); for example, the default might be the
+ releases registry and then a component under test is deployed from the staging registry.
Deploying the Infrastructure and Platform Groups
------------------------------------------------
-After the recipes are edited, the Near Realtime RIIC is ready to be deployed.
+After the recipes are edited, the Near Realtime RIC is ready to be deployed.
+Perform the following steps in a root shell.
.. code:: bash
- cd dep/bin
- ./deploy-ric-infra ../RECIPE_EXAMPLE/RIC_INFRA_RECIPE_EXAMPLE
- ./deploy-ric-platform ../RECIPE_EXAMPLE/RIC_PLATFORM_RECIPE_EXAMPLE
+ % sudo -i
+ # cd dep/bin
+ # ./deploy-ric-infra ../RECIPE_EXAMPLE/RIC_INFRA_RECIPE_EXAMPLE
+ # ./deploy-ric-platform ../RECIPE_EXAMPLE/RIC_PLATFORM_RECIPE_EXAMPLE
Checking the Deployment Status
------------------------------
-Now check the deployment status and results similar to the below indicate a complete and successful deployment.
+Now check the deployment status after a short wait. Results similar to the
+output shown below indicate a complete and successful deployment. Check the
+STATUS column from both kubectl outputs to ensure that all are either
+"Completed" or "Running", and that none are "Error" or "ImagePullBackOff".
.. code::
# helm list
- NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
- r1-a1mediator 1 Tue Nov 26 00:47:12 2019 DEPLOYED a1mediator-1.0.0 1.0 ricplt
- r1-appmgr 1 Tue Nov 26 00:47:09 2019 DEPLOYED appmgr-1.1.0 1.0 ricplt
- r1-dbaas1 1 Tue Nov 26 00:47:10 2019 DEPLOYED dbaas1-1.1.0 1.0 ricplt
- r1-chartmuseum 1 Tue Nov 26 03:16:42 2019 DEPLOYED chartmuseum-0.0.1 0.1 ricinfra
- r1-e2mgr 1 Tue Nov 26 00:47:10 2019 DEPLOYED e2mgr-1.1.0 1.0 ricplt
- r1-e2term 1 Tue Nov 26 00:47:11 2019 DEPLOYED e2term-1.1.0 1.0 ricplt
- r1-extsvcplt 1 Tue Nov 26 00:47:17 2019 DEPLOYED extsvcplt-0.2.0 1.0 ricplt
- r1-jaegeradapter 1 Tue Nov 26 00:47:16 2019 DEPLOYED jaegeradapter-0.1.0 1.0 ricplt
- r1-kong 1 Tue Nov 26 00:45:36 2019 DEPLOYED kong-1.0.0 1.0 ricinfra
- r1-ricaux-credential 1 Tue Nov 26 00:45:42 2019 DEPLOYED credential-1.1.0 1.0 ricaux
- r1-ricinfra-credential 1 Tue Nov 26 00:45:43 2019 DEPLOYED credential-1.1.0 1.0 ricinfra
- r1-ricplt-credential 1 Tue Nov 26 00:45:42 2019 DEPLOYED credential-1.1.0 1.0 ricplt
- r1-ricxapp-credential 1 Tue Nov 26 00:45:42 2019 DEPLOYED credential-1.1.0 1.0 ricxapp
- r1-rsm 1 Tue Nov 26 00:47:15 2019 DEPLOYED rsm-2.0.6 1.0 ricplt
- r1-rtmgr 1 Tue Nov 26 00:47:09 2019 DEPLOYED rtmgr-1.1.0 1.0 ricplt
- r1-submgr 1 Tue Nov 26 00:47:13 2019 DEPLOYED submgr-1.1.0 1.0 ricplt
- r1-vespamgr 1 Tue Nov 26 00:47:14 2019 DEPLOYED vespamgr-0.0.1 1.0 ricplt
- r1-xapp-tiller 1 Tue Nov 26 00:45:44 2019 DEPLOYED xapp-tiller-0.1.0 1.0 ricinfra
- # kubectl get pods -n ricplt
- NAME READY STATUS RESTARTS AGE
- deployment-ricplt-a1mediator-5c4df477f9-6zxxx 1/1 Running 0 132m
- deployment-ricplt-appmgr-65bc8b958c-tggg7 1/1 Running 0 132m
- deployment-ricplt-dbaas-74bf584449-k484v 1/1 Running 0 132m
- deployment-ricplt-e2mgr-74cd9865bc-hpn6b 1/1 Running 0 132m
- deployment-ricplt-e2term-cc7b5d99-pkctr 1/1 Running 0 132m
- deployment-ricplt-jaegeradapter-cc49c64dc-vj622 1/1 Running 0 131m
- deployment-ricplt-rsm-599cd4d6c8-4jhft 1/1 Running 0 131m
- deployment-ricplt-rtmgr-85d89868d6-58wvl 1/1 Running 1 132m
- deployment-ricplt-submgr-7cbd697c7f-p9x4x 1/1 Running 0 132m
- deployment-ricplt-vespamgr-7bb4c7585f-9z6qm 1/1 Running 0 132m
- # kubectl get pods -n ricinfra
- NAME READY STATUS RESTARTS AGE
- deployment-ricinfra-chartmuseum-7d97f4b995-gkxsq 1/1 Running 0 133m
- deployment-tiller-ricxapp-65f9cbc8d7-qcr5t 1/1 Running 0 133m
- r1-kong-kong-84695ff65d-9sjwg 2/2 Running 2 133m
- tiller-secret-generator-w6bnd 0/1 Completed 0 133m
+ NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
+ r1-a1mediator 1 Tue Nov 26 00:47:12 2019 DEPLOYED a1mediator-2.0.0 1.0 ricplt
+ r1-appmgr 1 Tue Nov 26 00:47:09 2019 DEPLOYED appmgr-1.1.0 1.0 ricplt
+ r1-chartmuseum 1 Tue Nov 26 03:16:42 2019 DEPLOYED chartmuseum-0.0.1 0.1 ricinfra
+ r1-dbaas1 1 Tue Nov 26 00:47:10 2019 DEPLOYED dbaas1-1.1.0 1.0 ricplt
+ r1-e2mgr 1 Tue Nov 26 00:47:10 2019 DEPLOYED e2mgr-1.1.0 1.0 ricplt
+ r1-e2term 1 Tue Nov 26 00:47:11 2019 DEPLOYED e2term-1.1.0 1.0 ricplt
+ r1-extsvcplt 1 Tue Nov 26 00:47:17 2019 DEPLOYED extsvcplt-0.2.0 1.0 ricplt
+ r1-jaegeradapter 1 Tue Nov 26 00:47:16 2019 DEPLOYED jaegeradapter-0.1.0 1.0 ricplt
+ r1-kong 1 Tue Nov 26 00:45:36 2019 DEPLOYED kong-1.0.0 1.0 ricinfra
+ r1-ricaux-credential 1 Tue Nov 26 00:45:42 2019 DEPLOYED credential-1.1.0 1.0 ricaux
+ r1-ricinfra-credential 1 Tue Nov 26 00:45:43 2019 DEPLOYED credential-1.1.0 1.0 ricinfra
+ r1-ricplt-credential 1 Tue Nov 26 00:45:42 2019 DEPLOYED credential-1.1.0 1.0 ricplt
+ r1-ricxapp-credential 1 Tue Nov 26 00:45:42 2019 DEPLOYED credential-1.1.0 1.0 ricxapp
+ r1-rsm 1 Tue Nov 26 00:47:15 2019 DEPLOYED rsm-2.0.6 1.0 ricplt
+ r1-rtmgr 1 Tue Nov 26 00:47:09 2019 DEPLOYED rtmgr-1.1.0 1.0 ricplt
+ r1-submgr 1 Tue Nov 26 00:47:13 2019 DEPLOYED submgr-1.1.0 1.0 ricplt
+ r1-vespamgr 1 Tue Nov 26 00:47:14 2019 DEPLOYED vespamgr-0.0.1 1.0 ricplt
+ r1-xapp-tiller 1 Tue Nov 26 00:45:44 2019 DEPLOYED xapp-tiller-0.1.0 1.0 ricinfra
+ # kubectl get pods -n ricinfra
+ NAME READY STATUS RESTARTS AGE
+ deployment-ricinfra-chartmuseum-7d97f4b995-gkxsq 1/1 Running 0 133m
+ deployment-tiller-ricxapp-65f9cbc8d7-qcr5t 1/1 Running 0 133m
+ job-ricinfra-chartmuseum-save-certs-5ntnk 0/1 Completed 0 133m
+ r1-kong-kong-84695ff65d-9sjwg 2/2 Running 2 133m
+ tiller-secret-generator-w6bnd 0/1 Completed 0 133m
+
+ # kubectl get pods -n ricplt
+ NAME READY STATUS RESTARTS AGE
+ deployment-ricplt-a1mediator-5c4df477f9-6zxxx 1/1 Running 0 132m
+ deployment-ricplt-appmgr-65bc8b958c-tggg7 1/1 Running 0 132m
+ deployment-ricplt-dbaas-74bf584449-k484v 1/1 Running 0 132m
+ deployment-ricplt-e2mgr-74cd9865bc-hpn6b 1/1 Running 0 132m
+ deployment-ricplt-e2term-cc7b5d99-pkctr 1/1 Running 0 132m
+ deployment-ricplt-jaegeradapter-cc49c64dc-vj622 1/1 Running 0 131m
+ deployment-ricplt-rsm-599cd4d6c8-4jhft 1/1 Running 0 131m
+ deployment-ricplt-rtmgr-85d89868d6-58wvl 1/1 Running 1 132m
+ deployment-ricplt-submgr-7cbd697c7f-p9x4x 1/1 Running 0 132m
+ deployment-ricplt-vespamgr-7bb4c7585f-9z6qm 1/1 Running 0 132m
+
+
+Checking Container Health
+-------------------------
+
+Check the health of the application manager platform component by querying it
+via the ingress controller using the following command.
+
+.. code:: bash
+
+ % curl -v http://localhost:32080/appmgr/ric/v1/health/ready
+
+The output should look as follows.
+
+.. code::
+
+ * Trying 10.0.2.100...
+ * TCP_NODELAY set
+ * Connected to 10.0.2.100 (10.0.2.100) port 32080 (#0)
+ > GET /appmgr/ric/v1/health/ready HTTP/1.1
+ > Host: 10.0.2.100:32080
+ > User-Agent: curl/7.58.0
+ > Accept: */*
+ >
+ < HTTP/1.1 200 OK
+ < Content-Type: application/json
+ < Content-Length: 0
+ < Connection: keep-alive
+ < Date: Wed, 22 Jan 2020 20:55:39 GMT
+ < X-Kong-Upstream-Latency: 0
+ < X-Kong-Proxy-Latency: 2
+ < Via: kong/1.3.1
+ <
+ * Connection #0 to host 10.0.2.100 left intact
+
+
+Undeploying the Infrastructure and Platform Groups
+--------------------------------------------------
+
+To undeploy all the containers, perform the following steps in a root shell
+within the it-dep repository.
+
+.. code:: bash
+
+ # cd bin
+ # ./undeploy-ric-platform
+ # ./undeploy-ric-infra
+
+Results similar to below indicate a complete and successful cleanup.
+
+.. code::
+
+ # ./undeploy-ric-platform
+ Undeploying RIC platform components [appmgr rtmgr dbaas1 e2mgr e2term a1mediator submgr vespamgr rsm jaegeradapter]
+ release "r1-appmgr" deleted
+ release "r1-rtmgr" deleted
+ release "r1-dbaas1" deleted
+ release "r1-e2mgr" deleted
+ release "r1-e2term" deleted
+ release "r1-a1mediator" deleted
+ release "r1-submgr" deleted
+ release "r1-vespamgr" deleted
+ release "r1-rsm" deleted
+ release "r1-jaegeradapter" deleted
+ Undeploying RIC platform components [extsvcplt]
+ release "r1-extsvcplt" deleted
+
+ # ./undeploy-ric-infra
+ Please reset your kubernetes cluster manually.
+ Undeploying RIC infra components [chartmuseum]
+ release "r1-chartmuseum" deleted
+ Undeploying RIC infra components [elfkp]
+ Undeploying RIC infra components [kong]
+ release "r1-kong" deleted
+ Undeploying RIC infra components [credential]
+ release "r1-ricaux-credential" deleted
+ release "r1-ricinfra-credential" deleted
+ release "r1-ricplt-credential" deleted
+ release "r1-ricxapp-credential" deleted
+ Undeploying RIC infra components [xapp-tiller]
+ release "r1-xapp-tiller" deleted
+
+
+Restarting the VM
+-----------------
+
+After a reboot of the VM, and a suitable delay for initialization,
+all the containers should be running again as shown above.