On-prem k8s | Part 1
Planning the Installation
Machines
This tutorial assumes you already have the basic infrastructure blocks like DHCP or DNS up and running.
We will setup a HA Kubernetes cluster, with 3 control plane nodes and 3 worker nodes.
We will also need a load balancer in front of the Kubernetes API server. We will use HAProxy.
The OS will be Ubuntu 16.04 for all the hosts.
The following table contains the list of hosts to be provisioned.
Name | IP address | Role |
---|---|---|
k8sctl1 | 10.32.2.91 | control plane |
k8sctl2 | 10.32.2.92 | control plane |
k8sctl3 | 10.32.2.93 | control plane |
k8swrk1 | 10.32.2.94 | worker |
k8swrk2 | 10.32.2.95 | worker |
k8swrk3 | 10.32.2.96 | worker |
haprx1 | 10.32.2.97 | load balancer |
The details of provisionning the VMs is out of scope as they depend on the infrastructure. In my case, I am using Vmware ESX and will manually provison the hosts from a template.
Components and Versions
We will be using the following versions:
- Kubernetes v1.10.1
- etcd v3.2.18
- CNI network plugins v0.7.1
- containerd v1.1.0
- CoreDNS v1.1.1
- Weave Net v2.3.0
Network information
This section contain additional network information to be clear on LAN, k8s networks and other important IPs
Network / IP | Description |
---|---|
10.32.2.0/24 | LAN (csnet.me) |
10.16.0.0/16 | k8s Pod network |
10.10.0.0/22 | k8s Service network |
10.10.0.1 | k8s API server |
10.10.0.10 | k8s dns |
Once the machines are ready, we can head to next part
Share this post
Twitter
Facebook
Reddit
LinkedIn
Email