NONRTRIC-946: Servicemanager - Add Kong data plane and control plane
[it/dep.git] / README.md
1 <!---
2
3 Copyright (c) 2019 AT&T Intellectual Property.
4 Modifications Copyright (C) 2023 Nordix.
5
6 Licensed under the Creative Commons License, Attribution 4.0 Intl.
7 (the"Documentation License"); you may not use this documentation
8 except incompliance with the Documentation License. You may obtain
9 a copy of the Documentation License at 
10
11     https://creativecommons.org/licenses/by/4.0/
12
13 Unless required by applicable law or agreed to in writing, 
14 documentation distributed under the Documentation License is
15 distributed on an "AS IS"BASIS, WITHOUT WARRANTIES OR CONDITIONS
16 OF ANY KIND, either express or implied. See the Documentation
17 License for the specific language governing permissions and
18 limitations under the Documentation License.
19
20 -->
21
22 This is a comment, it will not be included)
23 [comment]: <> (in  the output file unless you use it in)
24 [comment]: <> (a reference style link.)
25
26
27 # RIC Integration
28   
29 This repo contains RAN Intelligent Controller (RIC) deployments related files.
30
31
32 ### Overview
33
34 The RIC deployment scripts are designed to deploy RIC components using helm charts. A deployment recipe yaml file that
35 contains parameter key:value pairs can be provided as a parameter for any deployment script in this repository. The
36 deployment recipe is acting as the helm override values.yaml file. The default parameters are set up to deploy a 
37 RIC instance using Linux Foundation repositories in a self-contained environment. 
38
39
40 ### Directory Structure
41 .
42 ├── bin
43 ├── ci
44 ├── docs
45 ├── LICENSES.txt  License information
46 ├── README.md           This file
47 ├── RECIPE_EXAMPLE        Directory that contains deploy recipe examples
48 ├── ric-aux               Deployment scripts, charts and configuration files for RIC auxilary functions
49 ├── ric-common            Deployment scripts, charts and configuration files for RIC common template
50 ├── ric-dep               Deployment scripts, charts and configuration files for RIC platform components
51 └── tools         Deployment scripts, charts and configuration files for K8S deployment
52
53 The deployment scripts are designed to be modularized. Each submodule is managed independently in other Git repo and they can be deployed and undeployed separately. These submodules are coupled together throught the ric-common template which provides common references to naming convention, settings, and configurations. Currently ric-dep is the submodule for RIC platform deployment, and ric-aux is the submodule for the auxilary functions deployment (currently ric-aux is still managed by it/dep repo). In the future, more submodules can be added without changing the structure.
54
55 The one-click RIC deployment/undeployment scripts in the ./bin directory will call the deployment/undeployment scripts in the corresponding submodule directory respectively.
56 In each of the submodule directories, ./bin contains the binary and script files and ./helm contains the helm charts. For the rest of the non-submodule directories please refer to the README.md files in them for more details. 
57
58
59 ### Prerequisites
60
61 To deploy RIC, you need to have a cluster that runs kubernetes (version > v.1.16.0) and helm (version v2.14.3).
62 Tools to install a K8S environment in an openstack cloud can be found in ./tools/k8s.
63 Please refer to the README.md file for more details 
64
65 ### To deploy RIC Platform
66 Choose a deployment recipe (e.g, ./RECIPE_EXAMPLE/PLATFORM/amber_example_recipe.yaml)
67 Make a copy of the recipe and edit the key:value pairs in it according to your needs
68 Make sure that you have the correct docker image registry, name, and tag spcified for all the components.
69 Set the values of extsvcaux/ricip and extsvcaux/auxip to be the external IP addresses of VM hosting RIC cluster and VM hosting AUX cluster, respectively.
70 Then run the following to deploy:
71 ```sh
72 $ . ./deploy-ric-platform -f <PATH_TO_YOUR_MODIFIED_RECIPE>
73 ```
74 Run the following to undeploy:
75 ```sh
76 $ . ./undeploy-ric-platform 
77 ```
78
79 ### To deploy RIC Auxiliary functions
80 Choose a deployment recipe (e.g, ./RECIPE_EXAMPLE/AUX/amber_example_recipe.yaml)
81 Make a copy of the recipe and edit the key:value pairs in it according to your needs
82 Set the values of extsvcaux/ricip and extsvcaux/auxip to be the external IP addresses of VM hosting RIC cluster and VM hosting AUX cluster, respectively.
83 ```sh
84 $ . ./deploy-ric-aux -f <PATH_TO_YOUR_MODIFIED_RECIPE>
85 ```
86 Run the following to undeploy:
87 ```sh
88 $ . ./undeploy-ric-aux 
89 ```
90
91 ### NOTE: To Deploy RANPM
92 RANPM helm charts are integrated as a submodule in this repository. To deploy RANPM function set installRanpm: true in the RECEPIE_EXAMPLE file as below:
93
94 nonrtric:
95   installPms: true
96   installA1controller: true
97   installA1simulator: true
98   installControlpanel: true
99   installInformationservice: true
100   installRappcatalogueservice: true
101   installRappcatalogueEnhancedservice: true
102   installNonrtricgateway: true
103   installKong: false
104   installDmaapadapterservice: true
105   installDmaapmediatorservice: true
106   installHelmmanager: true
107   installOruclosedlooprecovery: true
108   installOdusliceassurance: true
109   installCapifcore: true
110   installRanpm: true
111   
112    volume1:
113     # Set the size to 0 if you do not need the volume (if you are using Dynamic Volume Provisioning)
114     size: 2Gi
115     storageClassName: pms-storage
116   volume2:
117      # Set the size to 0 if you do not need the volume (if you are using Dynamic Volume Provisioning)
118     size: 2Gi
119     storageClassName: ics-storage
120   volume3:
121     size: 1Gi
122     storageClassName: helmmanager-storage
123
124 ...
125 ...
126 ...