kubernetes: k8s.io/kubernetes/cmd/kubelet/app Index | Files | Directories

package app

import "k8s.io/kubernetes/cmd/kubelet/app"

Package app makes it easy to create a kubelet server for various contexts.


Package Files

auth.go init_others.go plugins.go plugins_providers.go server.go server_linux.go

func BootstrapKubeletConfigController Uses

func BootstrapKubeletConfigController(dynamicConfigDir string, transform dynamickubeletconfig.TransformFunc) (*kubeletconfiginternal.KubeletConfiguration, *dynamickubeletconfig.Controller, error)

BootstrapKubeletConfigController constructs and bootstrap a configuration controller

func BuildAuth Uses

func BuildAuth(nodeName types.NodeName, client clientset.Interface, config kubeletconfig.KubeletConfiguration) (server.AuthInterface, func(<-chan struct{}), error)

BuildAuth creates an authenticator, an authorizer, and a matching authorizer attributes getter compatible with the kubelet's needs It returns AuthInterface, a run method to start internal controllers (like cert reloading) and error.

func BuildAuthn Uses

func BuildAuthn(client authenticationclient.TokenReviewInterface, authn kubeletconfig.KubeletAuthentication) (authenticator.Request, func(<-chan struct{}), error)

BuildAuthn creates an authenticator compatible with the kubelet's needs

func BuildAuthz Uses

func BuildAuthz(client authorizationclient.SubjectAccessReviewInterface, authz kubeletconfig.KubeletAuthorization) (authorizer.Authorizer, error)

BuildAuthz creates an authorizer compatible with the kubelet's needs

func GetDynamicPluginProber Uses

func GetDynamicPluginProber(pluginDir string, runner exec.Interface) volume.DynamicPluginProber

GetDynamicPluginProber gets the probers of dynamically discoverable plugins for kubelet. Currently only Flexvolume plugins are dynamically discoverable.

func InitializeTLS Uses

func InitializeTLS(kf *options.KubeletFlags, kc *kubeletconfiginternal.KubeletConfiguration) (*server.TLSOptions, error)

InitializeTLS checks for a configured TLSCertFile and TLSPrivateKeyFile: if unspecified a new self-signed certificate and key file are generated. Returns a configured server.TLSOptions object.

func NewKubeletCommand Uses

func NewKubeletCommand() *cobra.Command

NewKubeletCommand creates a *cobra.Command object with default parameters

func ProbeVolumePlugins Uses

func ProbeVolumePlugins(featureGate featuregate.FeatureGate) ([]volume.VolumePlugin, error)

ProbeVolumePlugins collects all volume plugins into an easy to use list.

func Run Uses

func Run(ctx context.Context, s *options.KubeletServer, kubeDeps *kubelet.Dependencies, featureGate featuregate.FeatureGate) error

Run runs the specified KubeletServer with the given Dependencies. This should never exit. The kubeDeps argument may be nil - if so, it is initialized from the settings on KubeletServer. Otherwise, the caller is assumed to have set up the Dependencies object and a default one will not be generated.

func RunKubelet Uses

func RunKubelet(kubeServer *options.KubeletServer, kubeDeps *kubelet.Dependencies, runOnce bool) error

RunKubelet is responsible for setting up and running a kubelet. It is used in three different applications:

1 Integration tests
2 Kubelet binary
3 Standalone 'kubernetes' binary

Eventually, #2 will be replaced with instances of #3

func UnsecuredDependencies Uses

func UnsecuredDependencies(s *options.KubeletServer, featureGate featuregate.FeatureGate) (*kubelet.Dependencies, error)

UnsecuredDependencies returns a Dependencies suitable for being run, or an error if the server setup is not valid. It will not start any background processes, and does not include authentication/authorization


optionsPackage options contains all of the primary arguments for a kubelet.

Package app imports 126 packages (graph) and is imported by 535 packages. Updated 2021-01-16. Refresh now. Tools for package owners.