Skip to content

Commit

Permalink
Merge pull request kubernetes#52609 from FengyunPan/register-internal-ip
Browse files Browse the repository at this point in the history
Automatic merge from submit-queue (batch tested with PRs 52751, 52898, 52633, 52611, 52609). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>..

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.


**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
Fix kubernetes#52566

**Release note**:
```release-note
Only register floatingIP into Loadbalancer ingress field for external loadbalancer service
```
  • Loading branch information
Kubernetes Submit Queue authored Sep 24, 2017
2 parents 1e36480 + 70a0f44 commit 0ce1cc9
Showing 1 changed file with 9 additions and 9 deletions.
18 changes: 9 additions & 9 deletions pkg/cloudprovider/providers/openstack/openstack_loadbalancer.go
Original file line number Diff line number Diff line change
Expand Up @@ -881,10 +881,6 @@ func (lbaas *LbaasV2) EnsureLoadBalancer(clusterName string, apiService *v1.Serv
glog.V(2).Infof("Deleted obsolete listener: %s", listener.ID)
}

status := &v1.LoadBalancerStatus{}

status.Ingress = []v1.LoadBalancerIngress{{IP: loadbalancer.VipAddress}}

portID := loadbalancer.VipPortID
floatIP, err := getFloatingIPByPortID(lbaas.network, portID)
if err != nil && err != ErrNotFound {
Expand All @@ -907,8 +903,13 @@ func (lbaas *LbaasV2) EnsureLoadBalancer(clusterName string, apiService *v1.Serv
return nil, fmt.Errorf("Error creating LB floatingip %+v: %v", floatIPOpts, err)
}
}

status := &v1.LoadBalancerStatus{}

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 {
Expand Down Expand Up @@ -1474,9 +1475,6 @@ func (lb *LbaasV1) EnsureLoadBalancer(clusterName string, apiService *v1.Service
}

status := &v1.LoadBalancerStatus{}

status.Ingress = []v1.LoadBalancerIngress{{IP: vip.Address}}

if floatingPool != "" && !internalAnnotation {
floatIPOpts := floatingips.CreateOpts{
FloatingNetworkID: floatingPool,
Expand All @@ -1493,7 +1491,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)
}

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
Expand Down

0 comments on commit 0ce1cc9

Please sign in to comment.