参考

Edit This Page

kube-apiserver

概要

Kubernetes API 服务器验证并配置 api 对象的数据,包括 pods、services、replication controllers 和其他对象。API 服务器为 REST 操作提供服务,并为集群的共享状态提供前端。所有其他组件通过该状态进行交互。

kube-apiserver [flags]

选项

--admission-control-config-file string
指定准入控制配置文件。
--advertise-address ip
指定服务器为集群中成员发布的 IP 地址。该地址必须能被其他机器访问。如果该参数留空,服务器会使用 --bind-address 所指定的地址。如果 --bind-address 也没有设定,则会使用该主机的默认网络接口。
--allow-privileged     Default: false
指定是否允许使用特权容器(默认值:false)。
--anonymous-auth     Default: true
指定是否允许 API 服务器的安全端口接受匿名请求(默认值:true)。匿名请求即没有被其他认证方法拒绝的请求,其用户名均为 system:anonymous,组名均为 system:unauthenticated。
--apiserver-count int     Default: 1
指定集群中运行的 API 服务器数量(默认值:1),值必须是正整数。该参数在 --endpoint-reconciler-type=master-count 时使用。
--audit-log-batch-buffer-size int     Default: 10000
指定存储批处理和写入事件的缓冲区字节数(默认值:10000)。只在批处理模式下使用。
--audit-log-batch-max-size int     Default: 1
指定一个批处理的最大长度(默认值:1)。只在批处理模式下使用。
--audit-log-batch-max-wait duration
指定尚未达到最大值的批处理的强制写入等待时间。只在批处理模式下使用。
--audit-log-batch-throttle-burst int
指定在未使用 ThrottleQPS 时同时发送请求的最大数量。只在批处理模式下使用。
--audit-log-batch-throttle-enable
指定是否启用 batching throttling。只在批处理模式下使用。
--audit-log-batch-throttle-qps float32
设定每秒内可执行的批处理的最大平均数。只在批处理模式下使用。
--audit-log-format string     Default: "json"
指定存储审计日志的格式。legacy 表示每个事件记录 1 行文本;json 表示以结构化 json 格式记录。目前仅支持 legacy 和 json(默认值:json)。
--audit-log-maxage int
指定历史审计日志的最大保存天数,以日志文件名中的时间戳为准。
--audit-log-maxbackup int
指定历史审计日志的最大保存数量。
--audit-log-maxsize int
指定审计日志流转前的最大大小(单位:MB)。
--audit-log-mode string     Default: "blocking"
指定发送审计事件的策略。blocking 表示发送事件时阻塞服务器响应;batch 表示在后端异步缓冲和写入事件。目前仅支持 batch 和 blocking(默认值:blocking)。
--audit-log-path string
如果指定该参数,则所有 API 服务器接受的请求都会记录到此文件。"-" 表示记录到标准输出。
--audit-log-truncate-enabled
指定是否允许截断事件和批处理。
--audit-log-truncate-max-batch-size int     Default: 10485760
指定发送到底层后端的批处理的最大字节数(默认值:10485760)。实际序列化时的大小会比设定值大几百字节。如果一个批处理超出该大小,它会被分为几个小的批处理。
--audit-log-truncate-max-event-size int     Default: 102400
指定发送到底层后端的审计事件的最大字节数(默认值:102400)。如果一个事件超出该大小,则第一个请求和回复会被删除,如果还没有减少到合适的大小,该事件将被丢弃。
--audit-log-version string     Default: "audit.k8s.io/v1beta1"
指定序列化审计日志的 API 组名和版本号(默认值:audit.k8s.io/v1beta1)。
--audit-policy-file string
指定审计策略配置文件的路径。
--audit-webhook-batch-buffer-size int     Default: 10000
指定存储批处理和写入事件的缓冲区字节数(默认值:10000)。只在批处理模式下使用。
--audit-webhook-batch-max-size int     Default: 400
指定一个批处理的最大长度(默认值:400)。只在批处理模式下使用。
--audit-webhook-batch-max-wait duration     Default: 30s
指定尚未达到最大值的批处理的强制写入等待时间(默认值:30s)。只在批处理模式下使用。
--audit-webhook-batch-throttle-burst int     Default: 15
指定在未使用 ThrottleQPS 时同时发送请求的最大数量(默认值:15)。只在批处理模式下使用。
--audit-webhook-batch-throttle-enable     Default: true
指定是否启用 batching throttling(默认值:true)。只在批处理模式下使用。
--audit-webhook-batch-throttle-qps float32     Default: 10
设定每秒内可执行的批处理的最大平均数(默认值:10)。只在批处理模式下使用。
--audit-webhook-config-file string
指定 kubeconfig 格式的配置文件的路径。该文件设定了审计 webhook 配置。
--audit-webhook-initial-backoff duration     Default: 10s
指定重试第一个失败请求之前等待的时间(默认值:10s)。
--audit-webhook-mode string     Default: "batch"
指定发送审计事件的策略。blocking 表示发送事件时阻塞服务器响应;batch 表示在后端异步缓冲和写入事件。目前仅支持 batch 和 blocking(默认值:batch)。
--audit-webhook-truncate-enabled
指定是否允许截断事件和批处理。
--audit-webhook-truncate-max-batch-size int     Default: 10485760
指定发送到底层后端的批处理的最大字节数(默认值:10485760)。实际序列化时的大小会比设定值大几百字节。如果一个批处理超出该大小,它会被分为几个小的批处理。
--audit-webhook-truncate-max-event-size int     Default: 102400
指定发送到底层后端的审计事件的最大字节数(默认值:102400)。如果一个事件超出该大小,则第一个请求和回复会被删除,如果还没有减少到合适的大小,该事件将被丢弃。
--audit-webhook-version string     Default: "audit.k8s.io/v1beta1"
指定序列化审计日志的 API 组名和版本号(默认值:audit.k8s.io/v1beta1)。
--authentication-token-webhook-cache-ttl duration     Default: 2m0s
指定从 webhook 标识认证方缓存响应的持续时间(默认值:2m0s)。
--authentication-token-webhook-config-file string
指定 kubeconfig 格式的 webhook 配置文件,用来进行标识认证。API 服务器将会查询远程服务器,来验证承载 token 的身份。
--authorization-mode stringSlice     Default: [AlwaysAllow]
指定在安全端口上执行授权的有序插件列表,以逗号分隔。(可选:AlwaysAllow、AlwaysDeny、ABAC、Webhook、RBAC、Node,默认值:[AlwaysAllow])。
--authorization-policy-file string
指定 csv 格式的授权策略文件。该参数与 --authorization-mode=ABAC 一起使用,作用在安全端口上。
--authorization-webhook-cache-authorized-ttl duration     Default: 5m0s
指定从 webhook 授权方缓存的 '已授权' 响应的持续时间(默认值:5m0s)。
--authorization-webhook-cache-unauthorized-ttl duration     Default: 30s
指定从 webhook 授权方缓存的 '未授权' 响应的持续时间(默认值:30s)。
--authorization-webhook-config-file string
指定 kubeconfig 格式的 webhook 配置文件。该参数与 --authorization-mode=webhook 一起使用。API 服务器将会查询远程服务器,来确认访问 API 服务器安全端口。
--azure-container-registry-config string
指定 Azure 容器注册表配置文件的路径。
--basic-auth-file string
如果设定该参数,则该文件将使用 http 基本身份验证接受对 API 服务器安全端口的请求。
--bind-address ip     Default: 0.0.0.0
指定一个 IP 地址来监听 --secure-port 的端口(默认值:0.0.0.0)。该地址对应的网络接口必须可被集群中其他成员、命令行和 web 客户端访问。如果该参数留空,则使用所有网络接口(IPv4 接口使用 0.0.0.0,IPv6 接口使用 ::)。
--cert-dir string     Default: "/var/run/kubernetes"
指定 TLS 认证文件所在的目录(默认值:/var/run/kubernetes)。如果设定了 --tls-cert-file 和 --tls-private-key-file,则忽略该参数。
--client-ca-file string
如果设定了该参数,则任何带客户端证书的请求,即包含被该文件中任何一个授权方签过名的证书的请求,都使用客户端证书中的 CommonName 作为该请求的身份。
--cloud-config string
指定云服务提供商的配置文件。若留空则表示没有配置文件。
--cloud-provider string
指定云服务提供商。若留空则表示没有云服务提供商。
--contention-profiling
若启用 profiling 分析,则该参数将指定是否用锁争用 profiling 分析。
--cors-allowed-origins stringSlice
设定允许跨域资源共享(CORS)的域列表,以逗号分隔。可用正则表达式支持匹配子域。若该列表为空则禁用跨域资源共享。
--default-watch-cache-size int     Default: 100
指定默认 watch 缓存大小(默认值:100)。若设为 0,则没有设定默认 watch 大小的资源将禁用 watch 缓存。
--delete-collection-workers int     Default: 1
指定调用 DeleteCollection 时产生的 worker 数量(默认值:1),用于加速命名空间的清理。
--deserialization-cache-size int
指定用于缓存反序列化 json 对象的内存大小。
--disable-admission-plugins stringSlice
设定禁用的权限相关的插件的列表,默认启用的插件列表中的插件也可禁用,以逗号分隔。该列表中的顺序不影响结果。所有列表项包括 AlwaysAdmit、AlwaysDeny、AlwaysPullImages、DefaultStorageClass、DefaultTolerationSeconds、DenyEscalatingExec、DenyExecOnPrivileged、EventRateLimit、ExtendedResourceToleration、ImagePolicyWebhook、Initializers、LimitPodHardAntiAffinityTopology、LimitRanger、MutatingAdmissionWebhook、NamespaceAutoProvision、NamespaceExists、NamespaceLifecycle、NodeRestriction、OwnerReferencesPermissionEnforcement、PersistentVolumeClaimResize、PersistentVolumeLabel、PodNodeSelector、PodPreset、PodSecurityPolicy、PodTolerationRestriction、Priority、ResourceQuota、SecurityContextDeny、ServiceAccount、StorageObjectInUseProtection、ValidatingAdmissionWebhook。其中默认启用的插件包括 NamespaceLifecycle、LimitRanger、ServiceAccount、Priority、DefaultTolerationSeconds、DefaultStorageClass、PersistentVolumeClaimResize、MutatingAdmissionWebhook、ValidatingAdmissionWebhook、ResourceQuota。
--enable-admission-plugins stringSlice
设定启用的权限相关的插件的列表,以逗号分隔。该列表中的插件顺序不影响结果。该列表中的插件会与默认启用的插件一起启用。
--enable-aggregator-routing
设定是否打开聚合路由请求到 endpoint IP,而非集群 IP。
--enable-bootstrap-token-auth
设定是否允许 kube-system 命名空间中的 bootstrap.kubernetes.io/token 类型用作 TLS bootstrapping 验证。
--enable-garbage-collector     Default: true
设定是否启用通用垃圾收集器(默认值:true)。该参数必须与 kube-controller-manager 的对应参数保持一致。
--enable-logs-handler     Default: true
如果该参数设为 true,则 API 服务器会使用 /logs 地址来处理日志(默认值:true)。
--enable-swagger-ui
设定是否在 /swagger-ui 地址中启用 swagger ui。
--endpoint-reconciler-type string     Default: "lease"
设置启用的终端协调器(可选:master-count、lease、none,默认:lease)。
--etcd-cafile string
设定用于保证 etcd 通信安全的 SSL 证书颁发机构的证书文件(CA 证书)。
--etcd-certfile string
设定用于保证 etcd 通信安全的 SSL 证书文件(由 CA 颁发的证书)。
--etcd-compaction-interval duration     Default: 5m0s
设定压缩请求的间隔(默认值:5m0s)。若设为 0,则 API 服务器将禁用压缩请求。
--etcd-count-metric-poll-period duration     Default: 1m0s
设置向 etcd 轮询获取每种资源剩余情况的时间。设定为 0 表示禁用收集资源信息。
--etcd-keyfile string
设置用于保证 etcd 通信安全的 SSL 密钥文件(与 --etcd-certfile 对应的密钥)。
--etcd-prefix string     Default: "/registry"
设置 etcd 中所有资源路径的前缀(默认值:/registry)。
--etcd-servers stringSlice
指定要连接的 etcd 服务器列表(格式:scheme://ip:port),以逗号分隔。
--etcd-servers-overrides stringSlice
指定 etcd 服务器需要覆盖的资源,以逗号分隔。每个独立的格式为 group/resource#servers,其中 servers 为多个URL,以分号分隔。
--event-ttl duration     Default: 1h0m0s
设定事件的保存时间(默认值:1h0m0s)。
--experimental-encryption-provider-config string
设定包含加密程序的配置文件路径,用于设定在 etcd 中如何加密存储数据。
--external-hostname string
设定该 master 节点创建集群时使用外部 URL 需要用的主机名(如 Swagger API 文档的 URL)。
--feature-gates mapStringBool
用于描述 alpha/experimental 特性的功能的一组键值对。包括:
APIListChunking=true|false (BETA - default=true)
APIResponseCompression=true|false (ALPHA - default=false)
AllAlpha=true|false (ALPHA - default=false)
AppArmor=true|false (BETA - default=true)
AttachVolumeLimit=true|false (BETA - default=false)
BalanceAttachedNodeVolumes=true|false (ALPHA - default=false)
BlockVolume=true|false (ALPHA - default=false)
CPUManager=true|false (BETA - default=true)
CRIContainerLogRotation=true|false (BETA - default=true)
CSIBlockVolume=true|false (ALPHA - default=false)
CSIDriverRegistry=true|false (ALPHA - default=false)
CSINodeInfo=true|false (ALPHA - default=false)
CSIPersistentVolume=true|false (BETA - default=true)
CustomCPUCFSQuotaPeriod=true|false (ALPHA - default=false)
CustomPodDNS=true|false (BETA - default=true)
CustomResourceSubresources=true|false (BETA - default=true)
CustomResourceValidation=true|false (BETA - default=true)
DebugContainers=true|false (ALPHA - default=false)
DevicePlugins=true|false (BETA - default=true)
DryRun=true|false (ALPHA - default=false)
DynamicKubeletConfig=true|false (BETA - default=true)
EnableEquivalenceClassCache=true|false (ALPHA - default=false)
ExpandInUsePersistentVolumes=true|false (ALPHA - default=false)
ExpandPersistentVolumes=true|false (BETA - default=true)
ExperimentalCriticalPodAnnotation=true|false (ALPHA - default=false)
ExperimentalHostUserNamespaceDefaulting=true|false (BETA - default=false)
GCERegionalPersistentDisk=true|false (BETA - default=true)
HugePages=true|false (BETA - default=true)
HyperVContainer=true|false (ALPHA - default=false)
Initializers=true|false (ALPHA - default=false)
KubeletPluginsWatcher=true|false (BETA - default=true)
LocalStorageCapacityIsolation=true|false (BETA - default=true)
MountContainers=true|false (ALPHA - default=false)
NodeLease=true|false (ALPHA - default=false)
PersistentLocalVolumes=true|false (BETA - default=true)
PodPriority=true|false (BETA - default=true)
PodReadinessGates=true|false (BETA - default=true)
PodShareProcessNamespace=true|false (BETA - default=true)
ProcMountType=true|false (ALPHA - default=false)
QOSReserved=true|false (ALPHA - default=false)
ResourceLimitsPriorityFunction=true|false (ALPHA - default=false)
ResourceQuotaScopeSelectors=true|false (BETA - default=true)
RotateKubeletClientCertificate=true|false (BETA - default=true)
RotateKubeletServerCertificate=true|false (BETA - default=true)
RunAsGroup=true|false (ALPHA - default=false)
RuntimeClass=true|false (ALPHA - default=false)
SCTPSupport=true|false (ALPHA - default=false)
ScheduleDaemonSetPods=true|false (BETA - default=true)
ServiceNodeExclusion=true|false (ALPHA - default=false)
StreamingProxyRedirects=true|false (BETA - default=true)
SupportPodPidsLimit=true|false (ALPHA - default=false)
Sysctls=true|false (BETA - default=true)
TTLAfterFinished=true|false (ALPHA - default=false)
TaintBasedEvictions=true|false (ALPHA - default=false)
TaintNodesByCondition=true|false (BETA - default=true)
TokenRequest=true|false (BETA - default=true)
TokenRequestProjection=true|false (BETA - default=true)
VolumeScheduling=true|false (BETA - default=true)
VolumeSnapshotDataSource=true|false (ALPHA - default=false)
VolumeSubpathEnvExpansion=true|false (ALPHA - default=false)
-h, --help
打印 kube-apiserver 帮助。
--http2-max-streams-per-connection int
设定 HTTP/2 连接中流的最大数量限制。设定为 0 则使用 golang 的默认配置。
--kubelet-certificate-authority string
指定用于 kubelet CA 认证的证书文件路径。
--kubelet-client-certificate string
指定用于 TLS 的客户端证书。
--kubelet-client-key string
指定用于 TLS 的客户端密钥。
--kubelet-https     Default: true
设定是否在 kubelet 连接中使用 HTTPS。
--kubelet-preferred-address-types stringSlice     Default: [Hostname,InternalDNS,InternalIP,ExternalDNS,ExternalIP]
指定用于 kubelet 连接的首选 NodeAddressTypes 列表(默认值:[Hostname,InternalDNS,InternalIP,ExternalDNS,ExternalIP])。
--kubelet-read-only-port uint     Default: 10255
(已弃用)设定 kubelet 端口(默认值:10255)。
--kubelet-timeout duration     Default: 5s
设定 kubelet 操作的超时时间(默认值:5s)。
--kubernetes-service-node-port int
如果该参数设为非 0 值,则 Kubernetes master 服务(由 API 服务器创建和维护)将是 NodePort 类型,以该值作为端口。该值为 0 时,则 Kubernetes master 服务将是 ClusterIP 类型。
--log-flush-frequency duration     Default: 5s
设定日志刷新的最大间隔(默认值:5s)。
--master-service-namespace string     Default: "default"
(已弃用)设定 Kubernetes master 服务插入 pods 的命名空间(默认值:default)。
--max-connection-bytes-per-sec int
如果该参数设为非 0 值,则将用户连接每秒的比特数阈值设置为该值。目前该参数只应用在耗时请求中。
--max-mutating-requests-inflight int     Default: 200
设定给定时间内未响应的“修改类”请求的最大数量(默认值:200)。当请求数量超过该值时,服务器将拒绝新的请求。设定为 0 则代表无限制。
--max-requests-inflight int     Default: 400
设定给定时间内未响应的“非修改类”请求的最大数量(默认值:400)。当请求数量超过该值时,服务器将拒绝新的请求。设定为 0 则代表无限制。
--min-request-timeout int     Default: 1800
指定控制器在请求超时前,保持它的连接状态的最小秒数(默认值:1800)。目前该参数只有 watch 请求控制器生效,它选择一个随机值作为连接超时时间,用来分配负载。
--oidc-ca-file string
如果指定了该参数,则 OpenID 服务器的证书会使用该文件中的一个认证方进行验证,否则使用该主机的根证书进行验证。
--oidc-client-id string
设置 OpenID Connect 的客户端 ID。如果设定了 --oidc-issuer-url 参数,则该参数必须指定。
--oidc-groups-claim string
如果指定了该参数,则一个自定义的 OpenID Connect 将以它的名字声明指定的用户组。该声明的值应该为一个字符串或字符串数组。该参数为实验性参数,请参考权限文档获取更多信息。
--oidc-groups-prefix string
如果指定了该参数,则所有组将以该值作为前缀,以防止和其他的认证策略冲突。
--oidc-issuer-url string
设定 OpenID 发布者的 URL(仅接受 HTTPS)。如果设定了该参数,则它会被用来验证 OIDC JSON Web Token。
--oidc-required-claim mapStringString
设定一组描述 ID Token 中所需的声明的键值对。如果设定了该参数,则该声明将被用来验证 ID Token 中对应值是否存在。如果有多个声明则重复使用该参数。
--oidc-signing-algs stringSlice     Default: [RS256]
设定允许的 JOSE 非对称签名算法列表,用逗号分隔。alg header 的值不在此列表中的 JWT 将被拒绝。所有的值都通过 RFC 7518 定义(参见 https://tools.ietf.org/html/rfc7518#section-3.1)。
--oidc-username-claim string     Default: "sub"
设定作为用户名使用的 OpenID 声明。注意默认声明('sub')以外的声明不能保证唯一性和不变性。该参数为实验性参数,请参考权限文档获取更多信息。
--oidc-username-prefix string
如果指定了该参数,则所有的用户名将以该值作为前缀。如果不指定,则邮箱以外的用户名将使用发布者的 URL 作为前缀以防止冲突。如果不想指定任何前缀,则可将该参数设为 "-"。
--profiling     Default: true
指定是否在 /debug/pprof 网络接口中启用 web 服务状态分析(默认值:true)。
--proxy-client-cert-file string
设定用于在发送请求时证明 aggregator 或 kube-apiserver 身份的客户端证书,包括代理向用户 api 服务器发送的请求和发送到 webhook 权限插件的请求。该证书包含从 --requestheader-client-ca-file 中 CA 的签名。该 CA 被发布在 kube-system 命名空间中的 extension-apiserver-authentication 配置项中。接收 kube-aggregator 请求的组件必须向该 CA 提供双向 TLS 认证中它们的那部分证书。
--proxy-client-key-file string
设定用于在发送请求时证明 aggregator 或 kube-apiserver 身份的客户端私钥,包括代理向用户 api 服务器发送的请求和发送到 webhook 权限插件的请求。
--request-timeout duration     Default: 1m0s
该可选参数表示控制器在请求超时前,保持它的连接状态的最小秒数(默认值:1m0s)。该参数是请求的默认超时时间,但处理特定类型的请求时可使用 --min-request-timeout 等参数覆盖。
--requestheader-allowed-names stringSlice
指定客户端证书的 common names 列表,用来提供 --requestheader-username-headers 中特定头部的用户名。如果忽略该参数,则 --requestheader-client-ca-file 中认证方验证过的所有客户端证书都可用。
--requestheader-client-ca-file string
指定在信任 --requestheader-username-headers 中特定头部的用户名之前,用来验证请求中客户端证书的根证书集合。警告:通常不要依赖请求中已完成的授权。
--requestheader-extra-headers-prefix stringSlice
指定用于检查的请求头部的前缀。建议使用 "X-Remote-Extra-"。
--requestheader-group-headers stringSlice
指定用于检查的请求头部。建议使用 X-Remote-Group。
--requestheader-username-headers stringSlice
设定请求头部的用户名列表,通常设为 X-Remote-User。
--runtime-config mapStringString
指定一组用来描述运行时配置的键值对,它们会被传递到 API 服务器中。<group>/<version> 键可以用来打开或关闭特定的 API 版本(core 组则直接使用 <version>)。api/all 是用来控制所有 API 版本的特殊键,将它设置成 false 必须谨慎,除非你知道你在做什么。api/legacy 已被弃用,我们将来会删除它,所以不要使用该键。
--secure-port int     Default: 6443
设定用于提供 HTTPS 认证和授权服务的端口(默认值:6443)。该端口不能设成 0 来关闭。
--service-account-api-audiences stringSlice
指定 API 识别码。服务账户标识授权方将验证这些针对 API 使用的标识是否被绑定到至少一个受众中。
--service-account-issuer string
指定服务账户标识发布者的识别码。该发布者将断言该识别码在已发布标识的 "iss" 声明中。该参数是一个字符串或 URI。
--service-account-key-file stringArray
指定包含 PEM 编码的 X509 RSA 或 ECDSA 私钥或公钥的文件,用来验证 ServiceAccount 标识。该文件可用包含多个密钥,该参数也可用指定多次,来包含不同的文件。如果不指定该参数,则使用 --tls-private-key-file。当 --service-account-signing-key-file 指定时该参数必须指定。
--service-account-lookup     Default: true
如果该参数设为 true,则验证 etcd 中的 ServiceAccount 标识,作为授权的一部分(默认值:true)。
--service-account-max-token-expiration duration
设定服务账户发布者创建的标识的最大有效期。如果请求中包含一个有效的 TokenRequest,它的有效期大于该值,则会发布一个有效期为该值的标识。
--service-account-signing-key-file string
设定包含服务账户标识发布者当前的私钥的文件。该发布者将使用该私钥对 ID 标识进行签名(需要在 --feature-gates 参数中启用 TokenRequest)。
--service-cluster-ip-range ipNet     Default: 10.0.0.0/24
设定一个无类别域间路由记号 IP 网段,用来分配服务集群的 IP(默认值:10.0.0.0/24)。该网段不能与已分配到 pod 节点的网段重叠。
--service-node-port-range portRange     Default: 30000-32767
设定一个端口的范围,用来保留 NodePort 可见的服务(默认值:30000-32767)。两端均包含在内。
--storage-backend string
设定用于持久化的存储后端(默认值:etcd3,可选:etcd2)。
--storage-media-type string     Default: "application/vnd.kubernetes.protobuf"
设置用来在存储器中存储对象的介质类型(默认值:application/vnd.kubernetes.protobuf)。一些资源或存储后端可能只支持特定类型的存储介质,它们将忽略该参数设定。
--target-ram-mb int
设定 API 服务器的内存大小限制(单位:MB),用于配置缓存大小等。
--tls-cert-file string
设定 HTTPS 中包含默认 X509 证书的文件。该文件包含服务器证书。如果还有 CA 证书,则 CA 证书紧接服务器证书。如果启用 HTTPS 服务,但未指定 --tls-cert-file 和 --tls-private-key-file,则服务器会为公共地址产生一个自签名证书和密钥,然后将它们存在 --cert-dir 参数的值对应的目录下。
--tls-cipher-suites stringSlice
设置服务器的加密套件列表,用逗号分隔。如果忽略该参数,服务器将使用 Go 默认的加密套件。可选的值为: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA、TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256、TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256、TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA、TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384、TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305、TLS_ECDHE_ECDSA_WITH_RC4_128_SHA、TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA、TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA、TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256、TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256、TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA、TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384、TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305、TLS_ECDHE_RSA_WITH_RC4_128_SHA、TLS_RSA_WITH_3DES_EDE_CBC_SHA、TLS_RSA_WITH_AES_128_CBC_SHA、TLS_RSA_WITH_AES_128_CBC_SHA256、TLS_RSA_WITH_AES_128_GCM_SHA256、TLS_RSA_WITH_AES_256_CBC_SHA、TLS_RSA_WITH_AES_256_GCM_SHA384、TLS_RSA_WITH_RC4_128_SHA。
--tls-min-version string
设置最小支持的 TLS 版本。可选的值为:VersionTLS10、VersionTLS11、VersionTLS12。
--tls-private-key-file string
设定包含与 --tls-cert-file 对应的 X509 私钥的文件。
--tls-sni-cert-key namedCertKey     Default: []
设定一对 X509 证书和私钥的文件路径。该路径可能会带有一个域模式列表的后缀,这些域模式是一些完全可信的域名;也可能带有通配符段的前缀。如果不指定任何域模式,则证书中的名字将被提取作为域模式。非通配符匹配将覆盖通配符匹配,显式指定的域模式将覆盖提取的域模式。如果有多个密钥证书对,则可多次指定该参数(例:example.crt,example.key 或 foo.crt,foo.key:*.foo.com,foo.com)。
--token-auth-file string
如果指定了该参数,则该文件将被用来在 token 认证时保证 API 服务器安全端口的安全。
--version version[=true]
打印版本信息然后退出。
--watch-cache     Default: true
设定是否允许 API 服务器进行 watch 缓存。
--watch-cache-sizes stringSlice
设定每种资源(pods、nodes 等)的 watch 缓存大小,用逗号分隔。每个独立的格式为:resource[.group]#size,其中 resource 为复数形式小写,不包含版本号;group 为可选值;size 为一个数,当 --watch-cache 启用时生效。有些资源(replicationcontrollers、endpoints、nodes、pods、services、apiservices.apiregistration.k8s.io)会使用启发式的系统默认设置,其他资源则默认使用 --default-watch-cache-size 的值。

反馈