关于kubernetes:Kubernetes的YAML字段解析

38次阅读

共计 1809 个字符,预计需要花费 5 分钟才能阅读完成。

根本语法

  • 缩进时不容许应用 Tab 键,只容许应用空格
  • 缩进的空格数目不重要,只有雷同层级的元素左侧对齐即可
  • 标识正文,从这个字符始终到行尾,都会被解释器疏忽

    ## 必须存在的属性

参数名 字段类型 阐明
versionStringK8s API 的版本,目前根本都为 v1, 能够应用 kubectl api-version 命令查看
kindString 定义的资源类型和角色:比方:Pod
metadataObject 元数据对象,福鼎值就写 metadata
metadata.nameString 元数据对象名字,自定义
metadata.namespaceString 元数据命名空间,自定义
SpecObject 具体定义对象,固定值为 Spec
spec.containers[]listSpec 对象的容器列表定义,是个列表
spec.containers[].nameString 容器的名字
spec.containers[].imageString 要用到的镜像名称

可选参数

spec.containers[].imagePullPolicyString 定义镜像拉取策略,有 Always、Never、IfNotPresent 三个值可选,Always 示意每次都尝试从新拉取镜像;Never 便是仅应用本地有的镜像;IfNotPresent 示意本地有就用本地的,没有的话在线拉取镜像,如果没有设置则默认值为 Always
spec.containers[].command[]List 指定容器启动命令,因为是数组能够指定多个,不指定则应用镜像打包时应用的启动命令。
spec.containers[].args[]List 指定容器启动命令参数,因为是数组,能够指定多个
spec.containersp[].workingDirString 指定容器的工作目录
spec.containers[].volumeMounts[]String 指定容器外部的存储卷配置
spec.containers[].volumeMounts[].nameString 指定能够被容器挂载的存储卷的名称
spec.containers[].volumeMounts[].mountPathString 指定能够被容器挂载的存储卷的门路
spec.containers[].volumeMounts[].readOnlyString 设置存储卷的读写模式,true 或者 false 默认为读写模式
spec.containers[].ports[]List 指定容器须要用到的端口列表
spec.containers[].ports[].nameString 指定端口名称
spec.containers[].ports[].containerPortString 指定容器须要监听的端口号
spec.containers[].ports[].hostPortString 指定容器所在主机须要监听的端口号, 默认跟下面 containerPort 雷同, 留神,设置了 hostPort 同一台主机无奈启动该容器的雷同正本(因为主机的端口号不能雷同,这样会抵触)
spec.containers[].ports[].ProtocolString 指定端口协定,反对 TCP 和 UDP,默认为 TCP
spec.containers[].envList 指定容器运行前须要设置的环境变量
spec.restartPolicyString 定义 Pod 的重启策略,可选值为 Always、OnFailure,默认为 Always;Always 示意 Pod 一旦终止运行,则无论容器是如何终止的,kubelet 服务都将重启它;OnFailure 示意只有 Pod 以非零退出码终止时,kubelet 才会重启该容器,如果容器失常完结,则 kubelet 将不会重启它;Never 示意 Pod 终止后,kubelet 将退出码报告给 Master,不会重启该 Pod
spec.nodeSelectorObject 定义 Node 的 Label 过滤标签,以 key:value 格局指定
spec.imagePullSecretsObject 定义 pull 镜像时应用 secret 名称,以 name:secretkey 格局指定
spec.hostNetworkBoolean 定义是否应用主机网络模式,默认为 false,设置 true 示意应用宿主机网络,不实用 docker 网桥,同时设置了 true 将无奈在同一台宿主机上启动第二个正本
正文完
 0