kubernetes static pods 的日志在哪里?

Where are the logs for kubernetes static pods?

我已经使用 KubeSpray 创建了一个集群。当我通过 SSH 连接到主节点以将 EventRateLimit 添加到 Kubernetes API 服务器的静态 pod 清单 yaml 中的准入控制器列表时,API 服务器 pod 没有正确重启。

我不知道在哪里可以找到静态 pod 的错误日志。我该如何调试问题?

要添加 EventRateLimit 准入控制器,您需要从 /etc/kubernetes/manifests.

修改 api 服务器静态 pod yaml
...
spec:
  containers:
  - command:
    - kube-apiserver
    - --advertise-address=10.0.0.115
    - --allow-privileged=true
    - --authorization-mode=Node,RBAC
    - --client-ca-file=/etc/kubernetes/pki/ca.crt
    - --enable-admission-plugins=NodeRestriction,EventRateLimit
...

找到 Kubernetes API 服务器 pod 名称

kubectl get pods -n kube-system

您可以像通常获取常规 pod 的日志一样获取静态 pod 的日志

kubectl logs apiserverpodname -n kube-system

或者通过 ssh 进入主节点直接检查 kubernetes API 服务器容器的日志。

找到 Kubernetes API 服务器的 docker 容器 ID

docker ps

检查 docker 容器的日志

docker logs container