// Module included in the following assemblies: // // * networking/ovn_kubernetes_network_provider/ovn-kubernetes-troubleshooting-sources.adoc :_mod-docs-content-type: PROCEDURE [id="nw-ovn-kubernetes-readiness-probes_{context}"] = Monitoring OVN-Kubernetes health by using readiness probes The `ovnkube-control-plane` and `ovnkube-node` pods have containers configured with readiness probes. .Prerequisites * Access to the OpenShift CLI (`oc`). * You have access to the cluster with `cluster-admin` privileges. * You have installed `jq`. .Procedure . Review the details of the `ovnkube-node` readiness probe by running the following command: + [source,terminal] ---- $ oc get pods -n openshift-ovn-kubernetes -l app=ovnkube-node \ -o json | jq '.items[0].spec.containers[] | .name,.readinessProbe' ---- + The readiness probe for the northbound and southbound database containers in the `ovnkube-node` pod checks for the health of the databases and the `ovnkube-controller` container. + The `ovnkube-controller` container in the `ovnkube-node` pod has a readiness probe to verify the presence of the OVN-Kubernetes CNI configuration file, the absence of which would indicate that the pod is not running or is not ready to accept requests to configure pods. . Show all events including the probe failures, for the namespace by using the following command: + [source,terminal] ---- $ oc get events -n openshift-ovn-kubernetes ---- . Show the events for just a specific pod: + [source,terminal] ---- $ oc describe pod ovnkube-node-9lqfk -n openshift-ovn-kubernetes ---- . Show the messages and statuses from the cluster network operator: + [source,terminal] ---- $ oc get co/network -o json | jq '.status.conditions[]' ---- . Show the `ready` status of each container in `ovnkube-node` pods by running the following script: + [source,terminal] ---- $ for p in $(oc get pods --selector app=ovnkube-node -n openshift-ovn-kubernetes \ -o jsonpath='{range.items[*]}{" "}{.metadata.name}'); do echo === $p ===; \ oc get pods -n openshift-ovn-kubernetes $p -o json | jq '.status.containerStatuses[] | .name, .ready'; \ done ---- + [NOTE] ==== The expectation is all container statuses are reporting as `true`. Failure of a readiness probe sets the status to `false`. ====