...
- Deploy a kubernetes cluster via a customized Kubespray kubeadm container, that takes all necessary configuration parameters (such as IP, username/password, etc.):
- git clone clone https://github.com/pekwatch746/kubespraykubeadm.git
- Update the sample_env file to point to the IP address of the SUT node and other user/password settings etc. (ANSIBLE_HOST_IP= SUT's IP). With an instance created on the POWDER testbed, it may look like:
ANSIBLE_HOST_IP=155.98.36.1409
ANSIBLE_USERNAME=osc_int
ANSIBLE_PASSWORD=osc_int
PROJECT_ROOT=/kubespraykubeadm/config
- Add a private key to the inventory/sample folder if a private key is used for ssh access.
- Build docker image: sudo docker build -t kubespray kubeadm .
- Run once it’s built successfully: sudo docker run -v ~/.kube:/kubespraykubeadm/config kubespray kubeadm // this will copy over the Kubernetes config file to the home directory
- Build a 2nd alpine/k8s container to complete the remaining steps for RIC platform deployment:
- git clone https://github.com/pekwatch746/richelm.git
- Build the container: export REBUILD=true && sudo ./build.sh static
- Run with the Kubernetes configuration: sudo sudo docker run -ti --rm -w /apps -v ~/.kube:/root/.kube -t alpine/k8srichelmlegacy:1.2319.7 16
- Run a health check test case against the SUT that's supposed to have the RIC platform successfully deployed. Below a simple robot script for health check:
---
- name: Shell module example
hosts: 127.0.0.1
tasks:
- name: Check system information
shell:
"curl -v http://155.98.36.989:32080/appmgr/ric/v1/health/ready 2>&1"
register: curl_info
- debug:
msg: "{{curl_info.stdout_lines}}”
...