《OpenShift 4.x HOL教程汇总》
说明:本文已经在OpenShift 4.14环境中验证
在OpenShift的Node上运行了包括kubelet、CRI-O、Chrony等服务,可以用本文的方法查看这些服务的日志,另外还可查看Node上的日志文件。
远程查看Node上的服务日志
查看服务日志
- 查看一个Node上的服务日志。
$ oc adm node-logs <NODE-NAME> -u crio
$ oc adm node-logs <NODE-NAME> -u kubelet
查看日志文件
- 查看一个Node上有哪些日志文件。
$ oc adm node-logs <NODE-NAME> --path=/
audit/
btmp
chrony/
containers/
crio/
glusterfs/
journal/
kube-apiserver/
lastlog
openshift-apiserver/
openvswitch/
pods/
private/
samba/
sssd/
wtmp
- 查看一个Node上的日志文件。
$ oc adm node-logs <NODE-NAME> --path=/audit/audit.log
登录Node查看本地服务日志
在控制台上实现
- 在OpenShift Console中进入“管理员”视图“Compute”的“节点”菜单,然后查看一个节点的“终端”。
- 根据提示,在远程命令窗口中输入。
sh-4.2# chroot /host
3. 然后再通过一下命令查看不同服务的运行日志。
sh-4.4# systemctl status crio
crio.service - Open Container Initiative Daemon
Loaded: loaded (/usr/lib/systemd/system/crio.service; disabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/crio.service.d
└─10-default-env.conf
Active: active (running) since Sat 2020-03-28 10:59:50 UTC; 1h 7min ago
Docs: https://github.com/cri-o/cri-o
Main PID: 2937 (crio)
Tasks: 42
Memory: 322.4M
CPU: 5min 28.410s
CGroup: /system.slice/crio.service
└─2937 /usr/bin/crio --enable-metrics=true --metrics-port=9537
.....
sh-4.4# systemctl status kubelet
● kubelet.service - Kubernetes Kubelet
Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/kubelet.service.d
└─10-default-env.conf
Active: active (running) since Sat 2020-03-28 11:00:11 UTC; 1h 7min ago
Process: 3028 ExecStartPre=/bin/rm -f /var/lib/kubelet/cpu_manager_state (code=exited, status=0/SUCCESS)
Process: 3026 ExecStartPre=/bin/mkdir --parents /etc/kubernetes/manifests (code=exited, status=0/SUCCESS)
Main PID: 3030 (hyperkube)
Tasks: 56 (limit: 26213)
Memory: 241.6M
CPU: 5min 7.547s
CGroup: /system.slice/kubelet.service
└─3030 /usr/bin/hyperkube kubelet --config=/etc/kubernetes/kubelet.conf --bootstrap-kubeconfig=/etc/kubernetes/kubeconfig --kubeconfig=/var/lib/kubelet/kubeco
.....
通过命令实现
除了可以通过OpenShift的Console进入特定Node的内部外,还可用debug命令进入一个节点。
- 执行以下命令,通过debug模式进入一个Node。
$ oc debug node <NODE-NAME>
- 切换上下文后就可像上节一样在Node内部进行查看日志的操作了。
sh-4.2# chroot /host