wrider | c1be425 | 2019-11-26 10:13:54 -0500 | [diff] [blame^] | 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 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 |
| 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 | |
| 18 | |
| 19 | |
| 20 | Resource Requirements |
| 21 | --------------------- |
| 22 | |
| 23 | 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. |
| 24 | |
| 25 | |
| 26 | |
| 27 | Script for Setting Up 1-node Kubernetes Cluster |
| 28 | ----------------------------------------------- |
| 29 | |
| 30 | |
| 31 | 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. |
| 32 | |
| 33 | Configurations |
| 34 | -------------- |
| 35 | |
| 36 | The generation of the script reads in the parameters from the following files: |
| 37 | |
| 38 | - 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. |
| 39 | - 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. |
| 40 | - 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. |
| 41 | |
| 42 | |
| 43 | Generating Set-up Script |
| 44 | ------------------------ |
| 45 | |
| 46 | 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. |
| 47 | |
| 48 | :: |
| 49 | |
| 50 | cd bin |
| 51 | ./gen-cloud-init.sh |
| 52 | |
| 53 | A file named **k8s-1node-cloud-init.sh** would now appear under the bin directory. |
| 54 | |
| 55 | |
| 56 | Setting up Kubernetes Cluster |
| 57 | ----------------------------- |
| 58 | |
| 59 | The new **k8s-1node-cloud-init.sh** file is now ready for setting up the Kubernetes cluster. |
| 60 | |
| 61 | 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. |
| 62 | |
| 63 | 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. |
| 64 | |
| 65 | Upon successful execution of the script, when integrated by the kubectl command, the VM should display information similar to below: |
| 66 | |
| 67 | :: |
| 68 | |
| 69 | # kubectl get pods --all-namespaces |
| 70 | NAMESPACE NAME READY STATUS RESTARTS AGE |
| 71 | kube-system coredns-5644d7b6d9-4gjp5 1/1 Running 0 103m |
| 72 | kube-system coredns-5644d7b6d9-pvsj8 1/1 Running 0 103m |
| 73 | kube-system etcd-ljitest 1/1 Running 0 102m |
| 74 | kube-system kube-apiserver-ljitest 1/1 Running 0 103m |
| 75 | kube-system kube-controller-manager-ljitest 1/1 Running 0 102m |
| 76 | kube-system kube-flannel-ds-amd64-nvjmq 1/1 Running 0 103m |
| 77 | kube-system kube-proxy-867v5 1/1 Running 0 103m |
| 78 | kube-system kube-scheduler-ljitest 1/1 Running 0 102m |
| 79 | kube-system tiller-deploy-68bf6dff8f-6pwvc 1/1 Running 0 102m |
| 80 | |