From 9bf6009431a9908b19b5e9cc296c7b38711c3514 Mon Sep 17 00:00:00 2001 From: Hao Yuan Date: Wed, 2 Dec 2020 15:18:01 +0800 Subject: [PATCH] sync command-line-tools reference of kube-apiserver --- .../kube-apiserver.md | 2858 +++++++++++++++-- 1 file changed, 2640 insertions(+), 218 deletions(-) diff --git a/content/zh/docs/reference/command-line-tools-reference/kube-apiserver.md b/content/zh/docs/reference/command-line-tools-reference/kube-apiserver.md index 4acc57c7c9..c871a3dc4f 100644 --- a/content/zh/docs/reference/command-line-tools-reference/kube-apiserver.md +++ b/content/zh/docs/reference/command-line-tools-reference/kube-apiserver.md @@ -1,227 +1,2649 @@ --- title: kube-apiserver -notitle: true +content_type: tool-reference +weight: 30 --- -## kube-apiserver +## {{% heading "synopsis" %}} - -### 概要 - - -Kubernetes API server 为 api 对象验证并配置数据,包括 pods、 services、 replicationcontrollers 和其它 api 对象。API Server 提供 REST 操作和到集群共享状态的前端,所有其他组件通过它进行交互。 + +Kubernetes API 服务器验证并配置 API 对象的数据, +这些对象包括 pods、services、replicationcontrollers 等。 +API 服务器为 REST 操作提供服务,并为集群的共享状态提供前端, +所有其他组件都通过该前端进行交互。 ``` -kube-apiserver +kube-apiserver [flags] ``` -### 选项 -``` - - --admission-control stringSlice 控制资源进入集群的准入控制插件的顺序列表。逗号分隔的 NamespaceLifecycle 列表。(默认值 [AlwaysAdmit]) - - --admission-control-config-file string 包含准入控制配置的文件。 - - --advertise-address ip 向集群成员通知 apiserver 消息的 IP 地址。这个地址必须能够被集群中其他成员访问。如果 IP 地址为空,将会使用 --bind-address,如果未指定 --bind-address,将会使用主机的默认接口地址。 - - --allow-privileged 如果为 true, 将允许特权容器。 - - --anonymous-auth 启用到 API server 的安全端口的匿名请求。未被其他认证方法拒绝的请求被当做匿名请求。匿名请求的用户名为 system:anonymous,用户组名为 system:unauthenticated。(默认值 true) - - --apiserver-count int 集群中运行的 apiserver 数量,必须为正数。(默认值 1) - - --audit-log-maxage int 基于文件名中的时间戳,旧审计日志文件的最长保留天数。 - - --audit-log-maxbackup int 旧审计日志文件的最大保留个数。 - - --audit-log-maxsize int 审计日志被轮转前的最大兆字节数。 - - --audit-log-path string 如果设置该值,所有到 apiserver 的请求都将会被记录到这个文件。'-' 表示记录到标准输出。 - - --audit-policy-file string 定义审计策略配置的文件的路径。需要打开 'AdvancedAuditing' 特性开关。AdvancedAuditing 需要一个配置来启用审计功能。 - - --audit-webhook-config-file string 一个具有 kubeconfig 格式文件的路径,该文件定义了审计的 webhook 配置。需要打开 'AdvancedAuditing' 特性开关。 - - --audit-webhook-mode string 发送审计事件的策略。 Blocking 模式表示正在发送事件时应该阻塞服务器的响应。 Batch 模式使 webhook 异步缓存和发送事件。 Known 模式为 batch,blocking。(默认值 "batch") - - --authentication-token-webhook-cache-ttl duration 从 webhook 令牌认证者获取的响应的缓存时长。( 默认值 2m0s) - - --authentication-token-webhook-config-file string 包含 webhook 配置的文件,用于令牌认证,具有 kubeconfig 格式。API server 将查询远程服务来决定对 bearer 令牌的认证。 - - --authorization-mode string 在安全端口上进行权限验证的插件的顺序列表。以逗号分隔的列表,包括:AlwaysAllow,AlwaysDeny,ABAC,Webhook,RBAC,Node.(默认值 "AlwaysAllow") - - --authorization-policy-file string 包含权限验证策略的 csv 文件,和 --authorization-mode=ABAC 一起使用,作用在安全端口上。 - - --authorization-webhook-cache-authorized-ttl duration 从 webhook 授权者获得的 'authorized' 响应的缓存时长。(默认值 5m0s) - - --authorization-webhook-cache-unauthorized-ttl duration 从 webhook 授权者获得的 'unauthorized' 响应的缓存时长。(默认值 30s) - - --authorization-webhook-config-file string 包含 webhook 配置的 kubeconfig 格式文件,和 --authorization-mode=Webhook 一起使用。API server 将查询远程服务来决定对 API server 安全端口的访问。 - - --azure-container-registry-config string 包含 Azure 容器注册表配置信息的文件的路径。 - - --bind-address ip 监听 --seure-port 的 IP 地址。被关联的接口必须能够被集群其它节点和 CLI/web 客户端访问。如果为空,则将使用所有接口(0.0.0.0)。(默认值 0.0.0.0) - - --cert-dir string 存放 TLS 证书的目录。如果提供了 --tls-cert-file 和 --tls-private-key-file 选项,该标志将被忽略。(默认值 "/var/run/kubernetes") - - --client-ca-file string 如果设置此标志,对于任何请求,如果存包含 client-ca-file 中的 authorities 签名的客户端证书,将会使用客户端证书中的 CommonName 对应的身份进行认证。 - - --cloud-config string 云服务提供商配置文件路径。空字符串表示无配置文件 . - - --cloud-provider string 云服务提供商,空字符串表示无提供商。 - - --contention-profiling 如果已经启用 profiling,则启用锁竞争 profiling。 - - --cors-allowed-origins stringSlice CORS 的域列表,以逗号分隔。合法的域可以是一个匹配子域名的正则表达式。如果这个列表为空则不会启用 CORS. - - --delete-collection-workers int 用于 DeleteCollection 调用的工作者数量。这被用于加速 namespace 的清理。( 默认值 1) - - --deserialization-cache-size int 在内存中缓存的反序列化 json 对象的数量。 - - --enable-aggregator-routing 打开到 endpoints IP 的 aggregator 路由请求,替换 cluster IP。 - - --enable-garbage-collector 启用通用垃圾回收器 . 必须与 kube-controller-manager 对应的标志保持同步。 (默认值 true) - - --enable-logs-handler 如果为 true,则为 apiserver 日志功能安装一个 /logs 处理器。(默认值 true) - - --enable-swagger-ui 在 apiserver 的 /swagger-ui 路径启用 swagger ui。 - - --etcd-cafile string 用于保护 etcd 通信的 SSL CA 文件。 - - --etcd-certfile string 用于保护 etcd 通信的的 SSL 证书文件。 - - --etcd-keyfile string 用于保护 etcd 通信的 SSL 密钥文件 . - - --etcd-prefix string 附加到所有 etcd 中资源路径的前缀。 (默认值 "/registry") - - --etcd-quorum-read 如果为 true, 启用 quorum 读。 - - --etcd-servers stringSlice 连接的 etcd 服务器列表 , 形式为(scheme://ip:port),使用逗号分隔。 - - --etcd-servers-overrides stringSlice 针对单个资源的 etcd 服务器覆盖配置 , 以逗号分隔。 单个配置覆盖格式为 : group/resource#servers, 其中 servers 形式为 http://ip:port, 以分号分隔。 - - --event-ttl duration 事件驻留时间。(默认值 1h0m0s) - - --enable-bootstrap-token-auth 启用此选项以允许 'kube-system' 命名空间中的 'bootstrap.kubernetes.io/token' 类型密钥可以被用于 TLS 的启动认证。 - - --experimental-encryption-provider-config string 包含加密提供程序的配置的文件,该加密提供程序被用于在 etcd 中保存密钥。 - - --external-hostname string 为此 master 生成外部 URL 时使用的主机名 ( 例如 Swagger API 文档 )。 - - --feature-gates mapStringBool 一个描述 alpha/experimental 特性开关的键值对列表。 选项包括 : -Accelerators=true|false (ALPHA - default=false) -AdvancedAuditing=true|false (ALPHA - default=false) -AffinityInAnnotations=true|false (ALPHA - default=false) -AllAlpha=true|false (ALPHA - default=false) -AllowExtTrafficLocalEndpoints=true|false (default=true) -AppArmor=true|false (BETA - default=true) -DynamicKubeletConfig=true|false (ALPHA - default=false) -DynamicVolumeProvisioning=true|false (ALPHA - default=true) -ExperimentalCriticalPodAnnotation=true|false (ALPHA - default=false) -ExperimentalHostUserNamespaceDefaulting=true|false (BETA - default=false) -LocalStorageCapacityIsolation=true|false (ALPHA - default=false) -PersistentLocalVolumes=true|false (ALPHA - default=false) -RotateKubeletClientCertificate=true|false (ALPHA - default=false) -RotateKubeletServerCertificate=true|false (ALPHA - default=false) -StreamingProxyRedirects=true|false (BETA - default=true) -TaintBasedEvictions=true|false (ALPHA - default=false) - - --google-json-key string 用于认证的 Google Cloud Platform 服务账号的 JSON 密钥。 - - --insecure-allow-any-token username/group1,group2 如果设置该值 , 你的服务将处于非安全状态。任何令牌都将会被允许,并将从令牌中把用户信息解析成为 username/group1,group2。 - - --insecure-bind-address ip 用于监听 --insecure-port 的 IP 地址 ( 设置成 0.0.0.0 表示监听所有接口 )。(默认值 127.0.0.1) - - --insecure-port int 用于监听不安全和为认证访问的端口。这个配置假设你已经设置了防火墙规则,使得这个端口不能从集群外访问。对集群的公共地址的 443 端口的访问将被代理到这个端口。默认设置中使用 nginx 实现。(默认值 8080) - - --kubelet-certificate-authority string 证书 authority 的文件路径。 - - --kubelet-client-certificate string 用于 TLS 的客户端证书文件路径。 - - --kubelet-client-key string 用于 TLS 的客户端证书密钥文件路径 . - - --kubelet-https 为 kubelet 启用 https。 (默认值 true) - - --kubelet-preferred-address-types stringSlice 用于 kubelet 连接的首选 NodeAddressTypes 列表。 ( 默认值[Hostname,InternalDNS,InternalIP,ExternalDNS,ExternalIP]) - - --kubelet-read-only-port uint 已废弃 : kubelet 端口 . (默认值 10255) - - --kubelet-timeout duration kubelet 操作超时时间。(默认值 - 5s) - - --kubernetes-service-node-port int 如果不为 0,Kubernetes master 服务(用于创建 / 管理 apiserver)将会使用 NodePort 类型,并将这个值作为端口号。如果为 0,Kubernetes master 服务将会使用 ClusterIP 类型。 - - --master-service-namespace string 已废弃 : 注入到 pod 中的 kubernetes master 服务的命名空间。(默认值 "default") - - --max-connection-bytes-per-sec int 如果不为 0,每个用户连接将会被限速为该值(bytes/sec)。当前只应用于长时间运行的请求。 - - --max-mutating-requests-inflight int 在给定时间内进行中可变请求的最大数量。当超过该值时,服务将拒绝所有请求。0 值表示没有限制。(默认值 200) - - --max-requests-inflight int 在给定时间内进行中不可变请求的最大数量。当超过该值时,服务将拒绝所有请求。0 值表示没有限制。(默认值 400) - - --min-request-timeout int 一个可选字段,表示一个 handler 在一个请求超时前,必须保持它处于打开状态的最小秒数。当前只对监听请求 handler 有效,它基于这个值选择一个随机数作为连接超时值,以达到分散负载的目的(默认值 1800)。 - - --oidc-ca-file string 如果设置该值,将会使用 oidc-ca-file 中的任意一个 authority 对 OpenID 服务的证书进行验证,否则将会使用主机的根 CA 对其进行验证。 - - --oidc-client-id string 使用 OpenID 连接的客户端的 ID,如果设置了 oidc-issuer-url,则必须设置这个值。 - - --oidc-groups-claim string 如果提供该值,这个自定义 OpenID 连接名将指定给特定的用户组。该声明值需要是一个字符串或字符串数组。此标志为实验性的,请查阅验证相关文档进一步了解详细信息。 - - --oidc-issuer-url string OpenID 颁发者 URL,只接受 HTTPS 方案。如果设置该值,它将被用于验证 OIDC JSON Web Token(JWT)。 - - --oidc-username-claim string 用作用户名的 OpenID 声明值。注意,不保证除默认 ('sub') 外的其他声明值的唯一性和不变性。此标志为实验性的,请查阅验证相关文档进一步了解详细信息。 - - --profiling 在 web 接口 host:port/debug/pprof/ 上启用 profiling。(默认值 true) - - --proxy-client-cert-file string 当必须调用外部程序时,用于证明 aggregator 或者 kube-apiserver 的身份的客户端证书。包括代理到用户 api-server 的请求和调用 webhook 准入控制插件的请求。它期望这个证书包含一个来自于 CA 中的 --requestheader-client-ca-file 标记的签名。该 CA 在 kube-system 命名空间的 'extension-apiserver-authentication' configmap 中发布。从 Kube-aggregator 收到调用的组件应该使用该 CA 进行他们部分的双向 TLS 验证。 - - --proxy-client-key-file string 当必须调用外部程序时,用于证明 aggregator 或者 kube-apiserver 的身份的客户端证书密钥。包括代理到用户 api-server 的请求和调用 webhook 准入控制插件的请求。 - - --repair-malformed-updates 如果为 true,服务将会尽力修复更新请求以通过验证,例如:将更新请求 UID 的当前值设置为空。在我们修复了所有发送错误格式请求的客户端后,可以关闭这个标志。 - - --requestheader-allowed-names stringSlice 使用 --requestheader-username-headers 指定的,允许在头部提供用户名的客户端证书通用名称列表。如果为空,任何通过 --requestheader-client-ca-file 中 authorities 验证的客户端证书都是被允许的。 - - --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 传递给 apiserver 用于描述运行时配置的键值对集合。 apis/ 键可以被用来打开 / 关闭特定的 api 版本。apis// 键被用来打开 / 关闭特定的资源 . api/all 和 api/legacy 键分别用于控制所有的和遗留的 api 版本 . - - --secure-port int 用于监听具有认证授权功能的 HTTPS 协议的端口。如果为 0,则不会监听 HTTPS 协议。 (默认值 6443) - - --service-account-key-file stringArray 包含 PEM 加密的 x509 RSA 或 ECDSA 私钥或公钥的文件,用于验证 ServiceAccount 令牌。如果设置该值,--tls-private-key-file 将会被使用。指定的文件可以包含多个密钥,并且这个标志可以和不同的文件一起多次使用。 - - --service-cluster-ip-range ipNet CIDR 表示的 IP 范围,服务的 cluster ip 将从中分配。 一定不要和分配给 nodes 和 pods 的 IP 范围产生重叠。 - - --ssh-keyfile string 如果不为空,在使用安全的 SSH 代理访问节点时,将这个文件作为用户密钥文件。 - - --storage-backend string 持久化存储后端。 选项为 : 'etcd3' ( 默认 ), 'etcd2'. - - --storage-media-type string 在存储中保存对象的媒体类型。某些资源或者存储后端可能仅支持特定的媒体类型,并且忽略该配置项。(默认值 "application/vnd.kubernetes.protobuf") - - --storage-versions string 按组划分资源存储的版本。 以 "group1/version1,group2/version2,..." 的格式指定。当对象从一组移动到另一组时 , 你可以指定 "group1=group2/v1beta1,group3/v1beta1,..." 的格式。你只需要传入你希望从结果中改变的组的列表。默认为从 KUBE_API_VERSIONS 环境变量集成而来,所有注册组的首选版本列表。 (默认值 "admission.k8s.io/v1alpha1,admissionregistration.k8s.io/v1alpha1,apps/v1beta1,authentication.k8s.io/v1,authorization.k8s.io/v1,autoscaling/v1,batch/v1,certificates.k8s.io/v1beta1,componentconfig/v1alpha1,extensions/v1beta1,federation/v1beta1,imagepolicy.k8s.io/v1alpha1,networking.k8s.io/v1,policy/v1beta1,rbac.authorization.k8s.io/v1beta1,settings.k8s.io/v1alpha1,storage.k8s.io/v1,v1") - - --target-ram-mb int apiserver 内存限制,单位为 MB( 用于配置缓存大小等 )。 - - --tls-ca-file string 如果设置该值,这个证书 authority 将会被用于从 Admission Controllers 过来的安全访问。它必须是一个 PEM 加密的合法 CA 捆绑包。此外 , 该证书 authority 可以被添加到以 --tls-cert-file 提供的证书文件中 . - - --tls-cert-file string 包含用于 HTTPS 的默认 x509 证书的文件。(如果有 CA 证书,则附加于 server 证书之后)。如果启用了 HTTPS 服务,并且没有提供 --tls-cert-file 和 --tls-private-key-file,则将为公共地址生成一个自签名的证书和密钥并保存于 /var/run/kubernetes 目录。 - - --tls-private-key-file string 包含匹配 --tls-cert-file 的 x509 证书私钥的文件。 - - --tls-sni-cert-key namedCertKey 一对 x509 证书和私钥的文件路径 , 可以使用符合正式域名的域形式作为后缀。 如果没有提供域形式后缀 , 则将提取证书名。 非通配符版本优先于通配符版本 , 显示的域形式优先于证书中提取的名字。 对于多个密钥 / 证书对, 请多次使用 --tls-sni-cert-key。例如 : "example.crt,example.key" or "foo.crt,foo.key:*.foo.com,foo.com". (默认值[]) - - --token-auth-file string 如果设置该值,这个文件将被用于通过令牌认证来保护 API 服务的安全端口。 - - --version version[=true] 打印版本信息并退出。 - - --watch-cache 启用 apiserver 的监视缓存。(默认值 true) - - --watch-cache-sizes stringSlice 每种资源(pods, nodes 等)的监视缓存大小列表,以逗号分隔。每个缓存配置的形式为:resource#size,size 是一个数字。在 watch-cache 启用时生效。 -``` - -###### Auto generated by spf13/cobra on 11-Jul-2017 +## {{% heading "options" %}} + + ++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
--add-dir-header
+ +如果为 true,则将文件目录添加到日志消息的标题中 +
--admission-control-config-file string
+ +包含准入控制配置的文件。 +
--advertise-address ip
+ +向集群成员通知 apiserver 消息的 IP 地址。 +这个地址必须能够被集群中其他成员访问。 +如果 IP 地址为空,将会使用 --bind-address, +如果未指定 --bind-address,将会使用主机的默认接口地址。 +
--allow-privileged
+ +如果为 true, 将允许特权容器。[默认值=false] +
--alsologtostderr
+ +在向文件输出日志的同时,也将日志写到标准输出。 +
+ +--anonymous-auth     默认值:true +
+ +启用到 API server 的安全端口的匿名请求。 +未被其他认证方法拒绝的请求被当做匿名请求。 +匿名请求的用户名为 system:anonymous, +用户组名为 system:unauthenticated。 +
--api-audiences stringSlice
+ +API 的标识符。 +服务帐户令牌验证者将验证针对 API 使用的令牌是否已绑定到这些受众中的至少一个。 +如果配置了 --service-account-issuer 标志,但未配置此标志, +则此字段默认为包含发行者 URL 的单个元素列表。 +
+ +--apiserver-count int     默认值:1 +
+ +集群中运行的 apiserver 数量,必须为正数。 +(在启用 --endpoint-reconciler-type=master-count 时使用。) +
+ +--audit-log-batch-buffer-size int     默认值:10000 +
+ +批处理和写入之前用于存储事件的缓冲区大小。 +仅在批处理模式下使用。 +
+ +--audit-log-batch-max-size int     默认值:1 +
+ +批处理的最大大小。 仅在批处理模式下使用。 +
--audit-log-batch-max-wait duration
+ +强制写入尚未达到最大大小的批处理之前要等待的时间。 +仅在批处理模式下使用。 +
--audit-log-batch-throttle-burst int
+ +如果之前未使用 ThrottleQPS,则同时发送的最大请求数。 +仅在批处理模式下使用。 +
--audit-log-batch-throttle-enable
+ +是否启用了批量限制。 +仅在批处理模式下使用。 +
--audit-log-batch-throttle-qps float32
+ +每秒的最大平均批处理数。 +仅在批处理模式下使用。 +
+ +--audit-log-format string     默认值:"json" +
+ +所保存的审计格式。 +"legacy" 表示每行一个事件的文本格式。"json" 表示结构化的 JSON 格式。 +已知格式为 legacy,json。 +
--audit-log-maxage int
+ +根据文件名中编码的时间戳保留旧审计日志文件的最大天数。 +
--audit-log-maxbackup int
+ +保留的旧审计日志文件的最大数量。 +
--audit-log-maxsize int
+ +轮换之前,审计日志文件的最大大小(以兆字节为单位)。 +
+ +--audit-log-mode string     默认值:"blocking" +
+ +发送审计事件的策略。 +阻塞(blocking)表示发送事件应阻止服务器响应。 +批处理导致后端异步缓冲和写入事件。 +已知的模式是批处理(batch),阻塞(blocking),严格阻塞(blocking-strict)。 +
--audit-log-path string
+ +如果设置,则所有到达 apiserver 的请求都将记录到该文件中。 +"-" 表示标准输出。 +
--audit-log-truncate-enabled
+ +是否启用事件和批次截断。 +
+ +--audit-log-truncate-max-batch-size int     默认值:10485760 +
+ +发送到下层后端的批次的最大数据量。 +实际的序列化大小可能会增加数百个字节。 +如果一个批次超出此限制,则将其分成几个较小的批次。 +
+ +--audit-log-truncate-max-event-size int     默认值:102400 +
+ +发送到下层后端的批次的最大数据量。 +如果事件的大小大于此数字,则将删除第一个请求和响应, +并且没有减小足够大的程度,则将丢弃事件。 +
+ +--audit-log-version string     默认值:"audit.k8s.io/v1" +
+ +用于序列化写入日志的审计事件的 API 组和版本。 +
--audit-policy-file string
+ +定义审计策略配置的文件的路径。 +
+ +--audit-webhook-batch-buffer-size int     默认值:10000 +
+ +划分批次和写入之前用于存储事件的缓冲区大小。 +仅在批处理模式下使用。 +
+ +--audit-webhook-batch-max-size int     默认值:400 +
+ +批次的最大大小。 +仅在批处理模式下使用。 +
+ +--audit-webhook-batch-max-wait duration     默认值:30s +
+ +强制写入尚未达到最大大小的批处理之前要等待的时间。 +仅在批处理模式下使用。 +
+ +--audit-webhook-batch-throttle-burst int     默认值:15 +
+ +如果之前未使用 ThrottleQPS,则同时发送的最大请求数。 +仅在批处理模式下使用。 +
+ +--audit-webhook-batch-throttle-enable     默认值:true +
+ +是否启用了批量限制。 +仅在批处理模式下使用。 +
+ +--audit-webhook-batch-throttle-qps float32     默认值:10 +
+ +每秒的最大平均批次数。 +仅在批处理模式下使用。 +
--audit-webhook-config-file string
+ +定义审计 webhook 配置的 kubeconfig 格式文件的路径。 +
+ +--audit-webhook-initial-backoff duration     默认值:10s +
+ +重试第一个失败的请求之前要等待的时间。 +
+ +--audit-webhook-mode string     默认值:"batch" +
+ +发送审计事件的策略。 +阻止(Blocking)表示发送事件应阻止服务器响应。 +批处理导致后端异步缓冲和写入事件。 +已知的模式是批处理(batch),阻塞(blocking),严格阻塞(blocking-strict)。 +
--audit-webhook-truncate-enabled
+ +是否启用事件和批处理截断。 +
+ +--audit-webhook-truncate-max-batch-size int     默认值:10485760 +
+ +发送到下层后端的批次的最大数据量。 +实际的序列化大小可能会增加数百个字节。 +如果一个批次超出此限制,则将其分成几个较小的批次。 +
+ +--audit-webhook-truncate-max-event-size int     默认值:102400 +
+ +发送到下层后端的批次的最大数据量。 +如果事件的大小大于此数字,则将删除第一个请求和响应, +并且如果事件和事件的大小没有足够减小,则将丢弃事件。 +
+ +--audit-webhook-version string     默认值:"audit.k8s.io/v1" +
+ +用于序列化写入 Webhook 的审计事件的 API 组和版本。 +
+ +--authentication-token-webhook-cache-ttl duration     默认值:2m0s +
+ +来自 Webhook 令牌身份验证器的缓存响应的持续时间。 +
--authentication-token-webhook-config-file string
+ +包含 Webhook 配置的文件,用于以 kubeconfig 格式进行令牌认证。 +API 服务器将查询远程服务,以对持有者令牌进行身份验证。 +
+ +--authentication-token-webhook-version string     默认值:"v1beta1" +
+ +与 Webhook 之间交换 authentication.k8s.io TokenReview 时使用的 API 版本。 +
+ +--authorization-mode stringSlice     默认值:[AlwaysAllow] +
+ +在安全端口上进行鉴权的插件的顺序列表。 +逗号分隔的列表:AlwaysAllow,AlwaysDeny,ABAC,Webhook,RBAC,Node。 +
--authorization-policy-file string
+ +包含安全策略的文件,其内容为分行 JSON 格式, +在安全端口上与 --authorization-mode=ABAC 一起使用。 +
+ +--authorization-webhook-cache-authorized-ttl duration     默认值:5m0s +
+ +缓存来自 Webhook 鉴权组件的 “授权(authorized)” 响应的持续时间。 +
+ +--authorization-webhook-cache-unauthorized-ttl duration     默认值:30s +
+ +缓存来自 Webhook 鉴权模块的 “未授权(unauthorized)” 响应的持续时间。 +
--authorization-webhook-config-file string
+ +包含 Webhook 配置的文件,其格式为 kubeconfig, +与 --authorization-mode=Webhook 一起使用。 +API 服务器将查询远程服务,以对 API 服务器的安全端口的访问执行鉴权。 +
+ +--authorization-webhook-version string     默认值:"v1beta1" +
+ +与 Webhook 之间交换 authorization.k8s.io SubjectAccessReview 时使用的 API 版本。 +
--azure-container-registry-config string
+ +包含 Azure 容器仓库配置信息的文件的路径。 +
+ +--bind-address ip     默认值:0.0.0.0 +
+ +监听 --secure-port 端口的 IP 地址。 +集群的其余部分以及 CLI/web 客户端必须可以访问关联的接口。 +如果为空白或未指定地址(0.0.0.0 或 ::),则将使用所有接口。 +
+ +--cert-dir string     默认值:"/var/run/kubernetes" +
+ +TLS 证书所在的目录。 +如果提供了 --tls-cert-file 和 --tls-private-key-file,则将忽略此标志。 +
--client-ca-file string
+ +如果已设置,则使用与客户端证书的 CommonName 对应的标识对任何出示由 +client-ca 文件中的授权机构之一签名的客户端证书的请求进行身份验证。 +
--cloud-config string
+ +云厂商配置文件的路径。 +空字符串表示无配置文件。 +
--cloud-provider string
+ +云服务提供商。 +空字符串表示没有云厂商。 +
+ +--cloud-provider-gce-l7lb-src-cidrs cidrs     默认值:130.211.0.0/22,35.191.0.0/16 +
+ +在 GCE 防火墙中打开 CIDR,以进行 L7 LB 流量代理和运行状况检查 +
--contention-profiling
+ +如果启用了性能分析,则启用锁争用性能分析 +
--cors-allowed-origins stringSlice
+ +CORS 允许的来源清单,以逗号分隔。 +允许的来源可以是支持子域匹配的正则表达式。 +如果此列表为空,则不会启用 CORS。 +
+ +--default-not-ready-toleration-seconds int     默认值:300 +
+ +标明 notReady:NoExecute 的 tolerationSeconds, +默认情况下将其添加到尚未具有此容忍度的每个 pod 中。 +
+ +--default-unreachable-toleration-seconds int     默认值:300 +
+ +标明 unreachable:NoExecute 的 tolerationSeconds, +默认情况下将其添加到尚未具有此容忍度的每个 pod 中。 +
+ +--default-watch-cache-size int     默认值:100 +
+ +默认监听(watch)缓存大小。 +如果为零,则将为没有设置默认监视大小的资源禁用监视缓存。 +
+ +--delete-collection-workers int     默认值:1 +
+ +为 DeleteCollection 调用而产生的工作程序数。 +这些用于加速名字空间清理。 +
--disable-admission-plugins stringSlice
+ +尽管位于默认启用的插件列表中(NamespaceLifecycle、LimitRanger、ServiceAccount、TaintNodesByCondition、Priority、DefaultTolerationSeconds、DefaultStorageClass、StorageObjectInUseProtection、PersistentVolumeClaimResize、RuntimeClass、CertificateApproval、CertificateSigning、CertificateSubjectRestriction、DefaultIngressClass、MutatingAdmissionWebhook、ValidatingAdmissionWebhook、ResourceQuota)仍须被禁用的插件。 +
取值为逗号分隔的准入插件列表:AlwaysAdmit, AlwaysDeny, AlwaysPullImages, CertificateApproval, CertificateSigning, CertificateSubjectRestriction, DefaultIngressClass, DefaultStorageClass, DefaultTolerationSeconds, DenyEscalatingExec, DenyExecOnPrivileged, EventRateLimit, ExtendedResourceToleration, ImagePolicyWebhook, LimitPodHardAntiAffinityTopology, LimitRanger, MutatingAdmissionWebhook, NamespaceAutoProvision, NamespaceExists, NamespaceLifecycle, NodeRestriction, OwnerReferencesPermissionEnforcement, PersistentVolumeClaimResize, PersistentVolumeLabel, PodNodeSelector, PodPreset, PodSecurityPolicy, PodTolerationRestriction, Priority, ResourceQuota, RuntimeClass, SecurityContextDeny, ServiceAccount, StorageObjectInUseProtection, TaintNodesByCondition, ValidatingAdmissionWebhook。 +
该标志中插件的顺序无关紧要。 +
--egress-selector-config-file string
+ +带有 apiserver 出站选择器配置的文件。 +
--enable-admission-plugins stringSlice
+ +除了默认启用的插件(NamespaceLifecycle、LimitRanger、ServiceAccount、TaintNodesByCondition、Priority、DefaultTolerationSeconds、DefaultStorageClass、StorageObjectInUseProtection、PersistentVolumeClaimResize、RuntimeClass、CertificateApproval、CertificateSigning、CertificateSubjectRestriction、DefaultIngressClass、MutatingAdmissionWebhook、ValidatingAdmissionWebhook、ResourceQuota)之外要启用的插件 +
取值为逗号分隔的准入插件列表:AlwaysAdmit, AlwaysDeny, AlwaysPullImages, CertificateApproval, CertificateSigning, CertificateSubjectRestriction, DefaultIngressClass, DefaultStorageClass, DefaultTolerationSeconds, DenyEscalatingExec, DenyExecOnPrivileged, EventRateLimit, ExtendedResourceToleration, ImagePolicyWebhook, LimitPodHardAntiAffinityTopology, LimitRanger, MutatingAdmissionWebhook, NamespaceAutoProvision, NamespaceExists, NamespaceLifecycle, NodeRestriction, OwnerReferencesPermissionEnforcement, PersistentVolumeClaimResize, PersistentVolumeLabel, PodNodeSelector, PodPreset, PodSecurityPolicy, PodTolerationRestriction, Priority, ResourceQuota, RuntimeClass, SecurityContextDeny, ServiceAccount, StorageObjectInUseProtection, TaintNodesByCondition, ValidatingAdmissionWebhook +
该标志中插件的顺序无关紧要。 +
--enable-aggregator-routing
+ +允许聚合器将请求路由到端点 IP 而非集群 IP。 +
--enable-bootstrap-token-auth
+ +启用以允许将 "kube-system" 名字空间中类型为 "bootstrap.kubernetes.io/token" +的 Secret 用于 TLS 引导身份验证。 +
+ +--enable-garbage-collector     默认值:true +
+ +启用通用垃圾收集器。 +必须与 kube-controller-manager 的相应标志同步。 +
+ +--enable-priority-and-fairness     默认值:true +
+ +如果为 true 且启用了 APIPriorityAndFairness 特性门控, +请使用增强的处理程序替换 max-in-flight 处理程序, +以便根据优先级和公平性完成排队和调度。 +
--encryption-provider-config string
+ +包含加密提供程序配置信息的文件,用在 etcd 中所存储的 Secret 上。 +
+ +--endpoint-reconciler-type string     默认值:"lease" +
+ +使用端点协调器(master-count, lease, none) +
--etcd-cafile string
+ +用于保护 etcd 通信的 SSL 证书颁发机构文件。 +
--etcd-certfile string
+ +用于保护 etcd 通信的 SSL 证书文件。 +
+ +--etcd-compaction-interval duration     默认值:5m0s +
+ +压缩请求的间隔。 +如果为0,则禁用来自 apiserver 的压缩请求。 +
+ +--etcd-count-metric-poll-period duration     默认值:1m0s +
+ +针对每种类型的资源数量轮询 etcd 的频率。 +0 禁用度量值收集。 +
+ +--etcd-db-metric-poll-interval duration     默认值:30s +
+ +轮询 etcd 和更新度量值的请求间隔。 +0 禁用度量值收集 +
--etcd-keyfile string
+ +用于保护 etcd 通信的 SSL 密钥文件。 +
+ +--etcd-prefix string     默认值:"/registry" +
+ +要在 etcd 中所有资源路径之前添加的前缀。 +
--etcd-servers stringSlice
+ +要连接的 etcd 服务器列表(scheme://ip:port),以逗号分隔。 +
--etcd-servers-overrides stringSlice
+ +etcd 服务器针对每个资源的重载设置,以逗号分隔。 +单个替代格式:组/资源#服务器(group/resource#servers),其中服务器是 URL,以分号分隔。 +
+ +--event-ttl duration     默认值:1h0m0s +
+ +事件的保留时长。 +
--external-hostname string
+ +为此主机生成外部化 UR L时要使用的主机名(例如 Swagger API 文档或 OpenID 发现)。 +
--feature-gates mapStringBool
+ +一组 key=value 对,用来描述测试性/试验性功能的特性门控(Feature Gate)。可选项有: +
APIListChunking=true|false (BETA - 默认值=true) +
APIPriorityAndFairness=true|false (ALPHA - 默认值=false) +
APIResponseCompression=true|false (BETA - 默认值=true) +
AllAlpha=true|false (ALPHA - 默认值=false) +
AllBeta=true|false (BETA - 默认值=false) +
AllowInsecureBackendProxy=true|false (BETA - 默认值=true) +
AnyVolumeDataSource=true|false (ALPHA - 默认值=false) +
AppArmor=true|false (BETA - 默认值=true) +
BalanceAttachedNodeVolumes=true|false (ALPHA - 默认值=false) +
BoundServiceAccountTokenVolume=true|false (ALPHA - 默认值=false) +
CPUManager=true|false (BETA - 默认值=true) +
CRIContainerLogRotation=true|false (BETA - 默认值=true) +
CSIInlineVolume=true|false (BETA - 默认值=true) +
CSIMigration=true|false (BETA - 默认值=true) +
CSIMigrationAWS=true|false (BETA - 默认值=false) +
CSIMigrationAWSComplete=true|false (ALPHA - 默认值=false) +
CSIMigrationAzureDisk=true|false (BETA - 默认值=false) +
CSIMigrationAzureDiskComplete=true|false (ALPHA - 默认值=false) +
CSIMigrationAzureFile=true|false (ALPHA - 默认值=false) +
CSIMigrationAzureFileComplete=true|false (ALPHA - 默认值=false) +
CSIMigrationGCE=true|false (BETA - 默认值=false) +
CSIMigrationGCEComplete=true|false (ALPHA - 默认值=false) +
CSIMigrationOpenStack=true|false (BETA - 默认值=false) +
CSIMigrationOpenStackComplete=true|false (ALPHA - 默认值=false) +
CSIMigrationvSphere=true|false (BETA - 默认值=false) +
CSIMigrationvSphereComplete=true|false (BETA - 默认值=false) +
CSIStorageCapacity=true|false (ALPHA - 默认值=false) +
CSIVolumeFSGroupPolicy=true|false (ALPHA - 默认值=false) +
ConfigurableFSGroupPolicy=true|false (ALPHA - 默认值=false) +
CustomCPUCFSQuotaPeriod=true|false (ALPHA - 默认值=false) +
DefaultPodTopologySpread=true|false (ALPHA - 默认值=false) +
DevicePlugins=true|false (BETA - 默认值=true) +
DisableAcceleratorUsageMetrics=true|false (ALPHA - 默认值=false) +
DynamicKubeletConfig=true|false (BETA - 默认值=true) +
EndpointSlice=true|false (BETA - 默认值=true) +
EndpointSliceProxying=true|false (BETA - 默认值=true) +
EphemeralContainers=true|false (ALPHA - 默认值=false) +
ExpandCSIVolumes=true|false (BETA - 默认值=true) +
ExpandInUsePersistentVolumes=true|false (BETA - 默认值=true) +
ExpandPersistentVolumes=true|false (BETA - 默认值=true) +
ExperimentalHostUserNamespaceDefaulting=true|false (BETA - 默认值=false) +
GenericEphemeralVolume=true|false (ALPHA - 默认值=false) +
HPAScaleToZero=true|false (ALPHA - 默认值=false) +
HugePageStorageMediumSize=true|false (BETA - 默认值=true) +
HyperVContainer=true|false (ALPHA - 默认值=false) +
IPv6DualStack=true|false (ALPHA - 默认值=false) +
ImmutableEphemeralVolumes=true|false (BETA - 默认值=true) +
KubeletPodResources=true|false (BETA - 默认值=true) +
LegacyNodeRoleBehavior=true|false (BETA - 默认值=true) +
LocalStorageCapacityIsolation=true|false (BETA - 默认值=true) +
LocalStorageCapacityIsolationFSQuotaMonitoring=true|false (ALPHA - 默认值=false) +
NodeDisruptionExclusion=true|false (BETA - 默认值=true) +
NonPreemptingPriority=true|false (BETA - 默认值=true) +
PodDisruptionBudget=true|false (BETA - 默认值=true) +
PodOverhead=true|false (BETA - 默认值=true) +
ProcMountType=true|false (ALPHA - 默认值=false) +
QOSReserved=true|false (ALPHA - 默认值=false) +
RemainingItemCount=true|false (BETA - 默认值=true) +
RemoveSelfLink=true|false (ALPHA - 默认值=false) +
RotateKubeletServerCertificate=true|false (BETA - 默认值=true) +
RunAsGroup=true|false (BETA - 默认值=true) +
RuntimeClass=true|false (BETA - 默认值=true) +
SCTPSupport=true|false (BETA - 默认值=true) +
SelectorIndex=true|false (BETA - 默认值=true) +
ServerSideApply=true|false (BETA - 默认值=true) +
ServiceAccountIssuerDiscovery=true|false (ALPHA - 默认值=false) +
ServiceAppProtocol=true|false (BETA - 默认值=true) +
ServiceNodeExclusion=true|false (BETA - 默认值=true) +
ServiceTopology=true|false (ALPHA - 默认值=false) +
SetHostnameAsFQDN=true|false (ALPHA - 默认值=false) +
StartupProbe=true|false (BETA - 默认值=true) +
StorageVersionHash=true|false (BETA - 默认值=true) +
SupportNodePidsLimit=true|false (BETA - 默认值=true) +
SupportPodPidsLimit=true|false (BETA - 默认值=true) +
Sysctls=true|false (BETA - 默认值=true) +
TTLAfterFinished=true|false (ALPHA - 默认值=false) +
TokenRequest=true|false (BETA - 默认值=true) +
TokenRequestProjection=true|false (BETA - 默认值=true) +
TopologyManager=true|false (BETA - 默认值=true) +
ValidateProxyRedirects=true|false (BETA - 默认值=true) +
VolumeSnapshotDataSource=true|false (BETA - 默认值=true) +
WarningHeaders=true|false (BETA - 默认值=true) +
WinDSR=true|false (ALPHA - 默认值=false) +
WinOverlay=true|false (ALPHA - 默认值=false) +
WindowsEndpointSliceProxying=true|false (ALPHA - 默认值=false) +
--goaway-chance float
+ +为防止 HTTP/2 客户端卡在单个 apiserver 上,可启用随机关闭连接(GOAWAY)。 +客户端的其他运行中请求将不会受到影响,并且客户端将重新连接, +可能会在再次通过负载平衡器后登陆到其他 apiserver 上。 +此参数设置将发送 GOAWAY 的请求的比例。 +具有单个 apiserver 或不使用负载平衡器的群集不应启用此功能。 +最小值为0(关闭),最大值为 .02(1/50 请求); 建议使用 .001(1/1000)。 +
-h, --help
+ +kube-apiserver 的帮助命令 +
--http2-max-streams-per-connection int
+ +服务器为客户端提供的 HTTP/2 连接中最大流数的限制。 +零表示使用 golang 的默认值。 +
--kubelet-certificate-authority string
+ +证书颁发机构的证书文件的路径。 +
--kubelet-client-certificate string
+ +TLS 的客户端证书文件的路径。 +
--kubelet-client-key string
+ +TLS 客户端密钥文件的路径。 +
+ +--kubelet-preferred-address-types stringSlice     默认值:[Hostname,InternalDNS,InternalIP,ExternalDNS,ExternalIP] +
+ +用于 kubelet 连接的首选 NodeAddressTypes 列表。 +
+ +--kubelet-timeout duration     默认值:5s +
+ +kubelet 操作超时时间。 +
--kubernetes-service-node-port int
+ +如果非零,那么 Kubernetes 主服务(由 apiserver 创建/维护)将是 NodePort 类型,使用它作为端口的值。 +如果为零,则 Kubernetes 主服务将为 ClusterIP 类型。 +
--livez-grace-period duration
+ +此选项代表 apiserver 完成启动序列并生效所需的最长时间。 +从 apiserver 的启动时间到这段时间为止, +/livez 将假定未完成的启动后钩子将成功完成,因此返回 true。 +
+ +
+ +当日志机制执行到'文件 :N'时,生成堆栈跟踪 +
--log-dir string
+ +如果为非空,则在此目录中写入日志文件 +
--log-file string
+ +如果为非空,使用此日志文件 +
+ +--log-file-max-size uint     默认值:1800 +
+ +定义日志文件可以增长到的最大大小。单位为兆字节。 +如果值为 0,则最大文件大小为无限制。 +
+ +--log-flush-frequency duration     默认值:5s +
+ +两次日志刷新之间的最大秒数 +
+ +--logging-format string     默认值:"text" +
+ +设置日志格式。允许的格式:"text","json"。 +
非默认格式不支持以下标志:--add_dir_header、--alsologtostderr、--log_backtrace_at、--log_dir、--log_file、--log_file_max_size、--logtostderr、-skip_headers、-skip_log_headers、-stderrthreshold、-vmodule和--log-flush-frequency。 +
当前非默认选择为 alpha,并且会随时更改而不会发出警告。 +
c + +--logtostderr     默认值:true +
+ +在标准错误而不是文件中输出日志记录 +
+ +--master-service-namespace string     默认值:"default" +
+ +已废弃:应该从其中将 Kubernetes 主服务注入到 Pod 中的名字空间。 +
--max-connection-bytes-per-sec int
+ +如果不为零,则将每个用户连接限制为该数(字节数/秒)。 +当前仅适用于长时间运行的请求。 +
+ +--max-mutating-requests-inflight int     默认值:200 +
+ +在给定时间内进行中变更类型请求的最大个数。 +当超过该值时,服务将拒绝所有请求。 +零表示无限制。 +
+ +--max-requests-inflight int     默认值:400 +
+ +在给定时间内进行中非变更类型请求的最大数量。 +当超过该值时,服务将拒绝所有请求。 +零表示无限制。 +
+ +--min-request-timeout int     默认值:1800 +
+ +可选字段,表示处理程序在请求超时前,必须保持其处于打开状态的最小秒数。 +当前只对监听(Watch)请求的处理程序有效,它基于这个值选择一个随机数作为连接超时值,以达到分散负载的目的。 +
--oidc-ca-file string
+ +如果设置该值,将会使用 oidc-ca-file 中的机构之一对 OpenID 服务的证书进行验证, +否则将会使用主机的根 CA 对其进行验证。 +
--oidc-client-id string
+ +OpenID 连接客户端的要使用的客户 ID,如果设置了 oidc-issuer-url,则必须设置这个值。 +
--oidc-groups-claim string
+ +如果提供该值,这个自定义 OpenID 连接声明将被用来设定用户组。 +该声明值需要是一个字符串或字符串数组。 +此标志为实验性的,请查阅身份认证相关文档进一步了解详细信息。 +
--oidc-groups-prefix string
+ +如果提供,则所有组都将以该值作为前缀,以防止与其他身份认证策略冲突。 +
--oidc-issuer-url string
+ +OpenID 颁发者 URL,只接受 HTTPS 方案。 +如果设置该值,它将被用于验证 OIDC JSON Web Token(JWT)。 +
--oidc-required-claim mapStringString
+ +描述 ID 令牌中必需声明的键值对。 +如果设置此值,则会验证 ID 令牌中存在与该声明匹配的值。 +重复此标志以指定多个声明。 +
+ +--oidc-signing-algs stringSlice     默认值:[RS256] +
+ +允许的 JOSE 非对称签名算法的逗号分隔列表。 +若 JWT 所带的 "alg" 标头值不在列表中,则该 JWT 将被拒绝。 +取值依据 RFC 7518 https://tools.ietf.org/html/rfc7518#section-3.1 定义。 +
+ +--oidc-username-claim string     默认值:"sub" +
+ +要用作用户名的 OpenID 声明。 +请注意,除默认声明("sub")以外的其他声明不能保证是唯一且不可变的。 +此标志是实验性的,请参阅身份认证文档以获取更多详细信息。 +
--oidc-username-prefix string
+ +如果提供,则所有用户名都将以该值作为前缀。 +如果未提供,则除 "email" 之外的用户名声明都会添加颁发者 URL 作为前缀,以避免冲突。 +要略过添加前缀处理,请设置值为 "-"。 +
--permit-port-sharing
+ +如果为 true,则在绑定端口时将使用 SO_REUSEPORT, +这样多个实例可以绑定到同一地址和端口上。[默认值 = false] +
+ +--profiling     默认值:true +
+ +通过 Web 界面启用性能分析 host:port/debug/pprof/ +
--proxy-client-cert-file string
+ +当必须调用外部程序以处理请求时,用于证明聚合器或者 kube-apiserver 的身份的客户端证书。 +包括代理转发到用户 api-server 的请求和调用 Webhook 准入控制插件的请求。 +Kubernetes 期望此证书包含来自于 --requestheader-client-ca-file 标志中所给 CA 的签名。 +该 CA 在 kube-system 命名空间的 "extension-apiserver-authentication" ConfigMap 中公开。 +从 kube-aggregator 收到调用的组件应该使用该 CA 进行各自的双向 TLS 验证。 +
--proxy-client-key-file string
+ +当必须调用外部程序来处理请求时,用来证明聚合器或者 kube-apiserver 的身份的客户端私钥。 +这包括代理转发给用户 api-server 的请求和调用 Webhook 准入控制插件的请求。 +
+ +--request-timeout duration     默认值:1m0s +
+ +可选字段,指示处理程序在超时之前必须保持打开请求的持续时间。 +这是请求的默认请求超时,但对于特定类型的请求,可能会被 --min-request-timeout 等标志覆盖。 +
--requestheader-allowed-names stringSlice
+ +此值为客户端证书通用名称(Common Name)的列表;表中所列的表项可以用来提供用户名, +方式是使用 --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 的键值对。支持的选项包括: +
v1=true|false(针对核心 API 组) +
<group>/<version>=true|false(针对特定 API 组和版本,例如:apps/v1=true) +
api/all=true|false 控制所有 API 版本 +
api/ga=true|false 控制所有 v[0-9]+ API 版本 +
api/beta=true|false 控制所有 v[0-9]+beta[0-9]+ API 版本 +
api/alpha=true|false 控制所有 v[0-9]+alpha[0-9]+ API 版本 +
api/legacy 已弃用,并将在以后的版本中删除 +
+ +--secure-port int     默认值:6443 +
+ +带身份验证和鉴权机制的 HTTPS 服务端口。 +不能用 0 关闭。 +
--service-account-extend-token-expiration
+ +在生成令牌时,启用投射服务帐户到期时间扩展, +这有助于从旧版令牌安全地过渡到绑定的服务帐户令牌功能。 +如果启用此标志,则准入插件注入的令牌的过期时间将延长至 1 年,以防止过渡期间发生意外故障, +并忽略 service-account-max-token-expiration 的值。 +
--service-account-issuer {service-account-issuer}/.well-known/openid-configuration
+ +服务帐号令牌颁发者的标识符。 +颁发者将在已办法令牌的 "iss" 声明中检查此标识符。 +此值为字符串或 URI。 +如果根据 OpenID Discovery 1.0 规范检查此选项不是有效的 URI,则即使特性门控设置为 true, +ServiceAccountIssuerDiscovery 功能也将保持禁用状态。 +强烈建议该值符合 OpenID 规范:https://openid.net/specs/openid-connect-discovery-1_0.html。 +实践中,这意味着 service-account-issuer 取值必须是 HTTPS URL。 +还强烈建议此 URL 能够在 {service-account-issuer}/.well-known/openid-configuration +处提供 OpenID 发现文档。 +
--service-account-jwks-uri string
+ +覆盖 /.well-known/openid-configuration 提供的发现文档中 JSON Web 密钥集的 URI。 +如果发现文档和密钥集是通过 API 服务器外部 +(而非自动检测到或被外部主机名覆盖)之外的 URL 提供给依赖方的,则此标志很有用。 +仅在启用 ServiceAccountIssuerDiscovery 特性门控的情况下有效。 +
--service-account-key-file stringArray
+ +包含 PEM 编码的 x509 RSA 或 ECDSA 私钥或公钥的文件,用于验证 ServiceAccount 令牌。 +指定的文件可以包含多个键,并且可以使用不同的文件多次指定标志。 +如果未指定,则使用 --tls-private-key-file。 +提供 --service-account-signing-key 时必须指定。 +
+ +--service-account-lookup     默认值:true +
+ +如果为 true,则在身份认证时验证 etcd 中是否存在 ServiceAccount 令牌。 +
--service-account-max-token-expiration duration
+ +服务帐户令牌发布者创建的令牌的最长有效期。 +如果请求有效期大于此值的有效令牌请求,将使用此值的有效期颁发令牌。 +
--service-account-signing-key-file string
+ +包含服务帐户令牌颁发者当前私钥的文件的路径。 +颁发者将使用此私钥签署所颁发的 ID 令牌(需要启用 "TokenRequest" 特性门控)。 +
--service-cluster-ip-range string
+ +CIDR 表示的 IP 范围用来为服务分配集群 IP。 +此地址不得与指定给节点或 Pod 的任何 IP 范围重叠。 +
+ +--service-node-port-range portRange     默认值:30000-32767 +
+ +保留给具有 NodePort 可见性的服务的端口范围。 +例如:"30000-32767"。范围的两端都包括在内。 +
--show-hidden-metrics-for-version string
+ +你要显示隐藏指标的先前版本。仅先前的次要版本有意义,不允许其他值。 +格式为 <major>.<minor>,例如:"1.16"。 +这种格式的目的是确保您有机会注意到下一个版本是否隐藏了其他指标, +而不是在此之后将它们从发行版中永久删除时感到惊讶。 +
--shutdown-delay-duration duration
+ +延迟终止时间。在此期间,服务器将继续正常处理请求。 +端点 /healthz 和 /livez 将返回成功,但是 /readyz 立即返回失败。 +在此延迟过去之后,将开始正常终止。 +这可用于允许负载平衡器停止向该服务器发送流量。 +
--skip-headers
+ +如果为 true,日志消息中避免标题前缀 +
--skip-log-headers
+ +如果为 true,则在打开日志文件时避免标题 +
+ +--stderrthreshold severity     默认值:2 +
+ +将达到或超过此阈值的日志写到标准错误输出 +
--storage-backend string
+ +持久化存储后端。选项:"etcd3"(默认)。 +
+ +--storage-media-type string     默认值:"application/vnd.kubernetes.protobuf" +
+ +用于在存储中存储对象的媒体类型。 +某些资源或存储后端可能仅支持特定的媒体类型,并且将忽略此设置。 +
--tls-cert-file string
+ +包含用于 HTTPS 的默认 x509 证书的文件。(CA 证书(如果有)在服务器证书之后并置)。 +如果启用了 HTTPS 服务,并且未提供 --tls-cert-file 和 --tls-private-key-file, +为公共地址生成一个自签名证书和密钥,并将其保存到 --cert-dir 指定的目录中。 +
--tls-cipher-suites stringSlice
+ +服务器的密码套件的列表,以逗号分隔。如果省略,将使用默认的 Go 密码套件。 +
首选值:TLS_AES_128_GCM_SHA256、TLS_AES_256_GCM_SHA384、TLS_CHACHA20_POLY1305_SHA256、TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA、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_CHACHA20_POLY1305_SHA256、TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA、TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA、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_CHACHA20_POLY1305_SHA256、TLS_RSA_WITH_3DES_EDE_CBC_SHA、TLS_RSA_WITH_AES_128_CBC_SHA、TLS_RSA_WITH_AES_128_GCM_SHA256、TLS_RSA_WTLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256、TLS_ECDHE_ECDSA_WITH_RC4_128_SHA、TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256、TLS_ECDHE_RSA_WITH_RC4_128_SHA、TLS_RSA_WITH_AES_128_CBC_SHA256、TLS_RSA_WITH_RC4_128_SHA。 +
--tls-min-version string
+ +支持的最低 TLS 版本。可能的值:VersionTLS10,VersionTLS11,VersionTLS12,VersionTLS13 +
--tls-private-key-file string
+ +包含匹配 --tls-cert-file 的 x509 证书私钥的文件。 +
+ +--tls-sni-cert-key namedCertKey     默认值:[] +
+ +一对 x509 证书和私钥文件路径,(可选)后缀为全限定域名的域名模式列表,可以使用带有通配符的前缀。 +域模式也允许使用 IP 地址,但仅当 apiserver 对客户端请求的IP地址具有可见性时,才应使用 IP。 +如果未提供域模式,则提取证书的名称。 +非通配符匹配优先于通配符匹配,显式域模式优先于提取出的名称。 +对于多个密钥/证书对,请多次使用 --tls-sni-cert-key。 +示例:"example.crt,example.key" 或 "foo.crt,foo.key:*.foo.com,foo.com"。 +
--token-auth-file string
+ +如果设置该值,这个文件将被用于通过令牌认证来保护 API 服务的安全端口。 +
-v, --v Level
+ +日志级别详细程度的数字 +
--version version[=true]
+ +打印版本信息并退出 +
--vmodule moduleSpec
+ +以逗号分隔的 pattern=N 设置列表,用于文件过滤的日志记录 +
+ +--watch-cache     默认值:true +
+ +在 apiserver 中启用监视缓存 +
--watch-cache-sizes stringSlice
+ +某些资源(pods、nodes 等)的监视缓存大小设置,以逗号分隔。 +每个资源对应的设置格式:resource[.group]#size,其中 resource 为小写复数(无版本), +对于 apiVersion v1(旧版核心 API)的资源要省略 group, +对其它资源要给出 group,size 为一个数字。 +启用 watch-cache 时,此功能生效。 +某些资源(replicationcontrollers、endpoints、nodes、pods、services、apiservices.apiregistration.k8s.io) +具有通过启发式设置的系统默认值,其他资源默认为 default-watch-cache-size +