4f1102fb426e9ff5bfa1fddcf6c4ea821d29091b
[it/dep.git] / README.md
1 <!---
2
3 Copyright (c) 2019 AT&T Intellectual Property.
4
5 Licensed under the Creative Commons License, Attribution 4.0 Intl.
6 (the"Documentation License"); you may not use this documentation
7 except incompliance with the Documentation License. You may obtain
8 a copy of the Documentation License at 
9
10     https://creativecommons.org/licenses/by/4.0/
11
12 Unless required by applicable law or agreed to in writing, 
13 documentation distributed under the Documentation License is
14 distributed on an "AS IS"BASIS, WITHOUT WARRANTIES OR CONDITIONS
15 OF ANY KIND, either express or implied. See the Documentation
16 License for the specific language governing permissions and
17 limitations under the Documentation License.
18
19 -->
20
21 This is a comment, it will not be included)
22 [comment]: <> (in  the output file unless you use it in)
23 [comment]: <> (a reference style link.)
24
25
26 # RIC Integration
27   
28 This repo contains RAN Intelligent Controller (RIC) deployments related files.
29
30
31 ### Overview
32
33 The RIC deployment scripts are designed to deploy RIC components using helm charts. A deployment recipe yaml file that
34 contains parameter key:value pairs can be provided as a parameter for any deployment script in this repository. The
35 deployment recipe is acting as the helm override values.yaml file. If no deployment recipe is provided, default parameters
36 are used. The default parameters are set up to deploy a RIC instance using Linux Foundation repositories in a
37 self-contained environment. 
38
39
40 ### Directory Structure
41 .
42 ├── bin
43 ├── ci
44 ├── etc
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-infra             Deployment scripts, charts and configuration files for infrastructure support
51 ├── ric-platform  Deployment scripts, charts and configuration files for RIC platform components
52 └── ric-xapps             xApp related scripts, charts and configuration files
53
54 ### Directory Naming Convention
55
56 The root directories are organized according to the deployment plans. Each directory contains subdirectories for
57 different deployable components. The prefixes of these subdirectories represent the deployment order. The smaller the
58 prefix number the eariler the corresponding component will be deployed.  Consider the following example,
59 ├── ric-aux
60 │   ├── 80-Auxiliary-Functions
61 │   ├── 85-Ext-Services
62 │   └── README.md
63 ├── ric-infra
64 │   ├── 00-Kubernetes
65 │   ├── 10-Nexus
66 │   ├── 20-Monitoring
67 │   ├── 30-Kong
68 │   ├── 40-Credential
69 │   ├── 45-Tiller
70 │   └── README.md
71 ├── ric-platform
72 │   ├── 50-RIC-Platform
73 │   ├── 55-Ext-Services
74 │   └── README.md
75 ├── ric-aux
76 │   ├── 80-Auxiliary-Functions
77 │   ├── 85-Ext-Services
78 │   └── README.md
79 └── ric-xapps
80     ├── 90-xApps
81     └── README.md
82
83 when deploying the ric-platform, the credential is deployed before RIC-Platform.
84
85 In each of the component directories, ./bin contains the binary and script files and ./helm contains the helm charts,
86
87 Some components contain an ./etc directory with configuration files and some contain a ./docker directory with docker related files for building the docker images.
88
89 Please refer to the README.md files in individual directory for more details.
90
91 Within ric-infra, ric-platform and ric-aux, each of the components above can be deployed and undeployed separately.
92 There are also scripts for deploying the ric-infra, ric-platform or ric-aux in its entirety.
93
94 The ./bin directory contains these scripts
95
96 The following sections discuss one-script deployment for each
97
98 ### To deploy RIC Infrastructure
99
100 Edit ./RECIPE_EXAMPLE/RIC_INFRA_RECIPE_EXAMPLE
101 You can choose whether to enable Kubernetes deployment, Helm Chart museum and ELFKP stack
102 You can specify the Helm release prefix and namespaces used
103 You must specify username and password for Docker repo
104 Then run the following to deploy:
105 ```sh
106 $ . ./deploy-ric-infra -f ../RECIPE_EXAMPLE/RIC_INFRA_RECIPE_EXAMPLE
107 ```
108 Run the following to undeploy:
109 ```sh
110 $ . ./undeploy-ric-infra 
111 ```
112
113 ### To deploy RIC Platform
114
115 Edit ./RECIPE_EXAMPLE/RIC_PLATFORM_RECIPE_EXAMPLE
116 You can specify the Helm release prefix and namespaces used
117 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.
118 These values should be set in both the override file and the local values.yaml file
119 ```sh
120 $ . ./deploy-ric-platform -f ../RECIPE_EXAMPLE/RIC_PLATFORM_RECIPE_EXAMPLE
121 ```
122 Run the following to undeploy:
123 ```sh
124 $ . ./undeploy-ric-platform 
125 ```
126
127 ### To deploy RIC Auxiliary functions
128
129 Edit ./RECIPE_EXAMPLE/RIC_PLATFORM_RECIPE_EXAMPLE
130 You can specify the Helm release prefix and namespaces used
131 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.
132 These values should be set in both the override file and the local values.yaml file
133 ```sh
134 $ . ./deploy-ric-aux -f ../RECIPE_EXAMPLE/RIC_AUX_RECIPE_EXAMPLE
135 ```
136 Run the following to undeploy:
137 ```sh
138 $ . ./undeploy-ric-aux 
139 ```