Skip to content
This repository was archived by the owner on Mar 22, 2018. It is now read-only.

Commit 5d5f5ec

Browse files
author
FengyunPan
committed
[OpenStack]Remove the LbaasV1 of OpenStack cloud provider
The Neutron LbaasV1 has been declared obsolete, LbaasV2 is a better choice. So let's remove the codes of LbaasV1, only support LbaasV2. Talked at: #52609 Related to: #52821 Reference OpenStack doc: https://docs.openstack.org/mitaka/networking-guide/config-lbaas.html
1 parent 4662e09 commit 5d5f5ec

3 files changed

Lines changed: 7 additions & 465 deletions

File tree

pkg/cloudprovider/providers/openstack/BUILD

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,6 @@ go_library(
3939
"//vendor/github.com/gophercloud/gophercloud/openstack/networking/v2/extensions:go_default_library",
4040
"//vendor/github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/layer3/floatingips:go_default_library",
4141
"//vendor/github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/layer3/routers:go_default_library",
42-
"//vendor/github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/lbaas/members:go_default_library",
43-
"//vendor/github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/lbaas/monitors:go_default_library",
44-
"//vendor/github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/lbaas/pools:go_default_library",
45-
"//vendor/github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/lbaas/vips:go_default_library",
4642
"//vendor/github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/lbaas_v2/listeners:go_default_library",
4743
"//vendor/github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/lbaas_v2/loadbalancers:go_default_library",
4844
"//vendor/github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/lbaas_v2/monitors:go_default_library",

pkg/cloudprovider/providers/openstack/openstack.go

Lines changed: 7 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ type LoadBalancer struct {
7878
}
7979

8080
type LoadBalancerOpts struct {
81-
LBVersion string `gcfg:"lb-version"` // overrides autodetection. v1 or v2
81+
LBVersion string `gcfg:"lb-version"` // overrides autodetection. Only support v2.
8282
SubnetId string `gcfg:"subnet-id"` // overrides autodetection.
8383
FloatingNetworkId string `gcfg:"floating-network-id"` // If specified, will create floating ip for loadbalancer, or do not create floating ip.
8484
LBMethod string `gcfg:"lb-method"` // default to ROUND_ROBIN.
@@ -506,39 +506,17 @@ func (os *OpenStack) LoadBalancer() (cloudprovider.LoadBalancer, bool) {
506506
return nil, false
507507
}
508508

509+
// LBaaS v1 is deprecated in the OpenStack Liberty release.
510+
// Currently kubernetes OpenStack cloud provider just support LBaaS v2.
509511
lbVersion := os.lbOpts.LBVersion
510-
if lbVersion == "" {
511-
// No version specified, try newest supported by server
512-
netExts, err := networkExtensions(network)
513-
if err != nil {
514-
glog.Warningf("Failed to list neutron extensions: %v", err)
515-
return nil, false
516-
}
517-
518-
if netExts["lbaasv2"] {
519-
lbVersion = "v2"
520-
} else if netExts["lbaas"] {
521-
lbVersion = "v1"
522-
} else {
523-
glog.Warningf("Failed to find neutron LBaaS extension (v1 or v2)")
524-
return nil, false
525-
}
526-
glog.V(3).Infof("Using LBaaS extension %v", lbVersion)
512+
if lbVersion != "" && lbVersion != "v2" {
513+
glog.Warningf("Config error: currently only support LBaaS v2, unrecognised lb-version \"%v\"", lbVersion)
514+
return nil, false
527515
}
528516

529517
glog.V(1).Info("Claiming to support LoadBalancer")
530518

531-
if lbVersion == "v2" {
532-
return &LbaasV2{LoadBalancer{network, compute, os.lbOpts}}, true
533-
} else if lbVersion == "v1" {
534-
// Since LBaaS v1 is deprecated in the OpenStack Liberty release, so deprecate LBaaSV1 at V1.8, then remove LBaaSV1 after V1.9.
535-
// Reference OpenStack doc: https://docs.openstack.org/mitaka/networking-guide/config-lbaas.html
536-
glog.Warningf("The LBaaS v1 of OpenStack cloud provider has been deprecated, Please use LBaaS v2")
537-
return &LbaasV1{LoadBalancer{network, compute, os.lbOpts}}, true
538-
} else {
539-
glog.Warningf("Config error: unrecognised lb-version \"%v\"", lbVersion)
540-
return nil, false
541-
}
519+
return &LbaasV2{LoadBalancer{network, compute, os.lbOpts}}, true
542520
}
543521

544522
func isNotFound(err error) bool {

0 commit comments

Comments
 (0)