参数名
|
字段类型
|
说明
|
version
|
String
|
这是是指k8s 的版本,目前基本上是v1,可以用
kubectl api-versions 命令查询
|
kind
|
String
|
这里是指yaml 文件定义的资源类型和角色,比如 Pod
|
metadata
|
Object
|
元数据对象,固定值就写metadata
|
metadata.name
|
String
|
元数据对象的名字,由我们编写 ,比如命名Pod的名字
|
metadata.namespace
|
String
|
元数据对象的命名空间,由我们自身定义;默认是default
|
spec
|
Object
|
详细定义对象,固定值就写Spec
|
spec.containers[]
|
list
|
|
spec.containers[].name
|
String
|
|
spec.containers[].image
|
String
|
|
spec.containers[].imagePullPolicy
|
String
|
Always 默认值
Never
IfNotPresent
|
spec.containers[].command[]
|
list
|
指定容器启动命令,因为是数组可以指定多个,不指定则使用镜像打包时使用的启动命令
|
spec.containers[].args[]
|
list
|
指定容器启动命令参数,因为是数组可以指定多个
|
spec.containers[].workingDir
|
String
|
指定容器的工作目录
|
spec.containers[].volumeMounts[]
|
list
|
|
spec.containers[].volumeMounts[].name
|
String
|
|
spec.containers[].volumeMounts[].mountPath
|
String
|
|
spec.containers[].volumeMounts[].readOnly
|
String
|
true/false 默认为读写
|
spec.containers[].ports[]
|
list
|
|
spec.containers[].ports[].name
|
String
|
|
spec.containers[].ports[].containerPort
|
String
|
|
spec.containers[].ports[].hostport
|
String
|
指定容器所在主机需要监听的端口号,默认跟上面的containerPort相同,注意设置了hostPort同一台主机无法启动该容器的相同副本(因为主机的端口不能相同,会冲突)
|
spec.containers[].ports[].protocol
|
String
|
TCP/UDP 默认为TCP
|
spec.containers[].env[]
|
String
|
|
spec.containers[].env[].name
|
String
|
|
spec.containers[].env[].value
|
String
|
|
spec.containers[].resources
|
Object
|
指定资源限制和资源请求的值 (这里开始就是设置容器的资源上限)
|
spec.containers[].resources.limits
|
Object
|
指定设置容器运行时资源的运行上限
|
spec.containers[].resources.limits.cpu
|
String
|
单位是core docker run --cpu-shares
|
spec.containers[].resources.limits.memory
|
String
|
单位是 MIB GIB
|
spec.containers[].resources.requests
|
Object
|
指定容器启动和调度时的限制设置
|
spec.containers[].resources.requests.cpu
|
String
|
单位是core docker run --cpu-shares
|
spec.containers[].resources.requests.memory
|
String
|
单位是 MIB GIB
|
spec.restartPolicy
|
String
|
Always 默认
OnFailure 只有POD以非零退出码终止时,kubectl才会重启
Never
|
spec.nodeSelector
|
Object
|
定义Node 的Label过滤标签,以Key: Vaule格式指定
|
spec.imagePullSecrets
|
Object
|
定义pull镜像时使用secret名称,以name:secretkey格式指定
|
spec.hostNetwork
|
Boolean
|
false:默认值,设为true时,无法在同一台宿主上启动第二个副本
|