--- # https://rancher.com/docs/k3s/latest/en/installation/install-options/server-config/ # https://github.com/PyratLabs/ansible-role-k3s # (bool) Specify if a host (or host group) are part of the control plane k3s_control_node: true # (dict) k3s settings for all control-plane nodes k3s_server: node-ip: "{{ ansible_host }}" tls-san: # kube-vip - "{{ kubevip_address }}" # Disable Docker - this will use the default containerd CRI docker: false flannel-backend: "none" # This needs to be in quotes disable: # Disable flannel - replaced with Calico - flannel # Disable traefik - installed with Flux - traefik # Disable servicelb - replaced with metallb and install with Flux - servicelb # Disable metrics-server - installed with Flux - metrics-server disable-network-policy: true disable-cloud-controller: true write-kubeconfig-mode: "644" # Network CIDR to use for pod IPs cluster-cidr: "10.42.0.0/16" # Network CIDR to use for service IPs service-cidr: "10.43.0.0/16" kubelet-arg: # Enables the kubelet to gracefully evict pods during a node shutdown - "feature-gates=GracefulNodeShutdown=true" # Allow k8s services to contain TCP and UDP on the same port - "feature-gates=MixedProtocolLBService=true" # Required to monitor kube-controller-manager with kube-prometheus-stack kube-controller-manager-arg: - "bind-address=0.0.0.0" # Required to monitor kube-proxy with kube-prometheus-stack kube-proxy-arg: - "metrics-bind-address=0.0.0.0" # Required to monitor kube-scheduler with kube-prometheus-stack kube-scheduler-arg: - "bind-address=0.0.0.0" # Required to monitor etcd with kube-prometheus-stack etcd-expose-metrics: true # Required for HAProxy health-checks kube-apiserver-arg: - "anonymous-auth=true"