在 TKE容器服务 的集群中,该插件实现了下发 debugger pod
的能力,用于以下场景:
1、登录节点排查问题,比如网络抓包
2、登录节点查看其他非容器化进程的日志,比如日志组件
3、登录节点排查网络问题,进行抓包等
补充:插件使用参考 用插件扩展kubectl
- 普通节点
- 原生节点
- 超级节点
# 适用超级节点
$ kubectl debugger pod <pod-name> -n <namespace> -i <image> --rm -- COMMAND
# 适用普通节点和原生节点
$ kubectl debugger node <node-name> -i <image> --rm -- COMMAND
超级节点上 debugger pod
并不是下发到了超级节点上,而是下发到了具体的pod上。
超级节点支持注解 eks.tke.cloud.tencent.com/debug-pod: <pod-yaml>
, 用于下发其他 pod
到指定的 pod
上。
比如需要查看 containerd
系统组件的日志,参考如下操作:
$ kubectl debugger pod <pod-name> -n <namespace>
$ chroot /host
$ journalctl -u containerd
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "exec", "create", "delete"]
- apiGroups: [""]
resources: ["nodes"]
verbs: ["get"]