mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-07 11:13:48 +00:00
Only register floatingIP for external loadbalancer service
If the user has provided the floating-ip options, then it's safe to assume they want (only) the floating-ip to be the ingress IP; if they have not provided floating-ip options, then the LB IP is the only relevant value. Fix #52566
This commit is contained in:
parent
1a44e26670
commit
70a0f443c8
@ -869,10 +869,6 @@ func (lbaas *LbaasV2) EnsureLoadBalancer(clusterName string, apiService *v1.Serv
|
|||||||
glog.V(2).Infof("Deleted obsolete listener: %s", listener.ID)
|
glog.V(2).Infof("Deleted obsolete listener: %s", listener.ID)
|
||||||
}
|
}
|
||||||
|
|
||||||
status := &v1.LoadBalancerStatus{}
|
|
||||||
|
|
||||||
status.Ingress = []v1.LoadBalancerIngress{{IP: loadbalancer.VipAddress}}
|
|
||||||
|
|
||||||
portID := loadbalancer.VipPortID
|
portID := loadbalancer.VipPortID
|
||||||
floatIP, err := getFloatingIPByPortID(lbaas.network, portID)
|
floatIP, err := getFloatingIPByPortID(lbaas.network, portID)
|
||||||
if err != nil && err != ErrNotFound {
|
if err != nil && err != ErrNotFound {
|
||||||
@ -895,8 +891,13 @@ func (lbaas *LbaasV2) EnsureLoadBalancer(clusterName string, apiService *v1.Serv
|
|||||||
return nil, fmt.Errorf("Error creating LB floatingip %+v: %v", floatIPOpts, err)
|
return nil, fmt.Errorf("Error creating LB floatingip %+v: %v", floatIPOpts, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
status := &v1.LoadBalancerStatus{}
|
||||||
|
|
||||||
if floatIP != nil {
|
if floatIP != nil {
|
||||||
status.Ingress = append(status.Ingress, v1.LoadBalancerIngress{IP: floatIP.FloatingIP})
|
status.Ingress = []v1.LoadBalancerIngress{{IP: floatIP.FloatingIP}}
|
||||||
|
} else {
|
||||||
|
status.Ingress = []v1.LoadBalancerIngress{{IP: loadbalancer.VipAddress}}
|
||||||
}
|
}
|
||||||
|
|
||||||
if lbaas.opts.ManageSecurityGroups {
|
if lbaas.opts.ManageSecurityGroups {
|
||||||
@ -1453,9 +1454,6 @@ func (lb *LbaasV1) EnsureLoadBalancer(clusterName string, apiService *v1.Service
|
|||||||
}
|
}
|
||||||
|
|
||||||
status := &v1.LoadBalancerStatus{}
|
status := &v1.LoadBalancerStatus{}
|
||||||
|
|
||||||
status.Ingress = []v1.LoadBalancerIngress{{IP: vip.Address}}
|
|
||||||
|
|
||||||
if floatingPool != "" && !internalAnnotation {
|
if floatingPool != "" && !internalAnnotation {
|
||||||
floatIPOpts := floatingips.CreateOpts{
|
floatIPOpts := floatingips.CreateOpts{
|
||||||
FloatingNetworkID: floatingPool,
|
FloatingNetworkID: floatingPool,
|
||||||
@ -1472,7 +1470,9 @@ func (lb *LbaasV1) EnsureLoadBalancer(clusterName string, apiService *v1.Service
|
|||||||
return nil, fmt.Errorf("Error creating floatingip for openstack load balancer %s: %v", name, err)
|
return nil, fmt.Errorf("Error creating floatingip for openstack load balancer %s: %v", name, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
status.Ingress = append(status.Ingress, v1.LoadBalancerIngress{IP: floatIP.FloatingIP})
|
status.Ingress = []v1.LoadBalancerIngress{{IP: floatIP.FloatingIP}}
|
||||||
|
} else {
|
||||||
|
status.Ingress = []v1.LoadBalancerIngress{{IP: vip.Address}}
|
||||||
}
|
}
|
||||||
|
|
||||||
return status, nil
|
return status, nil
|
||||||
|
Loading…
Reference in New Issue
Block a user