From e57e958a39df815731c3d2567c6fdf3c133cbb67 Mon Sep 17 00:00:00 2001 From: Jorge Isnardo Altamirano Date: Thu, 2 May 2024 08:15:01 +0200 Subject: [PATCH 1/4] Update kube-vip to v0.8.0 --- README.md | 2 +- roles/kubernetes/node/defaults/main.yml | 2 +- roles/kubespray-defaults/defaults/main/download.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index f67d25ef9ca..ab31a8fb528 100644 --- a/README.md +++ b/README.md @@ -174,7 +174,7 @@ Note: Upstart/SysV init based OS types are not supported. - [kube-router](https://github.com/cloudnativelabs/kube-router) v2.0.0 - [multus](https://github.com/k8snetworkplumbingwg/multus-cni) v3.8 - [weave](https://github.com/weaveworks/weave) v2.8.1 - - [kube-vip](https://github.com/kube-vip/kube-vip) v0.5.12 + - [kube-vip](https://github.com/kube-vip/kube-vip) v0.8.0 - Application - [cert-manager](https://github.com/jetstack/cert-manager) v1.13.2 - [coredns](https://github.com/coredns/coredns) v1.11.1 diff --git a/roles/kubernetes/node/defaults/main.yml b/roles/kubernetes/node/defaults/main.yml index 69cfa4540a9..cc1b2701f4a 100644 --- a/roles/kubernetes/node/defaults/main.yml +++ b/roles/kubernetes/node/defaults/main.yml @@ -67,7 +67,7 @@ eviction_hard_control_plane: {} kubelet_status_update_frequency: 10s # kube-vip -kube_vip_version: v0.5.12 +kube_vip_version: v0.8.0 kube_vip_arp_enabled: false kube_vip_interface: diff --git a/roles/kubespray-defaults/defaults/main/download.yml b/roles/kubespray-defaults/defaults/main/download.yml index 84d4978c2af..f66ebbb382b 100644 --- a/roles/kubespray-defaults/defaults/main/download.yml +++ b/roles/kubespray-defaults/defaults/main/download.yml @@ -283,7 +283,7 @@ multus_image_repo: "{{ github_image_repo }}/k8snetworkplumbingwg/multus-cni" multus_image_tag: "{{ multus_version }}" kube_vip_image_repo: "{{ github_image_repo }}/kube-vip/kube-vip" -kube_vip_image_tag: v0.5.12 +kube_vip_image_tag: v0.8.0 nginx_image_repo: "{{ docker_image_repo }}/library/nginx" nginx_image_tag: 1.25.2-alpine haproxy_image_repo: "{{ docker_image_repo }}/library/haproxy" From 537891a3807f3155ea5424d7cb73e09b6cf99960 Mon Sep 17 00:00:00 2001 From: Jorge Isnardo Altamirano Date: Thu, 2 May 2024 16:37:49 +0200 Subject: [PATCH 2/4] Update kube-vip manifests to v0.8.0 --- .../sample/group_vars/k8s_cluster/addons.yml | 4 ++++ roles/kubernetes/node/defaults/main.yml | 4 ++++ .../templates/manifests/kube-vip.manifest.j2 | 20 ++++++++++++++++++- 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/inventory/sample/group_vars/k8s_cluster/addons.yml b/inventory/sample/group_vars/k8s_cluster/addons.yml index bf0588dda9c..50a5938f371 100644 --- a/inventory/sample/group_vars/k8s_cluster/addons.yml +++ b/inventory/sample/group_vars/k8s_cluster/addons.yml @@ -259,6 +259,10 @@ kube_vip_enabled: false # port: 6443 # kube_vip_interface: eth0 # kube_vip_services_enabled: false +#kube_vip_dns_mode: first +#kube_vip_cp_detect: false +#kube_vip_leasename: plndr-cp-lock +#kube_vip_enable_node_labeling: false # Node Feature Discovery node_feature_discovery_enabled: false diff --git a/roles/kubernetes/node/defaults/main.yml b/roles/kubernetes/node/defaults/main.yml index cc1b2701f4a..02ce4603272 100644 --- a/roles/kubernetes/node/defaults/main.yml +++ b/roles/kubernetes/node/defaults/main.yml @@ -73,8 +73,10 @@ kube_vip_arp_enabled: false kube_vip_interface: kube_vip_services_interface: kube_vip_cidr: 32 +kube_vip_dns_mode: first kube_vip_controlplane_enabled: false kube_vip_ddns_enabled: false +kube_vip_cp_detect: false kube_vip_services_enabled: false kube_vip_leader_election_enabled: "{{ kube_vip_arp_enabled }}" kube_vip_bgp_enabled: false @@ -88,9 +90,11 @@ kube_vip_address: kube_vip_enableServicesElection: false kube_vip_lb_enable: false kube_vip_lb_fwdmethod: local +kube_vip_leasename: plndr-cp-lock kube_vip_leaseduration: 5 kube_vip_renewdeadline: 3 kube_vip_retryperiod: 1 +kube_vip_enable_node_labeling: false # Requests for load balancer app loadbalancer_apiserver_memory_requests: 32M diff --git a/roles/kubernetes/node/templates/manifests/kube-vip.manifest.j2 b/roles/kubernetes/node/templates/manifests/kube-vip.manifest.j2 index ead73495d5c..11a971e9321 100644 --- a/roles/kubernetes/node/templates/manifests/kube-vip.manifest.j2 +++ b/roles/kubernetes/node/templates/manifests/kube-vip.manifest.j2 @@ -1,4 +1,4 @@ -# Inspired by https://github.com/kube-vip/kube-vip/blob/v0.5.11/pkg/kubevip/config_generator.go#L13 +# Inspired by https://github.com/kube-vip/kube-vip/blob/v0.8.0/pkg/kubevip/config_generator.go#L103 apiVersion: v1 kind: Pod metadata: @@ -16,6 +16,8 @@ spec: value: {{ kube_vip_arp_enabled | string | to_json }} - name: port value: {{ kube_apiserver_port | string | to_json }} + - name: vip_nodename + value: {{ inventory_hostname }} {% if kube_vip_interface %} - name: vip_interface value: {{ kube_vip_interface | string | to_json }} @@ -28,6 +30,10 @@ spec: - name: vip_cidr value: {{ kube_vip_cidr | string | to_json }} {% endif %} +{% if kube_vip_dns_mode %} + - name: dns_mode + value: {{ kube_vip_dns_mode | string | to_json }} +{% endif %} {% if kube_vip_controlplane_enabled %} - name: cp_enable value: "true" @@ -35,11 +41,17 @@ spec: value: kube-system - name: vip_ddns value: {{ kube_vip_ddns_enabled | string | to_json }} + - name: cp_detect + value: {{ kube_vip_cp_detect | string | to_json }} {% endif %} {% if kube_vip_services_enabled %} - name: svc_enable value: "true" {% endif %} +{% if kube_vip_svc_leasename %} + - name: svc_leasename + value: {{ kube_vip_svc_leasename | string | to_json }} +{% endif %} {% if kube_vip_enableServicesElection %} - name: svc_election value: "true" @@ -47,6 +59,8 @@ spec: {% if kube_vip_leader_election_enabled %} - name: vip_leaderelection value: "true" + - name: vip_leasename + value: {{ kube_vip_leasename | string | to_json }} - name: vip_leaseduration value: {{ kube_vip_leaseduration | string | to_json }} - name: vip_renewdeadline @@ -54,6 +68,10 @@ spec: - name: vip_retryperiod value: {{ kube_vip_retryperiod | string | to_json }} {% endif %} +{% if kube_vip_enable_node_labeling %} + - name: enable_node_labeling + value: {{ kube_vip_enable_node_labeling | string | to_json }} +{% endif %} {% if kube_vip_bgp_enabled %} - name: bgp_enable value: "true" From def88b26a4630d69fcc5d35a358bf9b398b61af8 Mon Sep 17 00:00:00 2001 From: Jorge Isnardo Altamirano Date: Thu, 2 May 2024 16:46:53 +0200 Subject: [PATCH 3/4] Update kube-vip manifests to v0.8.0 --- inventory/sample/group_vars/k8s_cluster/addons.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/inventory/sample/group_vars/k8s_cluster/addons.yml b/inventory/sample/group_vars/k8s_cluster/addons.yml index 50a5938f371..37afdae943d 100644 --- a/inventory/sample/group_vars/k8s_cluster/addons.yml +++ b/inventory/sample/group_vars/k8s_cluster/addons.yml @@ -259,10 +259,10 @@ kube_vip_enabled: false # port: 6443 # kube_vip_interface: eth0 # kube_vip_services_enabled: false -#kube_vip_dns_mode: first -#kube_vip_cp_detect: false -#kube_vip_leasename: plndr-cp-lock -#kube_vip_enable_node_labeling: false +# kube_vip_dns_mode: first +# kube_vip_cp_detect: false +# kube_vip_leasename: plndr-cp-lock +# kube_vip_enable_node_labeling: false # Node Feature Discovery node_feature_discovery_enabled: false From a09c73a356815935000aa0cbd76391a2f145bc01 Mon Sep 17 00:00:00 2001 From: Jorge Isnardo Altamirano Date: Tue, 7 May 2024 11:38:13 +0200 Subject: [PATCH 4/4] Update kube-vip manifests to v0.8.0 --- roles/kubernetes/node/defaults/main.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/kubernetes/node/defaults/main.yml b/roles/kubernetes/node/defaults/main.yml index 02ce4603272..eaf70ab40e1 100644 --- a/roles/kubernetes/node/defaults/main.yml +++ b/roles/kubernetes/node/defaults/main.yml @@ -91,6 +91,7 @@ kube_vip_enableServicesElection: false kube_vip_lb_enable: false kube_vip_lb_fwdmethod: local kube_vip_leasename: plndr-cp-lock +kube_vip_svc_leasename: plndr-svcs-lock kube_vip_leaseduration: 5 kube_vip_renewdeadline: 3 kube_vip_retryperiod: 1