kubekey icon indicating copy to clipboard operation
kubekey copied to clipboard

kk suport kube-vip args config

Open lifehacking opened this issue 6 months ago • 2 comments

Your current KubeKey version

3.1.9

Describe this feature

kube-vip in kk config,default is arp mode,will support bgp config?

Describe the solution you'd like

kube-vip in kk config,default is arp mode,will support bgp config?

Additional information

No response

lifehacking avatar Jun 18 '25 04:06 lifehacking

refer: https://github.com/kubesphere/kubekey/blob/9cf08b6aef1cc5490a85b996558491940a27b6f3/cmd/kk/apis/kubekey/v1alpha2/cluster_types.go#L75-L86 https://github.com/kubesphere/kubekey/blob/9cf08b6aef1cc5490a85b996558491940a27b6f3/cmd/kk/pkg/loadbalancer/tasks.go#L193 should set BGP in config like:

apiVersion: kubekey.kubesphere.io/v1alpha2
kind: Cluster
metadata:
  name: sample
spec:
  ...
  controlPlaneEndpoint:
    # Internal loadbalancer for apiservers. Support: haproxy, kube-vip [Default: ""]
    internalLoadbalancer: haproxy
    # Determines whether to use external dns to resolve the control-plane domain. 
    # If 'externalDNS' is set to 'true', the 'address' needs to be set to "".
    externalDNS: false  
    domain: lb.kubesphere.local
    # The IP address of your load balancer. If you use internalLoadblancer in "kube-vip" mode, a VIP is required here.
    address: "xxx"      
    port: 6443
    kubevip:
      mode: BGP

redscholar avatar Jun 23 '25 08:06 redscholar

In your example kubevip isn't going to be used. Haproxy will be used. The internal loadbalancer option needs to be set to kube-vip to activate using the VIP.

Then the domain should be set to the name of the VIP address and adding the IP address of the VIP.

lbrigman124 avatar Aug 20 '25 23:08 lbrigman124