salt/states/kubernetes/control_plane.sls
Pratyush Desai 54a55f01ce
Add consistency, split up the giant , add nftables
Split up common/init.sls into kubernetes common/util.sls type of file
- Switch out containerd for cri-o
- add nftables
- make the blocks consistent by using `-require:` appropriately

Signed-off-by: Pratyush Desai <pratyush.desai@liberta.casa>
2025-07-18 01:02:37 +05:30

35 lines
952 B
Plaintext

# This state file contains configurations specific to a Kubernetes control plane node.
include:
- common.init
# Initialize the Kubernetes control plane using kubeadm.
# --pod-network-cidr is required for CNI, but we stop before installing CNI.
# --ignore-preflight-errors=NumCPU is added as per original request.
kubeadm_init:
cmd.run:
- name: 'kubeadm init --pod-network-cidr={{ pillar["pod_cidr"] }} --ignore-preflight-errors=NumCPU'
- unless: 'test -f /etc/kubernetes/admin.conf'
- require:
- service: kubelet_service
- service: crio_service
kubeconfig_dir:
file.directory:
- name: /root/.kube
- mode: "0755"
- makedirs: True
- require:
- cmd: kubeadm_init
kubeconfig_file:
file.managed:
- name: /root/.kube/config
- source: file:///etc/kubernetes/admin.conf
- user: root
- group: root
- mode: "0600"
- require:
- cmd: kubeadm_init
- file: kubeconfig_dir