Documentation ¶
Overview ¶
Package app makes it easy to create a kubelet server for various contexts.
Index ¶
- func BootstrapKubeletConfigController(dynamicConfigDir string, transform dynamickubeletconfig.TransformFunc) (*kubeletconfiginternal.KubeletConfiguration, *dynamickubeletconfig.Controller, ...)
- func BuildAuth(nodeName types.NodeName, client clientset.Interface, ...) (server.AuthInterface, error)
- func BuildAuthn(client authenticationclient.TokenReviewInterface, ...) (authenticator.Request, error)
- func BuildAuthz(client authorizationclient.SubjectAccessReviewInterface, ...) (authorizer.Authorizer, error)
- func CreateAndInitKubelet(kubeCfg *kubeletconfiginternal.KubeletConfiguration, ...) (k kubelet.Bootstrap, err error)
- func GetDynamicPluginProber(pluginDir string, runner exec.Interface) volume.DynamicPluginProber
- func InitializeTLS(kf *options.KubeletFlags, kc *kubeletconfiginternal.KubeletConfiguration) (*server.TLSOptions, error)
- func NewKubeletCommand(stopCh <-chan struct{}) *cobra.Command
- func ProbeVolumePlugins() []volume.VolumePlugin
- func Run(s *options.KubeletServer, kubeDeps *kubelet.Dependencies, ...) error
- func RunDockershim(f *options.KubeletFlags, c *kubeletconfiginternal.KubeletConfiguration, ...) error
- func RunKubelet(kubeServer *options.KubeletServer, kubeDeps *kubelet.Dependencies, ...) error
- func UnsecuredDependencies(s *options.KubeletServer) (*kubelet.Dependencies, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BootstrapKubeletConfigController ¶
func BootstrapKubeletConfigController(dynamicConfigDir string, transform dynamickubeletconfig.TransformFunc) (*kubeletconfiginternal.KubeletConfiguration, *dynamickubeletconfig.Controller, error)
BootstrapKubeletConfigController constructs and bootstrap a configuration controller
func BuildAuth ¶
func BuildAuth(nodeName types.NodeName, client clientset.Interface, config kubeletconfig.KubeletConfiguration) (server.AuthInterface, error)
BuildAuth creates an authenticator, an authorizer, and a matching authorizer attributes getter compatible with the kubelet's needs
func BuildAuthn ¶
func BuildAuthn(client authenticationclient.TokenReviewInterface, authn kubeletconfig.KubeletAuthentication) (authenticator.Request, error)
BuildAuthn creates an authenticator compatible with the kubelet's needs
func BuildAuthz ¶
func BuildAuthz(client authorizationclient.SubjectAccessReviewInterface, authz kubeletconfig.KubeletAuthorization) (authorizer.Authorizer, error)
BuildAuthz creates an authorizer compatible with the kubelet's needs
func CreateAndInitKubelet ¶
func CreateAndInitKubelet(kubeCfg *kubeletconfiginternal.KubeletConfiguration, kubeDeps *kubelet.Dependencies, crOptions *config.ContainerRuntimeOptions, containerRuntime string, runtimeCgroups string, hostnameOverride string, nodeIP string, providerID string, cloudProvider string, certDirectory string, rootDirectory string, registerNode bool, registerWithTaints []api.Taint, allowedUnsafeSysctls []string, remoteRuntimeEndpoint string, remoteImageEndpoint string, experimentalMounterPath string, experimentalKernelMemcgNotification bool, experimentalCheckNodeCapabilitiesBeforeMount bool, experimentalNodeAllocatableIgnoreEvictionThreshold bool, minimumGCAge metav1.Duration, maxPerPodContainerCount int32, maxContainerCount int32, masterServiceNamespace string, registerSchedulable bool, nonMasqueradeCIDR string, keepTerminatedPodVolumes bool, nodeLabels map[string]string, seccompProfileRoot string, bootstrapCheckpointPath string, nodeStatusMaxImages int32) (k kubelet.Bootstrap, err error)
func GetDynamicPluginProber ¶
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 ¶
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 ¶
NewKubeletCommand creates a *cobra.Command object with default parameters
func ProbeVolumePlugins ¶
func ProbeVolumePlugins() []volume.VolumePlugin
ProbeVolumePlugins collects all volume plugins into an easy to use list.
func Run ¶
func Run(s *options.KubeletServer, kubeDeps *kubelet.Dependencies, stopCh <-chan struct{}) 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 RunDockershim ¶
func RunDockershim(f *options.KubeletFlags, c *kubeletconfiginternal.KubeletConfiguration, stopCh <-chan struct{}) error
RunDockershim only starts the dockershim in current process. This is only used for cri validate testing purpose TODO(random-liu): Move this to a separate binary.
func RunKubelet ¶
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 ¶
func UnsecuredDependencies(s *options.KubeletServer) (*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
Types ¶
This section is empty.