mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-29 06:27:05 +00:00
refactor cmd/kubelet/app/server.go to simplify the kubeFlags and KubeletConfiguration invokes
This commit is contained in:
parent
4e0a60a44c
commit
57e0f05fad
@ -719,7 +719,7 @@ func run(s *options.KubeletServer, kubeDeps *kubelet.Dependencies, stopCh <-chan
|
|||||||
glog.Warning(err)
|
glog.Warning(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := RunKubelet(&s.KubeletFlags, &s.KubeletConfiguration, kubeDeps, s.RunOnce); err != nil {
|
if err := RunKubelet(s, kubeDeps, s.RunOnce); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -885,8 +885,8 @@ func addChaosToClientConfig(s *options.KubeletServer, config *restclient.Config)
|
|||||||
// 2 Kubelet binary
|
// 2 Kubelet binary
|
||||||
// 3 Standalone 'kubernetes' binary
|
// 3 Standalone 'kubernetes' binary
|
||||||
// Eventually, #2 will be replaced with instances of #3
|
// Eventually, #2 will be replaced with instances of #3
|
||||||
func RunKubelet(kubeFlags *options.KubeletFlags, kubeCfg *kubeletconfiginternal.KubeletConfiguration, kubeDeps *kubelet.Dependencies, runOnce bool) error {
|
func RunKubelet(kubeServer *options.KubeletServer, kubeDeps *kubelet.Dependencies, runOnce bool) error {
|
||||||
hostname := nodeutil.GetHostname(kubeFlags.HostnameOverride)
|
hostname := nodeutil.GetHostname(kubeServer.HostnameOverride)
|
||||||
// Query the cloud provider for our node name, default to hostname if kubeDeps.Cloud == nil
|
// Query the cloud provider for our node name, default to hostname if kubeDeps.Cloud == nil
|
||||||
nodeName, err := getNodeName(kubeDeps.Cloud, hostname)
|
nodeName, err := getNodeName(kubeDeps.Cloud, hostname)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -900,17 +900,17 @@ func RunKubelet(kubeFlags *options.KubeletFlags, kubeCfg *kubeletconfiginternal.
|
|||||||
// prefer this to be done as part of an independent validation step on the
|
// prefer this to be done as part of an independent validation step on the
|
||||||
// KubeletConfiguration. But as far as I can tell, we don't have an explicit
|
// KubeletConfiguration. But as far as I can tell, we don't have an explicit
|
||||||
// place for validation of the KubeletConfiguration yet.
|
// place for validation of the KubeletConfiguration yet.
|
||||||
hostNetworkSources, err := kubetypes.GetValidatedSources(kubeFlags.HostNetworkSources)
|
hostNetworkSources, err := kubetypes.GetValidatedSources(kubeServer.HostNetworkSources)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
hostPIDSources, err := kubetypes.GetValidatedSources(kubeFlags.HostPIDSources)
|
hostPIDSources, err := kubetypes.GetValidatedSources(kubeServer.HostPIDSources)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
hostIPCSources, err := kubetypes.GetValidatedSources(kubeFlags.HostIPCSources)
|
hostIPCSources, err := kubetypes.GetValidatedSources(kubeServer.HostIPCSources)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -920,46 +920,46 @@ func RunKubelet(kubeFlags *options.KubeletFlags, kubeCfg *kubeletconfiginternal.
|
|||||||
HostPIDSources: hostPIDSources,
|
HostPIDSources: hostPIDSources,
|
||||||
HostIPCSources: hostIPCSources,
|
HostIPCSources: hostIPCSources,
|
||||||
}
|
}
|
||||||
capabilities.Setup(kubeFlags.AllowPrivileged, privilegedSources, 0)
|
capabilities.Setup(kubeServer.AllowPrivileged, privilegedSources, 0)
|
||||||
|
|
||||||
credentialprovider.SetPreferredDockercfgPath(kubeFlags.RootDirectory)
|
credentialprovider.SetPreferredDockercfgPath(kubeServer.RootDirectory)
|
||||||
glog.V(2).Infof("Using root directory: %v", kubeFlags.RootDirectory)
|
glog.V(2).Infof("Using root directory: %v", kubeServer.RootDirectory)
|
||||||
|
|
||||||
if kubeDeps.OSInterface == nil {
|
if kubeDeps.OSInterface == nil {
|
||||||
kubeDeps.OSInterface = kubecontainer.RealOS{}
|
kubeDeps.OSInterface = kubecontainer.RealOS{}
|
||||||
}
|
}
|
||||||
|
|
||||||
k, err := CreateAndInitKubelet(kubeCfg,
|
k, err := CreateAndInitKubelet(&kubeServer.KubeletConfiguration,
|
||||||
kubeDeps,
|
kubeDeps,
|
||||||
&kubeFlags.ContainerRuntimeOptions,
|
&kubeServer.ContainerRuntimeOptions,
|
||||||
kubeFlags.ContainerRuntime,
|
kubeServer.ContainerRuntime,
|
||||||
kubeFlags.RuntimeCgroups,
|
kubeServer.RuntimeCgroups,
|
||||||
kubeFlags.HostnameOverride,
|
kubeServer.HostnameOverride,
|
||||||
kubeFlags.NodeIP,
|
kubeServer.NodeIP,
|
||||||
kubeFlags.ProviderID,
|
kubeServer.ProviderID,
|
||||||
kubeFlags.CloudProvider,
|
kubeServer.CloudProvider,
|
||||||
kubeFlags.CertDirectory,
|
kubeServer.CertDirectory,
|
||||||
kubeFlags.RootDirectory,
|
kubeServer.RootDirectory,
|
||||||
kubeFlags.RegisterNode,
|
kubeServer.RegisterNode,
|
||||||
kubeFlags.RegisterWithTaints,
|
kubeServer.RegisterWithTaints,
|
||||||
kubeFlags.AllowedUnsafeSysctls,
|
kubeServer.AllowedUnsafeSysctls,
|
||||||
kubeFlags.RemoteRuntimeEndpoint,
|
kubeServer.RemoteRuntimeEndpoint,
|
||||||
kubeFlags.RemoteImageEndpoint,
|
kubeServer.RemoteImageEndpoint,
|
||||||
kubeFlags.ExperimentalMounterPath,
|
kubeServer.ExperimentalMounterPath,
|
||||||
kubeFlags.ExperimentalKernelMemcgNotification,
|
kubeServer.ExperimentalKernelMemcgNotification,
|
||||||
kubeFlags.ExperimentalCheckNodeCapabilitiesBeforeMount,
|
kubeServer.ExperimentalCheckNodeCapabilitiesBeforeMount,
|
||||||
kubeFlags.ExperimentalNodeAllocatableIgnoreEvictionThreshold,
|
kubeServer.ExperimentalNodeAllocatableIgnoreEvictionThreshold,
|
||||||
kubeFlags.MinimumGCAge,
|
kubeServer.MinimumGCAge,
|
||||||
kubeFlags.MaxPerPodContainerCount,
|
kubeServer.MaxPerPodContainerCount,
|
||||||
kubeFlags.MaxContainerCount,
|
kubeServer.MaxContainerCount,
|
||||||
kubeFlags.MasterServiceNamespace,
|
kubeServer.MasterServiceNamespace,
|
||||||
kubeFlags.RegisterSchedulable,
|
kubeServer.RegisterSchedulable,
|
||||||
kubeFlags.NonMasqueradeCIDR,
|
kubeServer.NonMasqueradeCIDR,
|
||||||
kubeFlags.KeepTerminatedPodVolumes,
|
kubeServer.KeepTerminatedPodVolumes,
|
||||||
kubeFlags.NodeLabels,
|
kubeServer.NodeLabels,
|
||||||
kubeFlags.SeccompProfileRoot,
|
kubeServer.SeccompProfileRoot,
|
||||||
kubeFlags.BootstrapCheckpointPath,
|
kubeServer.BootstrapCheckpointPath,
|
||||||
kubeFlags.NodeStatusMaxImages)
|
kubeServer.NodeStatusMaxImages)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("failed to create kubelet: %v", err)
|
return fmt.Errorf("failed to create kubelet: %v", err)
|
||||||
}
|
}
|
||||||
@ -971,7 +971,7 @@ func RunKubelet(kubeFlags *options.KubeletFlags, kubeCfg *kubeletconfiginternal.
|
|||||||
}
|
}
|
||||||
podCfg := kubeDeps.PodConfig
|
podCfg := kubeDeps.PodConfig
|
||||||
|
|
||||||
rlimit.RlimitNumFiles(uint64(kubeCfg.MaxOpenFiles))
|
rlimit.RlimitNumFiles(uint64(kubeServer.MaxOpenFiles))
|
||||||
|
|
||||||
// process pods and exit.
|
// process pods and exit.
|
||||||
if runOnce {
|
if runOnce {
|
||||||
@ -980,7 +980,7 @@ func RunKubelet(kubeFlags *options.KubeletFlags, kubeCfg *kubeletconfiginternal.
|
|||||||
}
|
}
|
||||||
glog.Infof("Started kubelet as runonce")
|
glog.Infof("Started kubelet as runonce")
|
||||||
} else {
|
} else {
|
||||||
startKubelet(k, podCfg, kubeCfg, kubeDeps, kubeFlags.EnableServer)
|
startKubelet(k, podCfg, &kubeServer.KubeletConfiguration, kubeDeps, kubeServer.EnableServer)
|
||||||
glog.Infof("Started kubelet")
|
glog.Infof("Started kubelet")
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
|
@ -87,7 +87,10 @@ func NewHollowKubelet(
|
|||||||
|
|
||||||
// Starts this HollowKubelet and blocks.
|
// Starts this HollowKubelet and blocks.
|
||||||
func (hk *HollowKubelet) Run() {
|
func (hk *HollowKubelet) Run() {
|
||||||
if err := kubeletapp.RunKubelet(hk.KubeletFlags, hk.KubeletConfiguration, hk.KubeletDeps, false); err != nil {
|
if err := kubeletapp.RunKubelet(&options.KubeletServer{
|
||||||
|
KubeletFlags: *hk.KubeletFlags,
|
||||||
|
KubeletConfiguration: *hk.KubeletConfiguration,
|
||||||
|
}, hk.KubeletDeps, false); err != nil {
|
||||||
glog.Fatalf("Failed to run HollowKubelet: %v. Exiting.", err)
|
glog.Fatalf("Failed to run HollowKubelet: %v. Exiting.", err)
|
||||||
}
|
}
|
||||||
select {}
|
select {}
|
||||||
|
Loading…
Reference in New Issue
Block a user