mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-30 15:05:27 +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/config:go_default_library",
|
||||
"//pkg/kubelet/container:go_default_library",
|
||||
"//pkg/kubelet/dockershim:go_default_library",
|
||||
"//pkg/kubelet/eviction:go_default_library",
|
||||
"//pkg/kubelet/eviction/api: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/config"
|
||||
kubecontainer "k8s.io/kubernetes/pkg/kubelet/container"
|
||||
"k8s.io/kubernetes/pkg/kubelet/dockershim"
|
||||
"k8s.io/kubernetes/pkg/kubelet/eviction"
|
||||
evictionapi "k8s.io/kubernetes/pkg/kubelet/eviction/api"
|
||||
dynamickubeletconfig "k8s.io/kubernetes/pkg/kubelet/kubeletconfig"
|
||||
@ -364,9 +363,9 @@ func UnsecuredDependencies(s *options.KubeletServer, featureGate featuregate.Fea
|
||||
hu := hostutil.NewHostUtil()
|
||||
var pluginRunner = exec.New()
|
||||
|
||||
var dockerClientConfig *dockershim.ClientConfig
|
||||
var dockerOptions *kubelet.DockerOptions
|
||||
if s.ContainerRuntime == kubetypes.DockerContainerRuntime {
|
||||
dockerClientConfig = &dockershim.ClientConfig{
|
||||
dockerOptions = &kubelet.DockerOptions{
|
||||
DockerEndpoint: s.DockerEndpoint,
|
||||
RuntimeRequestTimeout: s.RuntimeRequestTimeout.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
|
||||
Cloud: nil, // cloud provider might start background processes
|
||||
ContainerManager: nil,
|
||||
DockerClientConfig: dockerClientConfig,
|
||||
DockerOptions: dockerOptions,
|
||||
KubeClient: nil,
|
||||
HeartbeatClient: nil,
|
||||
EventClient: nil,
|
||||
|
@ -212,7 +212,7 @@ type Dependencies struct {
|
||||
CAdvisorInterface cadvisor.Interface
|
||||
Cloud cloudprovider.Interface
|
||||
ContainerManager cm.ContainerManager
|
||||
DockerClientConfig *dockershim.ClientConfig
|
||||
DockerOptions *DockerOptions
|
||||
EventClient v1core.EventsGetter
|
||||
HeartbeatClient clientset.Interface
|
||||
OnHeartbeatFailure func()
|
||||
@ -236,6 +236,12 @@ type Dependencies struct {
|
||||
useLegacyCadvisorStats bool
|
||||
}
|
||||
|
||||
type DockerOptions struct {
|
||||
DockerEndpoint string
|
||||
RuntimeRequestTimeout time.Duration
|
||||
ImagePullProgressDeadline time.Duration
|
||||
}
|
||||
|
||||
// makePodSourceConfig creates a config.PodConfig from the given
|
||||
// KubeletConfiguration or returns an 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.
|
||||
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)
|
||||
if err != nil {
|
||||
return err
|
||||
|
Loading…
Reference in New Issue
Block a user