Extend network and K8S installation instructions 79/2279/6
authorLott, Christopher (cl778h) <cl778h@att.com>
Mon, 20 Jan 2020 20:56:57 +0000 (15:56 -0500)
committerLott, Christopher (cl778h) <cl778h@att.com>
Tue, 21 Jan 2020 15:27:23 +0000 (10:27 -0500)
Add minor details to K8s installation steps
Drop repeat of ric-infra and ric-plt from ric-aux,
add large resource requirements

Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Ib787fb678a4e114a23c0a7ef144524b23ab3d1d5

docs/installation-aux.rst
docs/installation-guides.rst
docs/installation-k8s1node.rst
docs/installation-virtualbox.rst

index 124f728..f3befca 100644 (file)
 .. limitations under the License.
 .. ===============LICENSE_END=========================================================
 
+Resource Requirements
+---------------------
+
+To run the RIC-AUX cluster in a dev testing setting, the minimum requirement
+for resources is a VM with 4 vCPUs, 16G RAM and at least 40G of disk space.
+
+
 Getting and Preparing Deployment Scripts
 ----------------------------------------
 
@@ -25,24 +32,25 @@ Run the following commands in a root shell:
   git clone http://gerrit.o-ran-sc.org/r/it/dep
   cd RECIPE_EXAMPLE
 
-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 RIC_INFRA_RECIPE_EXAMPLE and RIC_PLATFORM_RECIPE_EXAMPLE.
+In particular the following values often need adaptation to local deployments:
 
-#. Docker registry URL;
-#. Docker registry credential;
-#. Helm repo credential;
+#. Docker registry URL
+#. Docker registry credential
+#. Helm repo credential
 #. Component docker container image tags.
 
 
-Deploying the Infrastructure and Platform Groups
-------------------------------------------------
+Deploying the Aux Group
+-----------------------
 
-After the recipes are edited, the Near Realtime RIC is ready to be deployed.
+After the recipes are edited, the AUX group 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-infra ../RECIPE_EXAMPLE/RIC_INFRA_AUX_RECIPE_EXAMPLE
+  ./deploy-ric-aux ../RECIPE_EXAMPLE/RIC_INFRA_RECIPE_EXAMPLE
 
 
 Checking the Deployment Status
@@ -52,42 +60,4 @@ Now check the deployment status and results similar to the below indicate a comp
 
 .. 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 
-  # 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
-  # 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
-
+  TBD
index f451c81..6f734a0 100644 (file)
@@ -51,7 +51,9 @@ The following diagram depicts the installation architecture.
 .. image:: images/nrtric-amber.png
    :width: 600
 
-Within the RIC cluster, Kubernetes resources are deployed using three name spaces: ricinfra, ricplt, and ricxapp.  Similarly, within the AUX cluster, Kubernetes resources are deployed using two name spaces: ricinfra, and ricaux.
+Within the RIC cluster, Kubernetes resources are deployed using three name spaces: ricinfra, ricplt,
+and ricxapp.  Similarly, within the AUX cluster, Kubernetes resources are deployed using two name spaces:
+ricinfra, and ricaux.
 
 For each cluster, there is a Kong ingress controller that proxies incoming API calls into the cluster.
 With Kong, service APIs provided by Kubernetes resources can be accessed at the cluster node IP and
index 8936be8..1270337 100644 (file)
 .. ===============LICENSE_END=========================================================
 
 
-
-Resource Requirements
----------------------
-
-To run Near Realtime RAN Controller in a dev testing setting , the minimum requirement for resources is a VM with 4 vCPUs, 16G RAM, and at least 40G of vDisk space.
-
-
-
 Script for Setting Up 1-node Kubernetes Cluster
 -----------------------------------------------
 
+The it/dep repo can be used for generating a simple script that can help setting up a
+one-node Kubernetes cluster for dev and testing purposes.  Related files are under the
+**ric-infra/00-Kubernetes** directory.  To get started, clone the repository on the
+target VM:
+
+::
+
+    git clone https://gerrit.o-ran-sc.org/r/it/dep
 
-The it/dep repo can be used for generating a simple script that can help setting up a one-node Kubernetes cluster for dev and testing purposes.  Related files are under the **ric-infra/00-Kubernetes** directory.
 
 Configurations
 --------------
 
 The generation of the script reads in the parameters from the following files:
 
-- etc/env.rc: Normally no change needed for this file.  If where the Kubernetes cluster runs has special requirements, such as running private Docker registry with self-signed certificates, or hostnames that can be only resolved  via private /etc/hosts entries, such parameters are entered into this file.
-- etc/infra.rc: This file specifies the versions docker host, Kubernetes, and Kubernetes CNI versions.  If a version is left empty, the installation will use the default version that the OS package management software would install.
-- etc/openstack.rc: If the Kubernetes cluster is deployed on Open Stack VMs, this file specifies parameters for accessing the APIs of the Open Stack installation.  This is not supported in Amber release yet.
+- etc/env.rc: Normally no change needed for this file.  If where the Kubernetes cluster runs
+  has special requirements, such as running private Docker registry with self-signed certificates,
+  or hostnames that can be only resolved via private /etc/hosts entries, such parameters are
+  entered into this file.
+- etc/infra.rc: This file specifies the docker host, Kubernetes, and Kubernetes CNI versions.
+  If a version is left empty, the installation will use the default version that the OS package
+  management software would install.
+- etc/openstack.rc: If the Kubernetes cluster is deployed on Open Stack VMs, this file specifies
+  parameters for accessing the APIs of the Open Stack installation.  This is not supported in Amber
+  release yet.
 
 
 Generating Set-up Script
 ------------------------
 
-After the configurations are updated, the following steps will create a script file that can be used for setting up a one-node Kubernetes cluster.
+After the configurations are updated, the following steps will create a script file that can be
+used for setting up a one-node Kubernetes cluster.  You must run this command on a Linux machine
+with the 'envsubst' command installed.
 
 ::
 
-  cd bin
-  ./gen-cloud-init.sh
+  cd bin
+  ./gen-cloud-init.sh
 
 A file named **k8s-1node-cloud-init.sh** would now appear under the bin directory.
 
@@ -58,11 +66,20 @@ Setting up Kubernetes Cluster
 
 The new **k8s-1node-cloud-init.sh** file is now ready for setting up the Kubernetes cluster.
 
-It can be run from a root shell of an existing Ubuntu 16.04 or 18.04 VM.  Running this script will replace any existing installation of Docker host, Kubernetes, and Helm on the VM.
+It can be run from a root shell of an existing Ubuntu 16.04 or 18.04 VM.  Running this script
+will replace any existing installation of Docker host, Kubernetes, and Helm on the VM.  The
+script will reboot the machine upon successful completion.  Run the script like this:
+
+::
+
+  % sudo -i
+  # ./k8s-1node-cloud-init.sh
 
-It can also be used as the user-data (a.k.a. cloud-init script) supplicated to Open Stack when launching a new Ubuntu 16.04 or 18.04 VM.
+This script can also be used as the user-data (a.k.a. cloud-init script) supplied to Open Stack
+when launching a new Ubuntu 16.04 or 18.04 VM.
 
-Upon successful execution of the script, when integrated by the kubectl command, the VM should display information similar to below:
+Upon successful execution of the script and reboot of the machine, when queried in a root shell
+with the kubectl command the VM should display information similar to below:
 
 ::
 
@@ -77,4 +94,3 @@ Upon successful execution of the script, when integrated by the kubectl command,
   kube-system   kube-proxy-867v5                       1/1     Running      0         103m
   kube-system   kube-scheduler-ljitest                 1/1     Running      0         102m
   kube-system   tiller-deploy-68bf6dff8f-6pwvc         1/1     Running      0         102m
-
index 9a6fe88..1ff9a3c 100644 (file)
@@ -22,18 +22,18 @@ Networking
 The set up requires two VMs connected by a private network.  With VirtualBox, this can be
 done by going under its "Preferences" menu and setting up a private NAT network.
 
-#. "Preference", then select the "Network" tab;
+#. Pick "Preferences", then select the "Network" tab;
 #. Click on the "+" icon to create a new NAT network.  A new entry will appear in the NAT networks list
 #. Double click on the new network to edit its details; give it a name such as "RICNetwork"
-#. On the next page, make sure to check: "Enable Network", uncheck the "Supports DHCP" box, and make a note of the "Network CIDR" (for this example, it is 10.0.2.0/24);
-#. Click on the "Port Forwarding" button to create the following rules:
+#. In the dialog, make sure to check the "Enable Network" box, uncheck the "Supports DHCP" box, and make a note of the "Network CIDR" (for this example, it is 10.0.2.0/24);
+#. Click on the "Port Forwarding" button then in the table create the following rules:
 
    #. "ssh to ric", TCP, 127.0.0.1, 22222, 10.0.2.100, 22;
    #. "ssh to aux", TCP, 127.0.0.1, 22223, 10.0.2.101, 22;
    #. "entry to ric", TCP, 127.0.0.1, 22224, 10.0.2.100, 32080;
    #. "entry to aux", TCP, 127.0.0.1, 22225, 10.0.2.101, 32080.
 
-#. "Ok" all the way back to create the network.
+#. Click "Ok" all the way back to create the network.
 
 
 Creating VMs
@@ -51,7 +51,7 @@ Create a VirtualBox VM:
 
       #. Check "Enable Network Adapter";
       #. Attached to "NAT Network";
-      #. Network name for what was created in the previous section: "RICNetwork".
+      #. Select the Network that was created in the previous section: "RICNetwork".
 
 Repeat the process and create the second VM named **myaux**.
 
@@ -59,7 +59,8 @@ Repeat the process and create the second VM named **myaux**.
 Booting VM and OS Installation
 ------------------------------
 
-Follow the OS installation steps to install OS to the VM virtual disk media.  Make sure to install openssh server.
+Follow the OS installation steps to install OS to the VM virtual disk media.  During the setup you must
+configure static IP addresses as discussed next.  And make sure to install openssh server.
 
 
 VM Network Configuration
@@ -69,9 +70,9 @@ Depending on the version of the OS, the networking may be configured during the
 The network interface is configured with a static IP address:
 
 - IP Address:  10.0.2.100 for myric or 10.0.2.101 for myaux;
-- Network: 10.0.2.10/24, or network mask 255.255.255.0
+- Subnet 10.0.2.0/24, or network mask 255.255.255.0
 - Default gateway: 10.0.2.1
-- Name server: 8.8.8.8
+- Name server: 8.8.8.8; if access to that is is blocked, configure a local DNS server
 
 
 Accessing the VMs