说明
EphemeralContainers
:官方说明
kubectl 版本为 v1.18 或者更高 beta 功能 默认不开启,需要手动开启, v1.22 版本开始成为正式功能无需开启.
如果执行kubectl debug xxxx
报以下错误说明需要手动开启临时容器功能:
error: ephemeral containers are disabled for this cluster (error from server: "the server could not find the requested resource").
手动开启操作
master节点
- 修改
apiserver
编辑/etc/kubernetes/manifests/kube-apiserver.yaml
在--feature-gates=xxxxx
后面添加,EphemeralContainers=true
,注意逗号.
- 修改
controller-manager
编辑/etc/kubernetes/manifests/kube-controller-manager.yaml
在--feature-gates=xxxxx
后面添加,EphemeralContainers=true
,注意逗号.
- 修改
kube-scheduler
编辑/etc/kubernetes/manifests/kube-scheduler.yaml
在--feature-gates=xxxxx
后面添加,EphemeralContainers=true
,注意逗号.
所有节点
- 修改
kubelet
编辑/var/lib/kubelet/kubeadm-flags.env
添加--feature-gates=EphemeralContainers=true
修改后如下
KUBELET_KUBEADM_ARGS="--cgroup-driver=systemd --network-plugin=cni --pod-infra-container-image=k8s.gcr.io/pause:3.2 --feature-gates=EphemeralContainers=true"
- 重启kubelet
systemctl daemon-reload
systemctl restart kubelet