add a value judgement for the cloud

Signed-off-by: PingWang <wang.ping5@zte.com.cn>

update the controllermanager.go

Signed-off-by: PingWang <wang.ping5@zte.com.cn>

update log

Signed-off-by: PingWang <wang.ping5@zte.com.cn>

add time.Sleep

Signed-off-by: PingWang <wang.ping5@zte.com.cn>

update for go vet

Signed-off-by: PingWang <wang.ping5@zte.com.cn>
This commit is contained in:
PingWang 2016-07-20 10:51:55 +08:00
parent 4694a6dd71
commit ef35239137

View File

@ -69,6 +69,11 @@ import (
"github.com/spf13/pflag" "github.com/spf13/pflag"
) )
const (
// Jitter used when starting controller managers
ControllerStartJitter = 1.0
)
// CMServer is the main context object for the controller manager. // CMServer is the main context object for the controller manager.
type CMServer struct { type CMServer struct {
*options.CMServer *options.CMServer
@ -172,12 +177,17 @@ func (s *CMServer) Run(_ []string) error {
} }
if s.AllocateNodeCIDRs && s.ConfigureCloudRoutes { if s.AllocateNodeCIDRs && s.ConfigureCloudRoutes {
routes, ok := cloud.Routes() if cloud == nil {
if !ok { glog.Warning("configure-cloud-routes is set, but no cloud provider specified. Will not configure cloud provider routes.")
glog.Fatal("Cloud provider must support routes if configure-cloud-routes is set") } else if routes, ok := cloud.Routes(); !ok {
glog.Warning("configure-cloud-routes is set, but cloud provider does not support routes. Will not configure cloud provider routes.")
} else {
routeController := routecontroller.New(routes, clientset.NewForConfigOrDie(restclient.AddUserAgent(kubeconfig, "route-controller")), s.ClusterName, clusterCIDR)
routeController.Run(s.NodeSyncPeriod.Duration)
time.Sleep(wait.Jitter(s.ControllerStartInterval.Duration, ControllerStartJitter))
} }
routeController := routecontroller.New(routes, clientset.NewForConfigOrDie(restclient.AddUserAgent(kubeconfig, "route-controller")), s.ClusterName, clusterCIDR) } else {
routeController.Run(s.NodeSyncPeriod.Duration) glog.Infof("Will not configure cloud provider routes for allocate-node-cidrs: %v, configure-cloud-routes: %v.", s.AllocateNodeCIDRs, s.ConfigureCloudRoutes)
} }
resourceQuotaControllerClient := clientset.NewForConfigOrDie(restclient.AddUserAgent(kubeconfig, "resource-quota-controller")) resourceQuotaControllerClient := clientset.NewForConfigOrDie(restclient.AddUserAgent(kubeconfig, "resource-quota-controller"))
@ -275,7 +285,7 @@ func (s *CMServer) Run(_ []string) error {
provisioner, err := kubecontrollermanager.NewVolumeProvisioner(cloud, s.VolumeConfiguration) provisioner, err := kubecontrollermanager.NewVolumeProvisioner(cloud, s.VolumeConfiguration)
if err != nil { if err != nil {
glog.Fatal("A Provisioner could not be created, but one was expected. Provisioning will not work. This functionality is considered an early Alpha version.") glog.Fatalf("A Provisioner could not be created: %v, but one was expected. Provisioning will not work. This functionality is considered an early Alpha version.", err)
} }
volumeController := persistentvolumecontroller.NewPersistentVolumeController( volumeController := persistentvolumecontroller.NewPersistentVolumeController(