@@ -78,7 +78,7 @@ type LoadBalancer struct {
7878}
7979
8080type 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
544522func isNotFound (err error ) bool {
0 commit comments