Skip to content

Kubernetes Pod conditions

In Kubernetes, pod conditions represent a high-level summary of the current status of a Pod object, indicating where the Pod resides within its lifecycle. These conditions are typically displayed in the output of commands such as kubectl describe pod, providing administrators with a quick overview of the Pod's health and readiness^[400-devops__06-Kubernetes__k8s-learning__03.pod__README.md].

Types of conditions

The following standard condition types are monitored by the system to verify that the Pod has passed specific internal stages^[400-devops__06-Kubernetes__k8s-learning__03.pod__README.md]:

  • Initialized: This condition indicates whether all Init containers have started successfully^[400-devops__06-Kubernetes__k8s-learning__03.pod__README.md].
  • Ready: This condition signifies whether the Pod is able to service requests and is typically used by Service objects to determine if traffic should be routed to it^[400-devops__06-Kubernetes__k8s-learning__03.pod__README.md].
  • ContainersReady: This indicates whether all containers in the Pod are ready^[400-devops__06-Kubernetes__k8s-learning__03.pod__README.md].
  • PodScheduled: This condition confirms that the Pod has been successfully assigned to a specific Node by the scheduler^[400-devops__06-Kubernetes__k8s-learning__03.pod__README.md].

Status values

Each condition type is associated with a specific Status value that reflects its current state. In the output provided by the describe command, the observed status for a healthy, functioning Pod is typically listed as True^[400-devops__06-Kubernetes__k8s-learning__03.pod__README.md].

Example output

When inspecting a running Pod, the conditions section summarizes these stages:

Conditions:
  Type              Status
  Initialized       True
  Ready             True
  ContainersReady   True
  PodScheduled      True
^[400-devops__06-Kubernetes__k8s-learning__03.pod__README.md]

Sources

^[400-devops__06-Kubernetes__k8s-learning__03.pod__README.md]