温馨提示×

debian部署k8s怎么查日志

小樊
49
2026-10-08 05:18:27
栏目: 智能运维

在 Debian 上部署的 Kubernetes 集群中,“查日志”通常分几种场景。下面按最常见用法给你一份实用清单。


一、查看 Pod / 容器日志(最常用)

1. 查看某个 Pod 日志

kubectl logs <pod-name>

指定命名空间:

kubectl logs <pod-name> -n <namespace>

2. 查看具体容器日志(多容器 Pod)

kubectl logs <pod-name> -c <container-name>

3. 实时跟踪日志

kubectl logs -f <pod-name>

4. 查看之前崩溃的容器日志

kubectl logs <pod-name> --previous

5. 查看标签匹配的多个 Pod 日志

kubectl logs -l app=nginx

二、节点级别日志(Debian 系统)

K8s 日志最终落在节点上,取决于你用的运行时。

1. containerd(Debian 常见)

日志目录:

/var/log/pods/
/var/log/containers/

查看示例:

ls /var/log/pods/
tail -f /var/log/containers/*.log

2. kubelet 日志

journalctl -u kubelet -f

3. 容器运行时日志

# containerd
journalctl -u containerd -f

三、控制平面组件日志

1. 静态 Pod 方式(kubeadm 部署)

通常在:

/etc/kubernetes/manifests/

日志查看:

journalctl -u kube-apiserver
journalctl -u kube-controller-manager
journalctl -u kube-scheduler

或:

kubectl logs -n kube-system kube-apiserver-<node>

四、系统级排错日志

1. 系统日志

journalctl -xe

2. 网络 / 防火墙

iptables -L
ip a

五、集中式日志(推荐生产用)

如果是生产环境,建议:

  • EFK(Elasticsearch + Fluentd + Kibana)
  • Loki + Grafana
  • Filebeat

六、快速定位问题流程(实战)

kubectl get pods -A
kubectl describe pod <pod> -n <ns>
kubectl logs <pod> -n <ns>
journalctl -u kubelet -f

如果你愿意,可以告诉我:

  • 你是 kubeadm / 二进制 / 云厂商 部署?
  • 日志是 Pod 起不来 / 节点异常 / 网络问题?

我可以给你更精确的命令。

0 踩