Kubernetes with Kubespray
Requirements Ansible node: a Linux machine to run ansible (able to run in WSL or Docker but it’s not recommended) K8s nodes: Master nodes: 4GB RAM is recommended (2GB RAM will cause very low performance) Worker nodes: can start with 1CPU and 2GB RAM You can setup a K8S cluster with only 1 node: master + worker (+ ansible)
Installation steps Setup environments SSH connection: Ansible connects nodes over SSH, so the easy way is create the same user with public ssh key on all K8s nodes. You should use a golden image or template to create K8s nodes: Launch template or ARM template if you use cloud provider such as AWS, Azure VM template with on-premise hypervisor (Vshpere, Hyper-V, Citrix, ..) Cloud-init 🠈 I used this option, check this post Create Proxmox VM with Terraform (Cooming soon) Setup Kubespray: Install ansible and clone Kubespray repo Prepare inventory Static inventory You can use existing inventory file /inventory/local/hosts.ini to setup a “Single node cluster” Make a copy of sample inventory folder To get much information, visit these links: Kubespray inventory and Configurable Parameters in Kubespray