Deploying kubernetes using kubespray with HAProxy and Keepalived

Topology: Loadbalancer Haproxy with keepalived as kube api server for the cluster, which provide High availability. The Loadbalancer machine gets virtual IP from keepalived to keep kube api server endpoints always availabilty, then the haproxy allow us to provide loadbalancing for each master node api server. Loadbalancer preparation 1. Setup haproxy on loadbalancer node 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 # do it on LB1 and LB2 # Update package and install haproxy apt update apt install haproxy -y # edit haproxy....

January 9, 2024 · 3 min · 611 words · Luqinthar Sudarsono

Deploying kubernetes with kubespray

Environtment: This environment just for testing and not for HA (High Availability) method Node IP Address Note lq-deployer 10.13.13.13 kubespray deployer lq-master 10.13.13.10 control plane lq-worker 10.13.13.20 worker Preparation 1. Make sure all node has pubkey of deployer 1 2 3 4 5 # On deployer ssh key-gen # and other node input the deployer pubkey into .ssh/authorized_keys nano .ssh/authorized_keys 2. Setting up ansible 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 # Do it on deployer node nano /etc/ansible/ansible....

January 9, 2024 · 2 min · 390 words · Luqinthar Sudarsono

Kubernetes Installation

Do it on all nodes 1. Prepare module and sysconfig 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf overlay br_netfilter EOF sudo modprobe overlay sudo modprobe br_netfilter # sysctl params required by setup, params persist across reboots cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-iptables = 1 net.bridge.bridge-nf-call-ip6tables = 1 net.ipv4.ip_forward = 1 EOF # Apply sysctl params without reboot sudo sysctl --system 2....

January 9, 2024 · 2 min · 370 words · Luqinthar Sudarsono