首页 文章

无法在10-kubeadm.conf文件中找到CGroups详细信息

提问于
浏览
0

我试图根据文档设置Kubernetes集群 . https://kubernetes.io/docs/tasks/tools/install-kubeadm/

通过运行安装kubeadm后

yum install -y kubeadm

我正要更新文档中提到的10-kubeadm.conf文件 . 但是文件看起来完全不同,就像这个https://github.com/kubernetes/kubernetes/blob/master/build/rpms/10-kubeadm.conf .

注意:此dropin仅适用于kubeadm和kubelet v1.11 [服务]环境=“KUBELET_KUBECONFIG_ARGS = - bootstrap-kubeconfig = / etc / kubernetes / bootstrap-kubelet.conf --kubeconfig = / etc / kubernetes / kubelet.conf “Environment =”KUBELET_CONFIG_ARGS = - config = / var / lib / kubelet / config.yaml“这是一个”kubeadm init“和”kubeadm join“在运行时生成的文件,动态填充KUBELET_KUBEADM_ARGS变量EnvironmentFile = - / var / lib / kubelet / kubeadm-flags.env这是一个文件,用户可以使用它来覆盖kubelet args作为最后的手段 . 优选地,用户应该在配置文件中使用.NodeRegistration.KubeletExtraArgs对象 . KUBELET_EXTRA_ARGS应来自此文件 . EnvironmentFile = - / etc / sysconfig / kubelet ExecStart = ExecStart = / usr / bin / kubelet $ KUBELET_KUBECONFIG_ARGS $ KUBELET_CONFIG_ARGS $ KUBELET_KUBEADM_ARGS $ KUBELET_EXTRA_ARGS

它没有Cgroup驱动程序变量 . 那么在这种情况下我们应该如何进行安装 .

1 回答

  • -1

    首先确保除了 kubeadm 之外还安装了 kubeletkubectl . 如果没有,请安装它们 .

    yum install -y kubelet kubectl
    

    检查Docker是否已使用cgroup driver systemd 启动 .

    docker info | grep -i cgroup
    

    修改 10-kubeadm.conf 文件并添加新字符串 .

    Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=systemd"
    

    此外,您必须将 $KUBELET_CGROUP_ARGS 变量添加到 ExecStart 部分 .

    最后一步,重新加载 systemd 管理器配置并重启 kubelet 服务,如here所述 .

    systemctl daemon-reload && service kubelet restart
    

    UPDATE

    自版本 1.11 Kubernetes自动检测到正确的 cgroup 驱动程序,您可以跳过有关 cgroup 驱动程序设置的步骤 . 那是从changelog

    kubeadm现在检测到Docker cgroup驱动程序并使用匹配的驱动程序启动kubelet . 这消除了新用户在Docker cgroup驱动程序与为kubelet设置的驱动程序不同时遇到的常见错误,因为不同的Linux发行版为Docker设置了不同的cgroup驱动程序,使得很难正确启动kubelet . (#64347,@ neolit123)

相关问题