导图社区 K8S控制器详解思维导图
这是一篇关于K8S控制器详解思维导图,详细介绍K8S控制器参数,包含Api版本、种类、元数据、投机等。
编辑于2023-11-16 14:10:47DaemonSet/Deployment/StatefulSet
apiVersion
kind
metadata
name
字符串类型,定义DaemonSet名字
namesapce
定义名字空间
labels
字符列表类型,定义标签
annotations
列表类型,定义DaemonSet的注解, key /value表示
deletionGracePeriodSeconds
数字类型,Pod正常终止之前允许的秒数将从系统中删除
clusterName
字符串类型,定义k8s集群名字, 区分多个k8s集群
YAML文件常用字段参数
ownerReferences
对象类型,此对象所依赖的对象列表。如果列表中的 所有对象都被删除,则此对象将被垃圾回收。
creationTimestamp
时间戳,客户端不能创建
deletionTimestamp
字符类型,是RFS 3339的日期和时间, 此资源将被删除
finalizers
必须为空,然后才能从注册表中删除对象
generateName
字符串类型,GenerateName是一个可选前缀,由服务器使用, 用于生成唯一名称(仅在未提供“名称”字段的情况下)
generation
数字类型,表示所需状态的特定生成的序列号。 由系统填充,只读。
managedFields
ManagedFields将工作流id和版本映射到由该工作流管理。这主要用于内部内务管理,以及用户通常不需要设置或理解此字段
resourceVersion
表示该对象的内部版本
selfLink
此对象的URL,由系统填充, 只读,1.21版本中删除。
uid
UID是此对象在时间和空间上唯一的值。它通常 由服务器在成功创建资源时生成
spec
selector(必须字段)
matchExpressions
key
字符串类型,必须字段
operator
字符串类型,必须字段
values
字符串列表类型
matchLabels
字符列表类型,使用{key,value表示}
template(必须字段)
metadata
labels
字符列表类型,使用{key,value表示}
name
字符类型,定义pod名字
namespace
字符类型,定义名字空间
annotations
字符列表类型,使用{key,value表示}
与.spec.metadata相同,这里只列出常用参数
spec
tolerations
key
operator
effect
当operator为equel时,key和effec必须同时满足;当operator为exists时,key和effect满足其中一个,就可以调用。
containers(必须字段)
name(必须字段)
字符类型,定义容器名字
image
字符类型,定义容器使用镜像
resources
limits
字符列表类型,使用{key,value表示}
requests
字符列表类型,使用{key,value表示}
volumeMount
mountPath (必须字段)
字符串类型,定义容器挂载路径
mountPropagation
字符串类型,确定装载如何从主机传播到容器和其他方法
name(必须字段)
字符串类型,匹配volume的名字
readOnly
布尔类型,如果设置为true,则为只读方式挂载,否则为读写(false或未指定)。默认为false。
subPath
字符串类型,定义容器子路径
subPathExpr
字符串类型,容器的卷所在的卷内的扩展路径 安装。SubPathExpr和SubPath是互斥的。
args
字符列表类型,定义传入命令的参数
command
字符列表类型,定义传入的命令
env
name(必须字段)
字符串类型,定义环境变量的名字
value
字符串类型,定义变量
valueFrom
configMapKeyRef
key (必须字段)
字符串类型,定义ConfigMap的key
name
字符串类型,定义ConfigMap名字
optional
布尔类型,指定是否必须定义ConfigMap或其密钥
fieldRef
apiVersion
字符串类型,根据FieldPath编写的架构的版本,默认为“v1”
fieldPath(必须字段)
字符串类型,要在指定的API版本中选择的字段的路径
resourceFieldRef
containerName
字符串类型,定义容器名字
divisor
字符串类型,指定公开资源的输出格式,默认为“1”
resource(必须字段)
字符串类型,定义选择的资源
secretKeyRef
key (必须字段)
字符串类型,定义secret的key
name
字符串类型,定义secert名字
optional
布尔类型,指定是否必须定义Secret或其密钥
envFrom
configMapRef
name
字符串类型,引用对象的名称
optional
布尔类型,指定是否必须定义ConfigMap
prefix
字符串类型,准备在ConfigMap中的每个键之前的可选标识符。必须是 C_IDENTIFIER。
secretRef
name
字符串类型,引用对象的名称
optional
布尔类型,指定是否必须定义Secret
imagePullPolicy
字符串类型,定义镜像拉取策略,包含Always(一直拉取远端镜像), Never(从不拉取镜像), IfNotPresent(本地有镜像则拉取远端镜像),默认为Always。
lifecycle
postStart
exec
command
字符列表类型,命令是在容器内部执行的命令行,0的退出状态被视为 健康的和非零是不健康的。
httpGet
host
字符串类型,要连接的主机名,默认为pod IP
httpHeaders
name(必须字段)
字符串类型,标题字段名称
value(必须字段)
字符串类型,标头字段值
path
字符串类型,访问HTTP服务器的路径
port(必须字段)
字符串类型,容器上要访问的端口的名称或编号。数字必须在 范围为1到65535
scheme
字符串类型,用于连接到主机的方案。默认为HTTP。
tcpSocket
host
字符串类型,要连接的主机名,默认为pod IP
port(必须字段)
字符串类型,容器上要访问的端口的编号或名称。数字必须在 范围为1到65535。名称必须是IANA_SVC_Name。
preStop
exec
command
字符列表类型,命令是在容器内部执行的命令行,0的退出状态被视为 健康的和非零是不健康的。
httpGet
host
字符串类型,要连接的主机名,默认为pod IP
httpHeaders
name(必须字段)
字符串类型,标题字段名称
value(必须字段)
字符串类型,标头字段值
path
字符串类型,访问HTTP服务器的路径
port(必须字段)
字符串类型,容器上要访问的端口的名称或编号。数字必须在 范围为1到65535
scheme
字符串类型,用于连接到主机的方案。默认为HTTP。
tcpSocket
host
字符串类型,要连接的主机名,默认为pod IP
port(必须字段)
字符串类型,容器上要访问的端口的编号或名称。数字必须在 范围为1到65535。名称必须是IANA_SVC_Name。
livenessProbe(存活探测)
exec
command
字符列表类型,命令是在容器内部执行的命令行,0的退出状态被视为 健康的和非零是不健康的。
failureThreshold
数字类型,定义失败探测次数,默认为3次,最小为1次
grpc
port(必须字段)
数字类型,定义gRPC服务的端口号。数字必须在1到65535之间
service
字符串类型,定义gRPC服务的service
httpGet
host
字符串类型,要连接的主机名,默认为pod IP
httpHeaders
name(必须字段)
字符串类型,标题字段名称
value(必须字段)
字符串类型,标头字段值
path
字符串类型,访问HTTP服务器的路径
port(必须字段)
字符串类型,容器上要访问的端口的名称或编号。数字必须在 范围为1到65535
scheme
字符串类型,用于连接到主机的方案。默认为HTTP。
initialDelaySeconds
数字类型,容器启动后活体探测前的秒数启动。
periodSeconds
数字类型,执行探测的频率(以秒为单位)。默认为10秒。最低限度 值为1。
successThreshold
数字类型,认为探测成功的最小连续成功次数在失败之后。默认值为1。必须为1才能激活和启动。最小值为1。
tcpSocket
port(必须字段)
字符串类型,容器上要访问的端口的编号或名称。数字必须在 范围为1到65535。名称必须是IANA_SVC_Name。
terminationGracePeriodSeconds
数字类型,Pod正常终止的可选持续时间(秒)探针故障。比如此值设置为30s,则为删除pod命令发出后,pod有30s的时间进行业务的操作。
timeoutSeconds
数字类型,探测超时后的秒数。默认为1秒。 最小值为1
ports
containerPort(必须字段)
数字类型,定义容器端口,端口范围为0-65536
hostIP
字符串类型,将外部端口绑定到哪个主机IP
hostPort
数字类型,定义主机端口,端口范围为0-65536
name
字符串类型,定义端口的名称
protocol
字符串类型,定义端口的协议。必须是UDP、TCP或SCTP。默认为“TCP”。
readinessProbe(就绪探测)
exec
command
字符列表类型,命令是在容器内部执行的命令行,0的退出状态被视为 健康的和非零是不健康的。
failureThreshold
数字类型,定义失败探测次数,默认为3次,最小为1次
grpc
port(必须字段)
数字类型,定义gRPC服务的端口号。数字必须在1到65535之间
service
字符串类型,定义gRPC服务的service
httpGet
host
字符串类型,要连接的主机名,默认为pod IP
httpHeaders
name(必须字段)
字符串类型,标题字段名称
value(必须字段)
字符串类型,标头字段值
path
字符串类型,访问HTTP服务器的路径
port(必须字段)
字符串类型,容器上要访问的端口的名称或编号。数字必须在 范围为1到65535
scheme
字符串类型,用于连接到主机的方案。默认为HTTP。
initialDelaySeconds
数字类型,容器启动后活体探测前的秒数启动。
periodSeconds
数字类型,执行探测的频率(以秒为单位)。默认为10秒。最低限度 值为1。
successThreshold
数字类型,认为探测成功的最小连续成功次数在失败之后。默认值为1。必须为1才能激活和启动。最小值为1。
tcpSocket
port(必须字段)
字符串类型,容器上要访问的端口的编号或名称。数字必须在 范围为1到65535。名称必须是IANA_SVC_Name。
terminationGracePeriodSeconds
数字类型,Pod正常终止的可选持续时间(秒)探针故障。比如此值设置为30s,则为删除pod命令发出后,pod有30s的时间进行业务的操作。
timeoutSeconds
数字类型,探测超时后的秒数。默认为1秒。 最小值为1
securityContext
allowPrivilegeEscalation
布尔类型,AllowPrivilegeEscalation控制流程是否可以获得更多特权高于其父进程。此bool直接控制将在容器进程上设置no.new_prvs标志
capabilities
add
字符列表类型,添加的功能
drop
字符列表类型,删除的功能
privileged
布尔类型,以特权模式运行容器。特权容器中的进程是本质上等同于主机上的root。默认为false。请注意当spec.os.name为windows时,无法设置此字段
procMount
字符串类型,procMount表示要用于容器的proc装载类型。这个默认值为DefaultProcMount,它使用容器运行时默认值只读路径和屏蔽路径。这需要ProcMountType功能标志。
readOnlyRootFilesystem
布尔类型,此容器是否具有只读根文件系统。默认值为false
runAsGroup
数字类型,运行容器进程入口点的GID。使用运行时如果未设置,则为默认值。也可以在PodSecurityContext中设置。如果同时设置SecurityContext和PodSecurityContext,中指定的值SecurityContext优先
runAsNonRoot
布尔类型,指示容器必须以非root用户身份运行。如果为true,则Kubelet将在运行时验证映像,以确保它不会运行作为UID 0(root),如果启动容器,则无法启动容器。如果未设置或false,则不会执行此类验证。也可能设置在PodSecurityContext。如果在SecurityContext和PodSecurityContext中都设置,SecurityContext中指定的值优先。
runAsUser
数字类型,运行容器进程入口点的UID。默认为用户如果未指定,则在图像元数据中指定。也可能设置在PodSecurityContext。如果在SecurityContext和PodSecurityContext中都设置,SecurityContext中指定的值优先
seLinuxOptions
level
字符串类型,Level是应用于容器的SELinux级别标签
role
字符串类型,Role是应用于容器的SELinux角色标签。
type
字符串类型,Type是应用于容器的SELinux类型标签。
user
字符串类型,User是应用于容器的SELinux用户标签。
seccompProfile
localhostProfile
字符串类型,localhostProfile表示在节点上的文件中定义的配置文件 使用。必须在节点上预先配置配置文件才能工作。
type(必须字段)
字符串类型,type指示将应用哪种类型的seccomp配置文件。有效选项是:Localhost-应该使用在节点上的文件中定义的配置文件。RuntimeDefault-应使用容器运行时默认配置文件。未定义-不应应用任何配置文件
windowsOptions
gmsaCredentialSpec
字符串类型,GMSACredentialSpec是GMSA准入网络挂钩(https://github.com/kubernetes-sigs/windows-gmsa)内联的内容由GMSACredentialSpecName字段命名的GMSA凭据规范。
gmsaCredentialSpecName
字符串类型,GMSACredentialSpecName是要使用的GMSA凭据规范的名称。
hostProcess
布尔类型,HostProcess确定容器是否应作为“主机进程”运行,如果HostProcess为true,则HostNetwork也必须设置为true。
runAsUserName
字符串类型,在Windows中运行容器进程入口点的用户名。如果未指定,则默认为图像元数据中指定的用户。也可能在PodSecurityContext中设置。如果在SecurityContext和 PodSecurityContext,SecurityContext中指定的值优先
startupProbe
exec
command
字符列表类型,命令是在容器内部执行的命令行,0的退出状态被视为 健康的和非零是不健康的。
failureThreshold
数字类型,定义失败探测次数,默认为3次,最小为1次
grpc
port(必须字段)
数字类型,定义gRPC服务的端口号。数字必须在1到65535之间
service
字符串类型,定义gRPC服务的service
httpGet
host
字符串类型,要连接的主机名,默认为pod IP
httpHeaders
name(必须字段)
字符串类型,标题字段名称
value(必须字段)
字符串类型,标头字段值
path
字符串类型,访问HTTP服务器的路径
port(必须字段)
字符串类型,容器上要访问的端口的名称或编号。数字必须在 范围为1到65535
scheme
字符串类型,用于连接到主机的方案。默认为HTTP。
initialDelaySeconds
数字类型,容器启动后活体探测前的秒数启动。
periodSeconds
数字类型,执行探测的频率(以秒为单位)。默认为10秒。最低限度 值为1。
successThreshold
数字类型,认为探测成功的最小连续成功次数在失败之后。默认值为1。必须为1才能激活和启动。最小值为1。
tcpSocket
port(必须字段)
字符串类型,容器上要访问的端口的编号或名称。数字必须在 范围为1到65535。名称必须是IANA_SVC_Name。
terminationGracePeriodSeconds
数字类型,Pod正常终止的可选持续时间(秒)探针故障。比如此值设置为30s,则为删除pod命令发出后,pod有30s的时间进行业务的操作。
timeoutSeconds
数字类型,探测超时后的秒数。默认为1秒。 最小值为1
stdin
布尔类型,此容器是否应为容器中的stdin分配缓冲区运行时。如果未设置此项,则从容器中的stdin读取将始终导致EOF。默认值为false。
stdinOnce
布尔类型,容器运行时是否应在stdin通道已由单个附件打开。当stdin为true时,stdin流将在多个附加会话中保持打开状态。如果stdinOnce设置为true,stdin在容器启动时打开,在第一个客户端之前为空连接到stdin,然后保持打开状态并接受数据,直到客户端断开连接,此时stdin关闭并保持关闭状态,直到容器重新启动。如果此标志为false,则容器将处理从stdin读取永远不会收到EOF。默认值为false
terminationMessagePath
字符串类型,容器终止到的文件的路径将要写入的消息装载到容器的文件系统中。消息书面的目的是简要的最终状态,例如断言失败消息如果大于4096字节,将被节点截断。这个所有容器的总消息长度将限制为12kb。默认为/dev/termination log。无法更新。
terminationMessagePolicy
字符串类型,指示应如何填充终止消息。文件将使用terminationMessagePath的内容以填充容器状态消息关于成功和失败。FallbackToLogsError将使用最后一个区块如果终止消息文件为空并且容器因错误退出。日志输出限制为2048字节或80行,以较小者为准。默认为“文件”。无法更新。
tty
布尔类型,这个容器是否应该为自己分配一个TTY,还需要 “stdin”为true。默认值为false。
volumeDevices
devicePath(必须字段)
字符串类型,devicePath是设备所在容器内的路径 映射
name(必须字段)
字符串类型,name必须与pod中的persistentVolumeClaim的名称匹配
workingDir
字符串类型,定义容器的工作目录
terminationGracePeriodSeconds
吊舱需要正常终止的可选持续时间(秒)。可能是在删除请求中减少。值必须是非负整数。价值零表示通过终止信号立即停止(没有机会关闭向下)。如果此值为零,则将使用默认的宽限期。宽限期是进程在中运行后的持续时间(以秒为单位) pod会被发送一个终止信号,以及进程开始的时间用终止信号强行停止。设置此值的时间比预期的长进程的清理时间。默认为30秒。
volumes
name(必须字段)
字符串类型,定义volumes的名字
hostPath
path(必须字段)
字符串类型,定义主机上的目录路径
type
字符串类型,定义主机路径卷的默认类型,包含DirectoryOrCreate(给定路径不存在,跟进需要创建空目录,权限设置为0755,与kubectl相同的组和属主信息)、Directory(在给定路径上必须存在的目录)、FileOrCreate(在给定路径上什么都不存在,根据需要创建空文件,权限设置为0644,与kubectl相同的组和所有权)、File(给定的路径必须存在的文件)、CharDevice(给定路径上必须存在的字符设备)、Socket(给定路径上必须存在UNIX套接字)、BlockDevice(给定路径上必须存在的块设备)。
cephfs
monitors(必须字段)
字符列表类型,配置监视器是Ceph监视器的集合
path
字符串类型,指定ceph的目录路径
readOnly
布尔类型,此值为true时,文件为只读权限。默认为false(读写)
secretFile
字符串类型,SecretFile是用户密钥环的路径,默认为 /etc/ceph/user.secret
secretRef
name
字符串类型,引用对象的名称
user
字符串类型,User是rados用户名
configMap
defaultMode
数字类型,默认情况下,模式位用于设置已创建文件的权限。必须是介于0000和0777之间的八进制值或介于0之间的十进制值和511。YAML接受八进制和十进制值,JSON需要十进制模式位的值。默认值为0644。路径中的目录不是受此设置影响。
items
key(必须字段)
字符串类型,定义configMap的key
mode
数字类型,用于设置此文件权限的模式位
path(必须字段)
字符串类型,要将密钥映射到的文件的相对路径
name
字符串类型,引用对象的名字
optional
布尔类型,指定是否必须定义ConfigMap或其密钥
emptyDir
medium
字符串类型,应该支持该目录的存储介质类型。默认值为“” 这意味着使用节点的默认介质。必须是空字符串 (默认)或内存
sizeLimit
字符串类型,EmptyDir卷所需的本地存储总量
glusterfs
endpoints(必须字段)
字符串类型,指定gulsterfs节点名字
path(必须字段)
字符串类型,指定glusterfs挂载的路径
readOnly
布尔类型,此值为true,则glusterfs以只读方式挂载,默认为false
iscsi
chapAuthDiscovery
布尔类型,是否支持iSCSI发现CHAP身份验证
chapAuthSession
布尔类型,是否支持iSCSI会话CHAP身份验证
fsType
字符串类型,主机操作系统支持文件系统类型,包含ext4", "xfs", "ntfs
initiatorName
字符串类型,自定义iSCSI启动器名称。如果initiatorName指定为 iscsiInterface同时,新的iSCSI接口<目标门户>:<卷将为连接创建name>。
iqn(必须字段)
字符串类型,目标iSCSI限定名称
iscsiInterface
字符串类型,使用iSCSI传输的iSCSI接口名称。默认为“default”(tcp)
lun(必须字段)
数字类型,iSCSI目标Lun编号
portals
字符列表类型,iSCSI目标门户列表。如果端口不是默认端口(通常是TCP端口860和3260)
readOnly
布尔类型,此值为true,文件系统为只读权限,默认为false。
secretRef
name
字符串类型,引用的对象
targetPortal(必须字段)
字符串类型,iSCSI目标门户。如果端口不是默认的(通常是TCP端口860和3260)。
nfs
path(必须字段)
字符串类型,NFS服务器导出的路径
readOnly
布尔类型,此值为true,文件系统为只读权限,默认为false。
server(必须字段)
字符串类型,Server是NFS服务器的主机名或IP地址
persistentVolumeClaim
claimName(必须字段)
字符串类型,指定claim的名字
readOnly
布尔类型,此值为true,文件系统为只读权限,默认为false。
secret
defaultMode
数值类型,默认情况下,模式位用于设置已创建文件的权限。必须是介于0000和0777之间的八进制值或介于0之间的十进制值和511。YAML接受八进制和十进制值,JSON需要十进制模式位的值。默认值为0644
items
key
字符串类型,定义secret的key
mode
数值类型,用于设置此文件权限的模式位。必须是八进制0000和0777之间的值或0和511之间的十进制值。YAML接受八进制和十进制值
path(必须字段)
字符串类型,要将密钥映射到的文件的相对路径。可能不是绝对路径 路径不能包含路径元素“..”。不能以字符串开头'..'。
optional
布尔类型,指定指定是否必须定义Secret或其密钥
secretName
字符串类型,pod命名空间中要使用的机密的名称
affinity
nodeAffinity
preferredDuringSchedulingIgnoredDuringExecution
preference(必须字段)
matchExpressions
key(必须字段)
operator(必须字段)
values
matchFields
key(必须字段)
operator(必须字段)
values
weight(必须字段)
数字类型,范围为1-100
requiredDuringSchedulingIgnoredDuringExecution
nodeSelectorTerms(必须字段)
matchExpressions
key(必须字段)
operator(必须字段)
values
matchFields
key(必须字段)
operator(必须字段)
values
podAffinity
preferredDuringSchedulingIgnoredDuringExecution
podAffinityTerm(必须字段)
labelSelector
matchExpressions
key(必须字段)
operator(必须字段)
values
matchLabels
字符列表类型,使用{key,value表示}
namespaceSelector
matchExpressions
key(必须字段)
operator(必须字段)
values
matchLabels
字符列表类型,使用{key,value表示}
namespaces
字符类型,定义命名空间
topologyKey(必须字段)
字符串类型,定义
weight(必须字段)
requiredDuringSchedulingIgnoredDuringExecution
podAntiAffinity
preferredDuringSchedulingIgnoredDuringExecution
requiredDuringSchedulingIgnoredDuringExecution
labelSelector
matchExpressions
key(必须字段)
operator(必须字段)
values
matchLabels
字符列表类型,使用{key,value表示}
namespaceSelector
matchExpressions
key(必须字段)
operator(必须字段)
values
matchLabels
字符列表类型,使用{key,value表示}
namespaces
字符类型,定义命名空间
topologyKey(必须字段)
字符串类型,定义
activeDeadlineSeconds
数字类型,可选持续时间(秒)相对于系统将主动尝试将其标记 为失败并终止之前的StartTime相关容器。值必须是正整数。
automountServiceAccountToken
布尔类型,指示服务帐户令牌会自动安装。
dnsConfig
nameservers
字符列表类型,DNS名称服务器IP地址的列表。这将附加到基础上 从DNSPolicy生成的名称服务器。重复的名称服务器将已删除
options
name
value
searches
字符列表类型,用于主机名查找的DNS搜索域的列表。这将附加到 从DNSPolicy生成的基本搜索路径。重复的搜索路径将被删除。
dnsPolicy
字符串类型,设置DNS的策略,默认为“ClusterFirst”。有效值为“ClusterFirstWithHostNet”、“ClusterFirst”、“Default”或“None”。要将DNS选项与hostNetwork一起设置,您必须将DNS策略显式指定为“ClusterFirstWithHostNet”。
enableServiceLinks
布尔类型,指示是否应该注入Pod的环境变量,匹配Docker的语法。默认为true。
ephemeralContainers
对象列表类型,在此pod中运行的临时容器的列表,可以用于调试
hostAliases
hostnames
字符列表类型,指定主机名
ip
字符串类型,指定IP地址
hostIPC
布尔类型,使用主机的ipc命名空间,默认是false
hostNetwork
布尔类型,使用主机的网络命名空间,默认是false
hostPID
布尔类型,使用主机的PID命名空间,默认是false
hostname
字符串类型,指定Pod的主机名,如果未指定,则Pod的主机名将可以设置诶系统定义的值。
imagePullSecrets
name
引用的对象
initContainers
name
image
command
volumeMounts
name
mountPath
env
envFrom
imagePullPolicy
ports
readinessProbe
resources
livenessProbe
lifecycle
nodeName
字符串类型,是将这个pod调度到特定节点上的请求
nodeSelector
字符串列表类型,NodeSelector是一个选择器,它必须为true才能使pod适合节点。选择器,该选择器必须与节点的标签相匹配才能安排pod
os
name(必须字段)
字符类型,Name是操作系统的名称。当前支持的值是linux和windows
tion
客户端应该期望处理附加值并处理未识别的值
overhead
字符串列表类型,指定了在运行Pod时需要额外分配的资源。它是一个选项字段,可以用来为容器分配额外的内存或者CPU。
preemptionPolicy
字符串类型,指定在一个Node上预占用Pod策略。当一个新的Pod被调度到一个已经被占用的Node上时,它将决定如何处理这个Node上运行的Pod,有3中策略分别为Never(不会强制占用一个正在运行的Pod)、Always(允许预占用正在运行的Pod)、LeastRequested(预占用资源请求量最少的Pod)
priority
数值类型,是一个整数,表示Pod的优先级
priorityClassName
字符串类型,指向PriorityClass对象的引用,该对象定义了Pod的优先级。
readinessGates
conditionType(必须字段)
ConditionType指的是pod条件列表中的一个条件 匹配类型。
restartPolicy
字符串类型,pod中所有容器的重新启动策略,策略包含Always, OnFailure, Never,默认为Always。
runtimeClassName
字符串类型,RuntimeClassName是指定一个Pod的运行环境。在kubernetes中,不同的运行时环境可以有不同的特性,如资源限制和存储卷配置。
schedulerName
字符串类型,如果指定,pod将由指定的调度器调度。如果不是指定后,pod将由默认调度程序调度
securityContext
对象类型,SecurityContext包含pod级别的安全属性和公共容器设置。默认为空
serviceAccount
字符串类型,DeprecatedServiceAccount是ServiceAccountName的折旧别名。不推荐使用:请改用serviceAccountName
serviceAccountName
setHostnameAsFQDN
布尔类型,指定容器的主机名是否被设置为容器的全称域名(FQDN)。默认情况下,容器的主机名将被设置为容器的名称。
shareProcessNamespace
布尔类型,在pod中的所有容器之间共享一个进程名称空间。设置后,容器将能够从同一pod中的其他容器,以及每个容器中的第一个进程将不会被分配PID 1。HostPID和ShareProcessNamespace不能同时存在设置。可选:默认为false。
subdomain
子主题
topologySpreadConstraints
labelSelector
matchExpressions
key(必须字段)
operator(必须字段)
values
matchLabels
字符列表类型,使用{key,value表示}
maxSkew (必须字段)
数值类型,MaxSkew描述了Pod分布不均匀的程度当“whenUnsatisable=DoNotSchedule”时,它是允许的最大值 目标拓扑中匹配pod的数量与全局最小值。
topologyKey(必须字段)
字符串类型,TopologyKey是节点标签的关键。具有此标签的节点 键和相同的值被认为在相同的拓扑中
whenUnsatisfiable(必须字段)
whenUnsatisfiable如果指示Pod不满足,如何处理Pod扩散限制,DoNotSchedule(默认)告诉调度程序不要安排,
minReadySeconds
DeamonSet Pod新创建的最小秒数,默认为0
revisionHistoryLimit
设置允许回顾的旧历史记录数,默认值为10.
replicas
Deployment和StatefulSet 控制器有此参数 DeamonSet控制器没有此参数。
paused
strategy
rollingUpdate
maxSurge
maxUnavailable
type
deployment控制器独有
updateStrategy
rollingUpdate
partition
type
StatefulSet Pod更新策略
updateStrategy
rollingUpdate
maxSurge
maxUnavailable
type
DaemonSet Pod更新策略
persistentVolumeClaimRetentionPolicy
whenDeleted
策略为Retain,StatefulSet删除后,pvc不受影响;策略为Delete,StatefulSet删除后,pvc也被删除
whenScaled
策略为Retain,StatefulSet按比例缩小后,pvc不受缩减影响;策略为Delete,StatefulSet按比例缩小后,pvc按比例缩减。
podManagementPolicy
serviceName(必须字段)
volumeClaimTemplates
apiVersion
kind
metadata
spec
accessModes
dataSource
apiGroup
kind(必须字段)
name(必须字段)
dataSourceRef
apiGroup
kind(必须字段)
name(必须字段)
resources
limits
requests
selector
matchExpressions
key(必须字段)
operator(必须字段)
values
matchLabels
storageClassName
volumeMode
volumeName
StatefulSet控制器独有
子主题
子主题
子主题
子主题