You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fixes (part of) aws-controllers-k8s/community#1753
This patch introduces a new `--leader-election-namespace` flag used to
configure controller-runtime leaderElection componenet. This namespace
is utilized by the controller to manage the `coordination.k8s.io/lease`
obejct for leader election.
In the context of the controller-runtime library, if the
LeaderElectionNamespace parametere is not explicitly set, the library
will automatically default its value to the content of the file
mounted at /var/run/secrets/kubernetes.io/serviceaccount/namespace.
> https://github.com/kubernetes-sigs/controller-runtime/blob/main/pkg/leaderelection/leader_election.go#L112-L127
In Kubernetes, when a pod is created, a service account is
automatically associated with it, unless explicitly specified
otherwise. This service account contains relevant information, such
as the namespace in which the pod is deployed. The Kubernetes API
server mounts a two files for the service account in the pod's
filesystem at /var/run/secrets/kubernetes.io/serviceaccount/token
and /var/run/secrets/kubernetes.io/serviceaccount/namespace,
respectively.
> https://github.com/kubernetes/kubernetes/blob/master/pkg/controller/serviceaccount/tokens_controller.go#L399-L402
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
0 commit comments