Details
-
Test
-
Resolution: Unresolved
-
Normal
-
None
-
Odum Release
-
None
Description
This is the integration test for the Ansible deployment scripts for NDS Labs on Kubernetes (on CoreOS on OpenStack Nebula).
Upon running the openstack-provision.yml playbook, Ansible will do the following to set up your environment:
- Authenticate to OpenStack Nebula
- Create or reuse the SSH key with the name provided in the inventory
- Provision the desired number of blank nodes / volumes pre the inventory
- Add the LoadBalancer node to the correct security groups:
- remote HTTP
- HTTPS
- Gather the IPs of the provisioned machines
- Wait for the machines to come up, then SSH in
- Install CoreOS from the CoreOSAlpha image as specified in the inventory
- Fix problems with CoreOS
- Disable update-engine and locksmithd
- Add localhost to /etc/hosts
- Create Gluster bricks within the volume(s) provisioned
- Mount the volume to each glfs node at the directory provided in the inventory
Upon running the k8s-install.yml playbook, Ansible will do the following to set up your environment:
- Install the kubelet and kube-proxy onto each node using Kubernetes' provided ansible scripts
Upon running the ndslabs-k8s-install.yml playbook, Ansible will do the following to set up your environment:
- Assign the LoadBalancer node a public IP
- Start SkyDNS service
- Start the GlusterFS server DaemonSet on glfs nodes
- Start the GlusterFS client DaemonSet on compute nodes
- Start K8 addons and create ingress rules to access the LMA tooling:
- Optional: Kibana
- Optional: Grafana
- Optional: Prometheus
- Optional: KubeUI
- Optional: KubeDash
- Start the NDS Labs ApiServer, WebUI, and create ingress rules to access them
- Start the LoadBalancer and default HTTP backend
Once Ansible has completed its run, you will walk through verifying that the API server and UI are communicating properly without any manual steps (i.e. without changing IPs, restarting pods/rcs, manually changing code, etc).