Bootstrap FreeKB - OpenShift - View node logs using the oc adm node-logs command
OpenShift - View node logs using the oc adm node-logs command

Updated:   |  OpenShift articles

If you are not familiar with the oc command, refer to OpenShift - Getting Started with the oc command.

The oc get nodes command will return the list of nodes.

~]$ oc get nodes
NAME                  STATUS   ROLES            AGE    VERSION
my-node-edge-lm6wz     Ready    infra,worker     519d   v1.23.5+012e945
my-node-edge-pmlls     Ready    infra,worker     519d   v1.23.5+012e945
my-node-infra-c4v5h    Ready    infra,worker     519d   v1.23.5+012e945
my-node-infra-mc8rc    Ready    infra,worker     519d   v1.23.5+012e945
my-node-infra-p9cjv    Ready    infra,worker     519d   v1.23.5+012e945
my-node-master-0       Ready    master           522d   v1.23.5+012e945
my-node-master-1       Ready    master           522d   v1.23.5+012e945
my-node-master-2       Ready    master           522d   v1.23.5+012e945
my-node-worker-lk5vm   Ready    compute,worker   61d    v1.23.5+012e945
my-node-worker-pj4r4   Ready    compute,worker   61d    v1.23.5+012e945

 

The oc adm node-logs command can then be used to display the node logs. I would first go with this command to get the list of available logs in the master nodes.

~]$ oc adm node-logs --role master --path=/
ip-10-29-146-118.us-east-2.compute.internal README
ip-10-29-146-118.us-east-2.compute.internal audit/
ip-10-29-146-118.us-east-2.compute.internal btmp
ip-10-29-146-118.us-east-2.compute.internal btmp-20240401
ip-10-29-146-118.us-east-2.compute.internal chrony/
ip-10-29-146-118.us-east-2.compute.internal containers/
ip-10-29-146-118.us-east-2.compute.internal crio/
ip-10-29-146-118.us-east-2.compute.internal etcd/
ip-10-29-146-118.us-east-2.compute.internal glusterfs/
ip-10-29-146-118.us-east-2.compute.internal journal/
ip-10-29-146-118.us-east-2.compute.internal kube-apiserver/
ip-10-29-146-118.us-east-2.compute.internal lastlog
ip-10-29-146-118.us-east-2.compute.internal oauth-apiserver/
ip-10-29-146-118.us-east-2.compute.internal oauth-server/
ip-10-29-146-118.us-east-2.compute.internal openshift-apiserver/
ip-10-29-146-118.us-east-2.compute.internal openvswitch/
ip-10-29-146-118.us-east-2.compute.internal osd-audit/
ip-10-29-146-118.us-east-2.compute.internal ovn/
ip-10-29-146-118.us-east-2.compute.internal pods/
ip-10-29-146-118.us-east-2.compute.internal private/
ip-10-29-146-118.us-east-2.compute.internal qemu-ga/
ip-10-29-146-118.us-east-2.compute.internal samba/
ip-10-29-146-118.us-east-2.compute.internal sssd/
ip-10-29-146-118.us-east-2.compute.internal tallylog
ip-10-29-146-118.us-east-2.compute.internal wtmp
ip-10-29-20-28.us-east-2.compute.internal README
ip-10-29-20-28.us-east-2.compute.internal audit/
ip-10-29-20-28.us-east-2.compute.internal btmp
ip-10-29-20-28.us-east-2.compute.internal btmp-20240401
ip-10-29-20-28.us-east-2.compute.internal chrony/
ip-10-29-20-28.us-east-2.compute.internal containers/
ip-10-29-20-28.us-east-2.compute.internal crio/
ip-10-29-20-28.us-east-2.compute.internal etcd/
ip-10-29-20-28.us-east-2.compute.internal glusterfs/
ip-10-29-20-28.us-east-2.compute.internal journal/
ip-10-29-20-28.us-east-2.compute.internal kube-apiserver/
ip-10-29-20-28.us-east-2.compute.internal lastlog
ip-10-29-20-28.us-east-2.compute.internal oauth-apiserver/
ip-10-29-20-28.us-east-2.compute.internal oauth-server/
ip-10-29-20-28.us-east-2.compute.internal openshift-apiserver/
ip-10-29-20-28.us-east-2.compute.internal openvswitch/
ip-10-29-20-28.us-east-2.compute.internal osd-audit/
ip-10-29-20-28.us-east-2.compute.internal ovn/
ip-10-29-20-28.us-east-2.compute.internal pods/
ip-10-29-20-28.us-east-2.compute.internal private/
ip-10-29-20-28.us-east-2.compute.internal qemu-ga/
ip-10-29-20-28.us-east-2.compute.internal samba/
ip-10-29-20-28.us-east-2.compute.internal sssd/
ip-10-29-20-28.us-east-2.compute.internal tallylog
ip-10-29-20-28.us-east-2.compute.internal wtmp
ip-10-29-86-25.us-east-2.compute.internal README
ip-10-29-86-25.us-east-2.compute.internal audit/
ip-10-29-86-25.us-east-2.compute.internal btmp
ip-10-29-86-25.us-east-2.compute.internal btmp-20240401
ip-10-29-86-25.us-east-2.compute.internal chrony/
ip-10-29-86-25.us-east-2.compute.internal containers/
ip-10-29-86-25.us-east-2.compute.internal crio/
ip-10-29-86-25.us-east-2.compute.internal etcd/
ip-10-29-86-25.us-east-2.compute.internal glusterfs/
ip-10-29-86-25.us-east-2.compute.internal journal/
ip-10-29-86-25.us-east-2.compute.internal kube-apiserver/
ip-10-29-86-25.us-east-2.compute.internal lastlog
ip-10-29-86-25.us-east-2.compute.internal oauth-apiserver/
ip-10-29-86-25.us-east-2.compute.internal oauth-server/
ip-10-29-86-25.us-east-2.compute.internal openshift-apiserver/
ip-10-29-86-25.us-east-2.compute.internal openvswitch/
ip-10-29-86-25.us-east-2.compute.internal osd-audit/
ip-10-29-86-25.us-east-2.compute.internal ovn/
ip-10-29-86-25.us-east-2.compute.internal pods/
ip-10-29-86-25.us-east-2.compute.internal private/
ip-10-29-86-25.us-east-2.compute.internal qemu-ga/
ip-10-29-86-25.us-east-2.compute.internal samba/
ip-10-29-86-25.us-east-2.compute.internal sssd/
ip-10-29-86-25.us-east-2.compute.internal tallylog
ip-10-29-86-25.us-east-2.compute.internal wtmp

 

For example, to display all kubelet logs from all of the master nodes.

oc adm node-logs --role master --unit kubelet

 

This will typically return a log of stdout, so almost always you are going to want to include --tail to limit the output.

oc adm node-logs --role master --unit kubelet --tail=50

 

--grep can be include to only return lines that match a pattern.

 oc adm node-logs --role worker --unit kubelet --tail 50 --grep 'certificate has expired'

 




Did you find this article helpful?

If so, consider buying me a coffee over at Buy Me A Coffee



Comments


Add a Comment


Please enter a2d162 in the box below so that we can be sure you are a human.