编辑这个页面

Overview of Pods

What is a Pod?

A pod is the vehicle for running containers in Kubernetes. A pod consists of:

Resources are shared amongst containers in the pod. Containers within a pod also share an IP address and port space, and can find each other via localhost, or interprocess communications (such as semaphores).

Pod diagram

When to use Pods

Pods are used any time you need a container to be run. However, they are rarely created by a user, and are instead automatically created by controllers such as jobs, replication controllers, deployments, daemon set. The following table describes the strategy each controller uses to create pods.

Controller Usage Strategy
Deployment For running pods as a continuous and healthy application
Replication Controller Used for the same purpose as Deployments (superseded Replication Controllers)
Jobs For running pods “to completion” (which are then shut down)
Daemon Set Mainly for performing operations on any nodes that match given parameters

When not to use Pods

Do not use pods directly. Pods should always be managed by a controller.

Pod status

To retrieve the status of a pod, run the following command:

kubectl get pod <name>
Return Value Description
READY Describes the number of containers that are ready to recieve traffic.
STATUS A value from the PodPhase enum describing the current status of the pod. Can be Running, Pending, Succeeded, Failed, and Unknown.

TODO: Link to refpage for kubectl get pod

To get a full description of a pod, including past events, run the following command:

kubectl describe pod <name>

TODO: Link to refpage for kubectl describe pod

Possible status results

Value Description
Deployment For running pods as a continuous and healthy application
Replication Controller Used for the same purpose as Deployments (superseded Replication Controllers)
Jobs For running pods “to completion” (which are then shut down)
Daemon Set Mainly for performing operations on any nodes that match given parameters

Usage

Pods are defined when configuring the controller of your choice. In controller specifications, the parts that define the contents of the pod are inside the template: section.

YAML EXAMPLE HERE

Analytics