Pod是Kubernetes对象模型中能够创建或部署的最小并且是最简单的基本单元。一个Pod代表在集群中正在运行的一个进程。
Pod由一个或多个容器组成,它们共享容器存储、网络和容器运行配置项。Pod中的容器总是被同时调度,由共同的运行环境。
一、通过yaml文件定义Pod
Pod分类:
- 自主式Pod:需要自己手动管理的Pod
- 受控制器管理的Pod
Pod资源清单格式:
apiVersion:(group/version)
kind:(pod)
metadata:
name:
namespace:
labels:
annotations:
...
...
spec:
containers:
- name:
image:
command:
args:
imagePullPolicy:
lifecycle:
livenessProbe:
readinessProbe:
env:
- name:
value:
nodeSelector:
key1: value1
key2: value2
status:<只读,由kubernetes自己创建>
可以使用kubectl explain pod命令详细查看pod资源所支持的所有字段:
比如我想了解pod资源的spec字段下的nodeSelector字段的详细信息,可以使用以下命令查看:
[root@master manifests]# kubectl explain