In this post, I will share my experience in setting up an HA Kubernetes cluster. The cluster consists of 3 external etcd nodes, 3 master nodes and 3 worker nodes. The nodes are VMs hosted inside VMWare ESXi (integrated with ACI using VMM domain) on a HyperFlex cluster. However, you can perform the same steps on any standard ESXi deployment with VMM domain integration. In my setup I also use Cisco ACI CNI plugin to provide network connectivities among pods within the Kubernetes cluster. Ansible is used to provide automation to the installation:
- spinning up the VMs on ESXi
- installing HA etcd cluster
- creating an active/standby haproxy as LB for multiple master nodes
- configuring a Kubernetes cluster using kubeadm
- applying ACI CNI plugin to have a fully working K8S cluster.
[Edit] I put the Ansible playbook code and the Jinja2 template files on my Github repo.
Continue reading “Using Ansible to automate the deployment of an on-prem HA Kubernetes cluster with Cisco ACI CNI plugin”
One of the main features that I’ve always been impressed with ACI is its capabilities to integrate with popular virtualization domains- VMWare, OpenStack, Microsoft SCVMM, Kubernetes, etc. There have been quite a lot of resources covering ACI integration with VMWare in great details. You can find the lab guide in any Cisco DC specialization courses such as DCVAI / DCAC9K, and many other sources you can google for yourself. However, there are not as many for OpenStack. This tutorial is based on Cisco’s official installation guide, adapted to a newer OpenStack release (Queens) on Ubuntu 18.04 Bionic. I hope it will be helpful for those who are seeking a quick and easy way to setup an OpenStack environment with ACI integration. In the future posts, I may write about some key benefits, features, and mechanisms of this ACI-OpenStack integration.
Continue reading “Tutorial: How to install ACI integration with OpenStack”
In this multi-part tutorial series, I will demonstrate how MAAS and Juju have helped me quickly setup and consume both bare metal servers and virtual machines in our lab in an automated, cloud-like fashion.
The first part will cover the high level introduction to MAAS and Juju, my MAAS installation, and MAAS network service configuration.
Part 2 is here.
Continue reading “Tutorial: Provision and consume bare metals with MAAS and Juju – Part 1”
New year marks a fresh start. At the start of the year, we often take time to reflect on the previous year and plan the goal for the coming months. In this blog post, I would do the same by having a quick look back at 2019 and sketch a plan of my technical skills developement for the rest of 2020.
Continue reading “Plan for 2020: NextGen network engineer skills”