1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. SPDX-License-Identifier: CC-BY-4.0
3 .. ===============LICENSE_START=======================================================
4 .. Copyright (C) 2019-2020 AT&T Intellectual Property
5 .. ===================================================================================
6 .. This documentation file is distributed under the Creative Commons Attribution
7 .. 4.0 International License (the "License"); you may not use this file except in
8 .. compliance with the License. You may obtain a copy of the License at
10 .. http://creativecommons.org/licenses/by/4.0
12 .. This file is distributed on an "AS IS" BASIS,
13 .. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 .. See the License for the specific language governing permissions and
15 .. limitations under the License.
16 .. ===============LICENSE_END=========================================================
19 Getting and Preparing Deployment Scripts
20 ----------------------------------------
22 Clone the it/dep git repository that has deployment scripts and support files on the target VM.
23 (You might have already done this in a previous step.)
27 % git clone https://gerrit.o-ran-sc.org/r/it/dep
29 Check out the appropriate branch of the repository with the release you want to deploy.
34 git clone https://gerrit.o-ran-sc.org/r/it/dep
36 git submodule update --init --recursive --remote
38 Modify the deployment recipe
39 ----------------------------
41 Edit the recipe files ./RECIPE_EXAMPLE/PLATFORM/example_recipe.yaml.
43 - 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).
51 - To specify which version of the RIC platform components will be deployed, update the RIC platform component container tags in their corresponding section.
52 - 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.
66 For more advanced recipe configuration options, please refer to the recipe configuration guideline.
69 Deploying the Infrastructure and Platform Groups
70 ------------------------------------------------
72 After the recipes are edited, the Near Realtime RIC platform is ready to be deployed.
77 ./deploy-ric-platform ../RECIPE_EXAMPLE/PLATFORM/example_recipe.yaml
80 Checking the Deployment Status
81 ------------------------------
83 Now check the deployment status after a short wait. Results similar to the
84 output shown below indicate a complete and successful deployment. Check the
85 STATUS column from both kubectl outputs to ensure that all are either
86 "Completed" or "Running", and that none are "Error" or "ImagePullBackOff".
91 NAME REVISION UPDATED STATUS CHART APP VERSION NAMESPACE
92 r3-a1mediator 1 Thu Jan 23 14:29:12 2020 DEPLOYED a1mediator-3.0.0 1.0 ricplt
93 r3-appmgr 1 Thu Jan 23 14:28:14 2020 DEPLOYED appmgr-3.0.0 1.0 ricplt
94 r3-dbaas1 1 Thu Jan 23 14:28:40 2020 DEPLOYED dbaas1-3.0.0 1.0 ricplt
95 r3-e2mgr 1 Thu Jan 23 14:28:52 2020 DEPLOYED e2mgr-3.0.0 1.0 ricplt
96 r3-e2term 1 Thu Jan 23 14:29:04 2020 DEPLOYED e2term-3.0.0 1.0 ricplt
97 r3-infrastructure 1 Thu Jan 23 14:28:02 2020 DEPLOYED infrastructure-3.0.0 1.0 ricplt
98 r3-jaegeradapter 1 Thu Jan 23 14:29:47 2020 DEPLOYED jaegeradapter-3.0.0 1.0 ricplt
99 r3-rsm 1 Thu Jan 23 14:29:39 2020 DEPLOYED rsm-3.0.0 1.0 ricplt
100 r3-rtmgr 1 Thu Jan 23 14:28:27 2020 DEPLOYED rtmgr-3.0.0 1.0 ricplt
101 r3-submgr 1 Thu Jan 23 14:29:23 2020 DEPLOYED submgr-3.0.0 1.0 ricplt
102 r3-vespamgr 1 Thu Jan 23 14:29:31 2020 DEPLOYED vespamgr-3.0.0 1.0 ricplt
104 # kubectl get pods -n ricplt
105 NAME READY STATUS RESTARTS AGE
106 deployment-ricplt-a1mediator-69f6d68fb4-7trcl 1/1 Running 0 159m
107 deployment-ricplt-appmgr-845d85c989-qxd98 2/2 Running 0 160m
108 deployment-ricplt-dbaas-7c44fb4697-flplq 1/1 Running 0 159m
109 deployment-ricplt-e2mgr-569fb7588b-wrxrd 1/1 Running 0 159m
110 deployment-ricplt-e2term-alpha-db949d978-rnd2r 1/1 Running 0 159m
111 deployment-ricplt-jaegeradapter-585b4f8d69-tmx7c 1/1 Running 0 158m
112 deployment-ricplt-rsm-755f7c5c85-j7fgf 1/1 Running 0 158m
113 deployment-ricplt-rtmgr-c7cdb5b58-2tk4z 1/1 Running 0 160m
114 deployment-ricplt-submgr-5b4864dcd7-zwknw 1/1 Running 0 159m
115 deployment-ricplt-vespamgr-864f95c9c9-5wth4 1/1 Running 0 158m
116 r3-infrastructure-kong-68f5fd46dd-lpwvd 2/2 Running 3 160m
118 # kubectl get pods -n ricinfra
119 NAME READY STATUS RESTARTS AGE
120 deployment-tiller-ricxapp-d4f98ff65-9q6nb 1/1 Running 0 163m
121 tiller-secret-generator-plpbf 0/1 Completed 0 163m
123 Checking Container Health
124 -------------------------
126 Check the health of the application manager platform component by querying it
127 via the ingress controller using the following command.
131 % curl -v http://localhost:32080/appmgr/ric/v1/health/ready
133 The output should look as follows.
137 * Trying 10.0.2.100...
139 * Connected to 10.0.2.100 (10.0.2.100) port 32080 (#0)
140 > GET /appmgr/ric/v1/health/ready HTTP/1.1
141 > Host: 10.0.2.100:32080
142 > User-Agent: curl/7.58.0
146 < Content-Type: application/json
148 < Connection: keep-alive
149 < Date: Wed, 22 Jan 2020 20:55:39 GMT
150 < X-Kong-Upstream-Latency: 0
151 < X-Kong-Proxy-Latency: 2
154 * Connection #0 to host 10.0.2.100 left intact
157 Undeploying the Infrastructure and Platform Groups
158 --------------------------------------------------
160 To undeploy all the containers, perform the following steps in a root shell
161 within the it-dep repository.
166 # ./undeploy-ric-platform
168 Results similar to below indicate a complete and successful cleanup.
172 # ./undeploy-ric-platform
173 Undeploying RIC platform components [appmgr rtmgr dbaas1 e2mgr e2term a1mediator submgr vespamgr rsm jaegeradapter infrastructure]
174 release "r3-appmgr" deleted
175 release "r3-rtmgr" deleted
176 release "r3-dbaas1" deleted
177 release "r3-e2mgr" deleted
178 release "r3-e2term" deleted
179 release "r3-a1mediator" deleted
180 release "r3-submgr" deleted
181 release "r3-vespamgr" deleted
182 release "r3-rsm" deleted
183 release "r3-jaegeradapter" deleted
184 release "r3-infrastructure" deleted
185 configmap "ricplt-recipe" deleted
186 namespace "ricxapp" deleted
187 namespace "ricinfra" deleted
188 namespace "ricplt" deleted
194 After a reboot of the VM, and a suitable delay for initialization,
195 all the containers should be running again as shown above.