Merge "Add release notes"
[it/dep.git] / docs / installation-ric.rst
index d93cf30..2ad9515 100644 (file)
 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.)
+
+::
+
+  % git clone https://gerrit.o-ran-sc.org/r/it/dep
+
+Check out the appropriate branch of the repository with the release you want to deploy.
+For example:
 
 .. 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
+  cd dep
+  git submodule update --init --recursive --remote
+
+Modify the deployment recipe
+----------------------------
 
-Edit the recipe files RIC_INFRA_RECIPE_EXAMPLE and RIC_PLATFORM_RECIPE_EXAMPLE.  In particular the following values often need adaptation to local deployments:
+Edit the recipe files ./RECIPE_EXAMPLE/PLATFORM/example_recipe.yaml.
 
-#. Docker registry URL;
-#. Docker registry credential;
-#. Helm repo credential;
-#. Component docker container image tags.
+- Specify the IP addresses used by the RIC and AUX cluster ingress controller (e.g., the main interface IP) in the following section. If you do not plan to set up an AUX cluster, you can put down any private IPs (e.g., 10.0.2.1 and 10.0.2.2).
+
+.. code:: bash
+
+  extsvcplt:
+    ricip: ""
+    auxip: ""
+
+- To specify which version of the RIC platform components will be deployed, update the RIC platform component container tags in their corresponding section.
+- You can specify which docker registry will be used for each component. If the docker registry requires login credential, you can add the credential in the following section. Please note that the installation suite has already included credentials for O-RAN Linux Foundation docker registries. Please do not create duplicate entries.
+
+.. code:: bash
+
+  docker-credential:
+    enabled: true
+    credential:
+      SOME_KEY_NAME:
+        registry: ""
+        credential:
+          user: ""
+          password: ""
+          email: ""
+
+For more advanced recipe configuration options, please refer to the recipe configuration guideline.
 
 
 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 platform is ready to be deployed.
 
 .. code:: bash
 
   cd dep/bin
-  ./deploy-ric-infra ../RECIPE_EXAMPLE/RIC_INFRA_RECIPE_EXAMPLE
-  ./deploy-ric-platform ../RECIPE_EXAMPLE/RIC_PLATFORM_RECIPE_EXAMPLE
+  ./deploy-ric-platform ../RECIPE_EXAMPLE/PLATFORM/example_recipe.yaml
 
 
 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 
+  NAME                  REVISION        UPDATED                         STATUS          CHART                   APP VERSION     NAMESPACE
+  r3-a1mediator         1               Thu Jan 23 14:29:12 2020        DEPLOYED        a1mediator-3.0.0        1.0             ricplt
+  r3-appmgr             1               Thu Jan 23 14:28:14 2020        DEPLOYED        appmgr-3.0.0            1.0             ricplt
+  r3-dbaas1             1               Thu Jan 23 14:28:40 2020        DEPLOYED        dbaas1-3.0.0            1.0             ricplt
+  r3-e2mgr              1               Thu Jan 23 14:28:52 2020        DEPLOYED        e2mgr-3.0.0             1.0             ricplt
+  r3-e2term             1               Thu Jan 23 14:29:04 2020        DEPLOYED        e2term-3.0.0            1.0             ricplt
+  r3-infrastructure     1               Thu Jan 23 14:28:02 2020        DEPLOYED        infrastructure-3.0.0    1.0             ricplt
+  r3-jaegeradapter      1               Thu Jan 23 14:29:47 2020        DEPLOYED        jaegeradapter-3.0.0     1.0             ricplt
+  r3-rsm                1               Thu Jan 23 14:29:39 2020        DEPLOYED        rsm-3.0.0               1.0             ricplt
+  r3-rtmgr              1               Thu Jan 23 14:28:27 2020        DEPLOYED        rtmgr-3.0.0             1.0             ricplt
+  r3-submgr             1               Thu Jan 23 14:29:23 2020        DEPLOYED        submgr-3.0.0            1.0             ricplt
+  r3-vespamgr           1               Thu Jan 23 14:29:31 2020        DEPLOYED        vespamgr-3.0.0          1.0             ricplt
+
   # 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
+  NAME                                               READY   STATUS             RESTARTS   AGE
+  deployment-ricplt-a1mediator-69f6d68fb4-7trcl      1/1     Running            0          159m
+  deployment-ricplt-appmgr-845d85c989-qxd98          2/2     Running            0          160m
+  deployment-ricplt-dbaas-7c44fb4697-flplq           1/1     Running            0          159m
+  deployment-ricplt-e2mgr-569fb7588b-wrxrd           1/1     Running            0          159m
+  deployment-ricplt-e2term-alpha-db949d978-rnd2r     1/1     Running            0          159m
+  deployment-ricplt-jaegeradapter-585b4f8d69-tmx7c   1/1     Running            0          158m
+  deployment-ricplt-rsm-755f7c5c85-j7fgf             1/1     Running            0          158m
+  deployment-ricplt-rtmgr-c7cdb5b58-2tk4z            1/1     Running            0          160m
+  deployment-ricplt-submgr-5b4864dcd7-zwknw          1/1     Running            0          159m
+  deployment-ricplt-vespamgr-864f95c9c9-5wth4        1/1     Running            0          158m
+  r3-infrastructure-kong-68f5fd46dd-lpwvd            2/2     Running            3          160m
+
   # 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                                        READY   STATUS      RESTARTS   AGE
+  deployment-tiller-ricxapp-d4f98ff65-9q6nb   1/1     Running     0          163m
+  tiller-secret-generator-plpbf               0/1     Completed   0          163m
+
+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
+
+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 infrastructure]
+  release "r3-appmgr" deleted
+  release "r3-rtmgr" deleted
+  release "r3-dbaas1" deleted
+  release "r3-e2mgr" deleted
+  release "r3-e2term" deleted
+  release "r3-a1mediator" deleted
+  release "r3-submgr" deleted
+  release "r3-vespamgr" deleted
+  release "r3-rsm" deleted
+  release "r3-jaegeradapter" deleted
+  release "r3-infrastructure" deleted
+  configmap "ricplt-recipe" deleted
+  namespace "ricxapp" deleted
+  namespace "ricinfra" deleted
+  namespace "ricplt" 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.