blob: f8717548607dc4f89d7ad2d4b08691e2cc0de814 [file] [log] [blame]
wriderbf0073e2019-11-03 14:35:07 -05001.. This work is licensed under a Creative Commons Attribution 4.0 International License.
2.. SPDX-License-Identifier: CC-BY-4.0
3.. ===============LICENSE_START=======================================================
Lott, Christopher (cl778h)c22d1ce2020-01-20 13:53:43 -05004.. Copyright (C) 2019-2020 AT&T Intellectual Property
wriderbf0073e2019-11-03 14:35:07 -05005.. ===================================================================================
Lott, Christopher (cl778h)c22d1ce2020-01-20 13:53:43 -05006.. 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
wriderbf0073e2019-11-03 14:35:07 -05008.. compliance with the License. You may obtain a copy of the License at
9..
10.. http://creativecommons.org/licenses/by/4.0
11..
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=========================================================
17
wriderc1be4252019-11-26 10:13:54 -050018===================
19Installation Guides
20===================
wriderbf0073e2019-11-03 14:35:07 -050021
Lott, Christopher (cl778h)c22d1ce2020-01-20 13:53:43 -050022This document describes how to install the RIC components deployed by scripts and Helm charts
23under the it/dep repository, including the dependencies and required system resources.
wriderbf0073e2019-11-03 14:35:07 -050024
25.. contents::
26 :depth: 3
27 :local:
28
29Version history
wriderc1be4252019-11-26 10:13:54 -050030===============
wriderbf0073e2019-11-03 14:35:07 -050031
32+--------------------+--------------------+--------------------+--------------------+
33| **Date** | **Ver.** | **Author** | **Comment** |
34| | | | |
35+--------------------+--------------------+--------------------+--------------------+
Zhe Huangdc00cdf2020-02-10 13:45:15 -050036| 2019-11-25 | 0.1.0 |Lusheng Ji | Amber |
wriderbf0073e2019-11-03 14:35:07 -050037| | | | |
38+--------------------+--------------------+--------------------+--------------------+
Zhe Huangdc00cdf2020-02-10 13:45:15 -050039| 2020-01-23 | 0.2.0 |Zhe Huang | Bronze RC |
40| | | | |
41+--------------------+--------------------+--------------------+--------------------+
42
wriderbf0073e2019-11-03 14:35:07 -050043
44
wriderc1be4252019-11-26 10:13:54 -050045Overview
46========
wriderbf0073e2019-11-03 14:35:07 -050047
Zhe Huangdc00cdf2020-02-10 13:45:15 -050048The installation of Near Realtime RAN Intelligent Controller is spread onto two separate
wriderc1be4252019-11-26 10:13:54 -050049Kubernetes clusters. The first cluster is used for deploying the Near Realtime RIC (platform and
50applications), and the other is for deploying other auxiliary functions. They are referred to as
51RIC cluster and AUX cluster respectively.
wriderbf0073e2019-11-03 14:35:07 -050052
wriderc1be4252019-11-26 10:13:54 -050053The following diagram depicts the installation architecture.
wriderbf0073e2019-11-03 14:35:07 -050054
wriderc1be4252019-11-26 10:13:54 -050055.. image:: images/nrtric-amber.png
56 :width: 600
57
Lott, Christopher (cl778h)cb200332020-01-20 15:56:57 -050058Within the RIC cluster, Kubernetes resources are deployed using three name spaces: ricinfra, ricplt,
Zhe Huangdc00cdf2020-02-10 13:45:15 -050059and ricxapp by default. Similarly, within the AUX cluster, Kubernetes resources are deployed using two name spaces:
Lott, Christopher (cl778h)cb200332020-01-20 15:56:57 -050060ricinfra, and ricaux.
wriderc1be4252019-11-26 10:13:54 -050061
62For each cluster, there is a Kong ingress controller that proxies incoming API calls into the cluster.
Lott, Christopher (cl778h)c22d1ce2020-01-20 13:53:43 -050063With Kong, service APIs provided by Kubernetes resources can be accessed at the cluster node IP and
64port via a URL path. For cross-cluster communication, in addition to Kong, each Kubernetes namespace
65has a special Kubernetes service defined with an endpoint pointing to the other cluster's Kong. This
wriderc1be4252019-11-26 10:13:54 -050066way any pod can access services exposed at the other cluster via the internal service hostname and port of
67this special service. The figure below illustrates the details of how Kong and external services work
68together to realize cross-cluster communication.
69
70.. image:: images/kong-extservice.png
71 :width: 600
wriderbf0073e2019-11-03 14:35:07 -050072
73
wriderbf0073e2019-11-03 14:35:07 -050074
Zhe Huangdc00cdf2020-02-10 13:45:15 -050075Prerequisites
76=============
77
78Both RIC and AUX clusters need to fulfill the following prerequisites.
79
80- Kubernetes v.1.16.0 or above
81- helm v2.12.3 or above
82- Read-write access to directory /mnt
83
84The following two sections show two example methods to create an environment for installing RIC.
85
86VirtualBox VMs as Installation Hosts
87------------------------------------
88
89The deployment of Near Realtime RIC can be done on a wide range of hosts, including
wriderc1be4252019-11-26 10:13:54 -050090bare metal servers, OpenStack VMs, and VirtualBox VMs. This section provides detailed instructions
91for setting up Oracle VirtualBox VMs to be used as installation hosts.
wriderbf0073e2019-11-03 14:35:07 -050092
wriderc1be4252019-11-26 10:13:54 -050093.. include:: ./installation-virtualbox.rst
wriderbf0073e2019-11-03 14:35:07 -050094
95
wriderc1be4252019-11-26 10:13:54 -050096One-Node Kubernetes Cluster
Zhe Huangdc00cdf2020-02-10 13:45:15 -050097---------------------------
wriderc1be4252019-11-26 10:13:54 -050098
Lott, Christopher (cl778h)c22d1ce2020-01-20 13:53:43 -050099This section describes how to set up a one-node Kubernetes cluster onto a VM installation host.
wriderc1be4252019-11-26 10:13:54 -0500100
101.. include:: ./installation-k8s1node.rst
wriderbf0073e2019-11-03 14:35:07 -0500102
103
wriderc1be4252019-11-26 10:13:54 -0500104Installing Near Realtime RIC in RIC Cluster
105===========================================
wriderbf0073e2019-11-03 14:35:07 -0500106
Lott, Christopher (cl778h)c22d1ce2020-01-20 13:53:43 -0500107After the Kubernetes cluster is installed, the next step is to install the (Near Realtime) RIC Platform.
wriderbf0073e2019-11-03 14:35:07 -0500108
Lott, Christopher (cl778h)c22d1ce2020-01-20 13:53:43 -0500109.. include:: ./installation-ric.rst
wriderbf0073e2019-11-03 14:35:07 -0500110
111
wriderc1be4252019-11-26 10:13:54 -0500112Installing Auxiliary Functions in AUX Cluster
113=============================================
wriderbf0073e2019-11-03 14:35:07 -0500114
wriderc1be4252019-11-26 10:13:54 -0500115.. include:: ./installation-aux.rst
wriderbf0073e2019-11-03 14:35:07 -0500116
wriderbf0073e2019-11-03 14:35:07 -0500117
wriderc1be4252019-11-26 10:13:54 -0500118Installing RIC Applications
Lott, Christopher (cl778h)c22d1ce2020-01-20 13:53:43 -0500119===========================
wriderc1be4252019-11-26 10:13:54 -0500120
121.. include:: ./installation-xapps.rst
122