mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-01 07:47:56 +00:00
Remove all uses of dockershim
from cmd/kubelet
We can remove all uses of `dockershim` from `cmd/kubelet`, by just passing the docker options to the kubelet in their pure form, instead of using them to create a `dockerClientConfig` (which is defined in dockershim). We can then construct the `dockerClientConfig` only when we actually need it.
This commit is contained in:
parent
e0e6d54cdf
commit
34c8f51dcb
@ -60,7 +60,6 @@ go_library(
|
|||||||
"//pkg/kubelet/cm/cpuset:go_default_library",
|
"//pkg/kubelet/cm/cpuset:go_default_library",
|
||||||
"//pkg/kubelet/config:go_default_library",
|
"//pkg/kubelet/config:go_default_library",
|
||||||
"//pkg/kubelet/container:go_default_library",
|
"//pkg/kubelet/container:go_default_library",
|
||||||
"//pkg/kubelet/dockershim:go_default_library",
|
|
||||||
"//pkg/kubelet/eviction:go_default_library",
|
"//pkg/kubelet/eviction:go_default_library",
|
||||||
"//pkg/kubelet/eviction/api:go_default_library",
|
"//pkg/kubelet/eviction/api:go_default_library",
|
||||||
"//pkg/kubelet/kubeletconfig:go_default_library",
|
"//pkg/kubelet/kubeletconfig:go_default_library",
|
||||||
|
@ -83,7 +83,6 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/kubelet/cm/cpuset"
|
"k8s.io/kubernetes/pkg/kubelet/cm/cpuset"
|
||||||
"k8s.io/kubernetes/pkg/kubelet/config"
|
"k8s.io/kubernetes/pkg/kubelet/config"
|
||||||
kubecontainer "k8s.io/kubernetes/pkg/kubelet/container"
|
kubecontainer "k8s.io/kubernetes/pkg/kubelet/container"
|
||||||
"k8s.io/kubernetes/pkg/kubelet/dockershim"
|
|
||||||
"k8s.io/kubernetes/pkg/kubelet/eviction"
|
"k8s.io/kubernetes/pkg/kubelet/eviction"
|
||||||
evictionapi "k8s.io/kubernetes/pkg/kubelet/eviction/api"
|
evictionapi "k8s.io/kubernetes/pkg/kubelet/eviction/api"
|
||||||
dynamickubeletconfig "k8s.io/kubernetes/pkg/kubelet/kubeletconfig"
|
dynamickubeletconfig "k8s.io/kubernetes/pkg/kubelet/kubeletconfig"
|
||||||
@ -364,9 +363,9 @@ func UnsecuredDependencies(s *options.KubeletServer, featureGate featuregate.Fea
|
|||||||
hu := hostutil.NewHostUtil()
|
hu := hostutil.NewHostUtil()
|
||||||
var pluginRunner = exec.New()
|
var pluginRunner = exec.New()
|
||||||
|
|
||||||
var dockerClientConfig *dockershim.ClientConfig
|
var dockerOptions *kubelet.DockerOptions
|
||||||
if s.ContainerRuntime == kubetypes.DockerContainerRuntime {
|
if s.ContainerRuntime == kubetypes.DockerContainerRuntime {
|
||||||
dockerClientConfig = &dockershim.ClientConfig{
|
dockerOptions = &kubelet.DockerOptions{
|
||||||
DockerEndpoint: s.DockerEndpoint,
|
DockerEndpoint: s.DockerEndpoint,
|
||||||
RuntimeRequestTimeout: s.RuntimeRequestTimeout.Duration,
|
RuntimeRequestTimeout: s.RuntimeRequestTimeout.Duration,
|
||||||
ImagePullProgressDeadline: s.ImagePullProgressDeadline.Duration,
|
ImagePullProgressDeadline: s.ImagePullProgressDeadline.Duration,
|
||||||
@ -382,7 +381,7 @@ func UnsecuredDependencies(s *options.KubeletServer, featureGate featuregate.Fea
|
|||||||
CAdvisorInterface: nil, // cadvisor.New launches background processes (bg http.ListenAndServe, and some bg cleaners), not set here
|
CAdvisorInterface: nil, // cadvisor.New launches background processes (bg http.ListenAndServe, and some bg cleaners), not set here
|
||||||
Cloud: nil, // cloud provider might start background processes
|
Cloud: nil, // cloud provider might start background processes
|
||||||
ContainerManager: nil,
|
ContainerManager: nil,
|
||||||
DockerClientConfig: dockerClientConfig,
|
DockerOptions: dockerOptions,
|
||||||
KubeClient: nil,
|
KubeClient: nil,
|
||||||
HeartbeatClient: nil,
|
HeartbeatClient: nil,
|
||||||
EventClient: nil,
|
EventClient: nil,
|
||||||
|
@ -212,7 +212,7 @@ type Dependencies struct {
|
|||||||
CAdvisorInterface cadvisor.Interface
|
CAdvisorInterface cadvisor.Interface
|
||||||
Cloud cloudprovider.Interface
|
Cloud cloudprovider.Interface
|
||||||
ContainerManager cm.ContainerManager
|
ContainerManager cm.ContainerManager
|
||||||
DockerClientConfig *dockershim.ClientConfig
|
DockerOptions *DockerOptions
|
||||||
EventClient v1core.EventsGetter
|
EventClient v1core.EventsGetter
|
||||||
HeartbeatClient clientset.Interface
|
HeartbeatClient clientset.Interface
|
||||||
OnHeartbeatFailure func()
|
OnHeartbeatFailure func()
|
||||||
@ -236,6 +236,12 @@ type Dependencies struct {
|
|||||||
useLegacyCadvisorStats bool
|
useLegacyCadvisorStats bool
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type DockerOptions struct {
|
||||||
|
DockerEndpoint string
|
||||||
|
RuntimeRequestTimeout time.Duration
|
||||||
|
ImagePullProgressDeadline time.Duration
|
||||||
|
}
|
||||||
|
|
||||||
// makePodSourceConfig creates a config.PodConfig from the given
|
// makePodSourceConfig creates a config.PodConfig from the given
|
||||||
// KubeletConfiguration or returns an error.
|
// KubeletConfiguration or returns an error.
|
||||||
func makePodSourceConfig(kubeCfg *kubeletconfiginternal.KubeletConfiguration, kubeDeps *Dependencies, nodeName types.NodeName, bootstrapCheckpointPath string) (*config.PodConfig, error) {
|
func makePodSourceConfig(kubeCfg *kubeletconfiginternal.KubeletConfiguration, kubeDeps *Dependencies, nodeName types.NodeName, bootstrapCheckpointPath string) (*config.PodConfig, error) {
|
||||||
|
@ -46,7 +46,12 @@ func runDockershim(kubeCfg *kubeletconfiginternal.KubeletConfiguration,
|
|||||||
|
|
||||||
// Create and start the CRI shim running as a grpc server.
|
// Create and start the CRI shim running as a grpc server.
|
||||||
streamingConfig := getStreamingConfig(kubeCfg, kubeDeps, crOptions)
|
streamingConfig := getStreamingConfig(kubeCfg, kubeDeps, crOptions)
|
||||||
ds, err := dockershim.NewDockerService(kubeDeps.DockerClientConfig, crOptions.PodSandboxImage, streamingConfig,
|
dockerClientConfig := &dockershim.ClientConfig{
|
||||||
|
DockerEndpoint: kubeDeps.DockerOptions.DockerEndpoint,
|
||||||
|
RuntimeRequestTimeout: kubeDeps.DockerOptions.RuntimeRequestTimeout,
|
||||||
|
ImagePullProgressDeadline: kubeDeps.DockerOptions.ImagePullProgressDeadline,
|
||||||
|
}
|
||||||
|
ds, err := dockershim.NewDockerService(dockerClientConfig, crOptions.PodSandboxImage, streamingConfig,
|
||||||
&pluginSettings, runtimeCgroups, kubeCfg.CgroupDriver, crOptions.DockershimRootDirectory, !crOptions.RedirectContainerStreaming)
|
&pluginSettings, runtimeCgroups, kubeCfg.CgroupDriver, crOptions.DockershimRootDirectory, !crOptions.RedirectContainerStreaming)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
Loading…
Reference in New Issue
Block a user