在CentOS上查看Kubernetes(k8s)安装日志有多种方法,以下是一些常用的工具和命令:
journalctl
命令查看系统日志journalctl
是systemd日志系统的命令行工具,可以用来查看Kubernetes组件的日志。例如:
journalctl -u kubelet
journalctl -u kubelet -f
journalctl --since "2023-10-01"
journalctl -p info
journalctl -u kube-apiserver
kubectl
命令查看Pod日志kubectl
是Kubernetes的命令行工具,可以用来查看Pod的日志。以下是基本步骤:
kubectl config use-context my-k8s-cluster
kubectl get pods
kubectl logs <pod-name>
如果你的服务有多个容器,可以通过 -c
参数指定容器名称:kubectl logs -c <container-name> <pod-name>
实时查看服务日志信息,可以使用 -f
参数:kubectl logs -f <pod-name>
查看最新日志行,可以使用 --tail
参数:kubectl logs --tail 100 <pod-name>
系统日志文件通常位于 /var/log/
目录下,可以查看这些文件以获取更多信息:
cat /var/log/messages
这将显示系统的通用日志信息。
Kubetail:一个简单的Shell脚本,可以将多个Pod中的日志信息聚合到一起进行展示,并支持彩色输出和条件过滤。
brew tap johanhaleby/kubetail && brew install kubetail
kubetail <pod-name>
可以指定命名空间、容器名称、使用正则表达式等。Stern:一个用Go语言开发的多容器实时日志查看工具,功能比Kubetail更强大,也支持彩色输出和条件过滤。
brew install stern
或者使用asdf安装:asdf plugin add stern
stern <pod-name>
可以指定命名空间、容器名称、使用正则表达式等。ELK(Elasticsearch, Fluentd, Kibana)系统:ELK系统是一个流行的日志收集和分析解决方案。