--- apiVersion: apps/v1 kind: DaemonSet metadata: name: kube-vip namespace: kube-system labels: app.kubernetes.io/instance: kube-vip app.kubernetes.io/name: kube-vip spec: selector: matchLabels: app.kubernetes.io/instance: kube-vip app.kubernetes.io/name: kube-vip template: metadata: labels: app.kubernetes.io/instance: kube-vip app.kubernetes.io/name: kube-vip spec: containers: - name: kube-vip image: ghcr.io/kube-vip/kube-vip:v0.4.2 imagePullPolicy: IfNotPresent args: - manager env: - name: vip_arp value: "true" - name: vip_interface value: "${BOOTSTRAP_ANSIBLE_KUBE_VIP_INTERFACE}" - name: port value: "6443" - name: vip_cidr value: "32" - name: cp_enable value: "true" - name: cp_namespace value: kube-system - name: svc_enable value: "false" - name: address value: "${BOOTSTRAP_ANSIBLE_KUBE_VIP_ADDRESS}" securityContext: capabilities: add: - NET_ADMIN - NET_RAW hostAliases: - hostnames: - kubernetes ip: 127.0.0.1 hostNetwork: true serviceAccountName: kube-vip affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: node-role.kubernetes.io/master operator: Exists - matchExpressions: - key: node-role.kubernetes.io/control-plane operator: Exists tolerations: - effect: NoSchedule operator: Exists - effect: NoExecute operator: Exists