Add lock type flags for controller-manager leadership election

This commit is contained in:
Jamie Hannaford
2017-05-05 14:01:59 +02:00
committed by Timothy St. Clair
parent 5a1ec9bf6f
commit a2248a2bcd
6 changed files with 53 additions and 15 deletions

View File

@@ -32,7 +32,6 @@ import (
"strconv"
"time"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/util/sets"
"k8s.io/apimachinery/pkg/util/wait"
@@ -192,21 +191,17 @@ func Run(s *options.CMServer) error {
return err
}
// TODO: enable other lock types
rl := resourcelock.EndpointsLock{
EndpointsMeta: metav1.ObjectMeta{
Namespace: "kube-system",
Name: "kube-controller-manager",
},
Client: leaderElectionClient,
LockConfig: resourcelock.ResourceLockConfig{
Identity: id,
EventRecorder: recorder,
},
rlc := resourcelock.ResourceLockConfig{
Identity: id,
EventRecorder: recorder,
}
rl, err := leaderelection.GetLock(s.LeaderElection, *leaderElectionClient, rlc)
if err != nil {
return err
}
leaderelection.RunOrDie(leaderelection.LeaderElectionConfig{
Lock: &rl,
Lock: rl,
LeaseDuration: s.LeaderElection.LeaseDuration.Duration,
RenewDeadline: s.LeaderElection.RenewDeadline.Duration,
RetryPeriod: s.LeaderElection.RetryPeriod.Duration,