Pods are the rough equivalent of a machine instance (physical or virtual) to a Container. Each pod is allocated its own internal IP address, therefore owning its entire port space, and Containers within pods can share their local storage and networking.
Pods have a lifecycle; they are defined, then they are assigned to run on
a node, then they run until their Container(s) exit or they are removed
for some other reason. Pods, depending on policy and exit code, might be
removed after exiting, or can be retained in order to enable access to
the logs of their Containers.
Azure Red Hat OpenShift treats pods as largely immutable; changes cannot be made to
a pod definition while it is running. Azure Red Hat OpenShift implements changes by
terminating an existing pod and recreating it with modified configuration,
base image(s), or both. Pods are also treated as expendable, and do not
maintain state when recreated. Therefore pods should usually be managed by
higher-level controllers, rather than directly by users.
Bare pods that are not managed by a replication controller will be not rescheduled upon node disruption.