kubernetes 1.18 版本kube-apiserver参数详解

Kubernetes API服务器为API对象验证和配置数据,这些对象包括pods、服务、replicationcontroller和其他对象。API服务器服务负责停止操作,并为集群的共享状态提供前端,所有其他组件通过共享状态进行交互。

官方api-server 参数介绍
https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/
选项参数:

——add-dir-header
如果为真,则将文件目录添加到标头
——admission-control-config-file字符串
文件与允许控制配置。
——advertise-address ip
向集群成员发布apiserver的IP地址。这个地址必须能够被集群的其他部分访问到。如果为空,将使用——绑定地址。如果——绑定地址未指定,将使用主机的默认接口。
——allow-privileged
如果为真,则允许特权容器。(默认= false)
——alsologtostderr
记录标准错误和文件
——anonymous-auth默认值:真的
允许匿名请求到API服务器的安全端口。未被其他身份验证方法拒绝的请求被视为匿名请求。匿名请求的用户名是system: Anonymous,组名是system:unauthenticated。
——api-audiences stringSlice
API的标识符。服务帐户令牌验证器将验证针对API使用的令牌至少绑定到这些受众之一。如果配置了——service-account- publisher标志,而该标志没有配置,则该字段默认为包含发行者URL的单个元素列表。
——apiserver-count int默认值:1
集群中运行的apiserver的数量必须是正数。(在启用—end -reconciler-type=master-count时使用。)
——audit-dynamic-configuration
启用动态审计配置。这个特性还需要动态审计特性标志
——audit-log-batch-buffer-size int默认值:10000
用于在批处理和写入之前存储事件的缓冲区的大小。仅在批处理模式下使用。
——audit-log-batch-max-size int默认值:1
批处理的最大大小。仅在批处理模式下使用。
——audit-log-batch-max-wait持续时间
在强制写入未达到最大大小的批之前等待的时间。仅在批处理模式下使用。
——audit-log-batch-throttle-burst int
如果之前没有使用ThrottleQPS,则同时发送的最大请求数。仅在批处理模式下使用。
——audit-log-batch-throttle-enable
是否启用批量节流。仅在批处理模式下使用。
——audit-log-batch-throttle-qps float32
每秒最大平均批次数。仅在批处理模式下使用。
——audit-log-format字符串默认值:“json”
保存审核的格式。“legacy”表示每个事件的一行文本格式。“json”表示结构化的json格式。已知的格式是legacy,json。
——audit-log-maxage int
根据文件名中编码的时间戳保留旧审计日志文件的最大天数。
——audit-log-maxbackup int
要保留的旧审计日志文件的最大数量。
——audit-log-maxsize int
在旋转之前审计日志文件的最大大小(以兆字节为单位)。
——audit-log-mode字符串默认值:“blocking”
发送审计事件的策略。阻塞表示发送事件应该阻塞服务器响应。批处理导致后端异步地缓冲和写入事件。已知的模式有批处理、阻塞、严格阻塞。
——audit-log-path字符串
如果设置了该参数,所有进入apiserver的请求都将被记录到这个文件中。'-'表示标准输出。
——audit-log-truncate-enabled
是否启用事件和批处理截断。
——audit-log-truncate-max-batch-size int默认值:10485760
发送到底层后端批处理的最大大小。实际序列化的大小可以大几百字节。如果一个批次超过这个限制,它会被分成几个较小的批次。
——audit-log-truncate-max-event-size int默认值:102400
发送到底层后端审计事件的最大大小。如果事件的大小大于这个数字,则删除第一个请求和响应,如果这还不能充分减小大小,则丢弃事件。
——audit-log-version字符串默认值:“audit.k8s.io/v1”
用于序列化写入日志的审计事件的API组和版本。
——audit-policy-file字符串
定义审计策略配置的文件的路径。
——audit-webhook-batch-buffer-size默认值:10000
用于在批处理和写入之前存储事件的缓冲区的大小。仅在批处理模式下使用。
——audit-webhook-batch-max-size int默认值:400
批处理的最大大小。仅在批处理模式下使用。
——audit-webhook-batch-max-wait duration默认值:30秒
在强制写入未达到最大大小的批之前等待的时间。仅在批处理模式下使用。
——audit-webhook-batch-throttl -burst int默认值:15
如果之前没有使用ThrottleQPS,则同时发送的最大请求数。仅在批处理模式下使用。
——audit-webhook-batch-throttle-enable默认值:真的
是否启用批量节流。仅在批处理模式下使用。
——audit-webhook-batch- throttleqps float32默认值:10
每秒最大平均批次数。仅在批处理模式下使用。
——audit-webhook-config-file字符串
到定义审计webhook配置的kubeconfig格式文件的路径。
——audit-webhook-initial-backoff持续时间默认值:10s
重试第一个失败的请求之前需要等待的时间。
——audit-webhook-mode string Default: "batch"
发送审计事件的策略。阻塞表示发送事件应该阻塞服务器响应。批处理导致后端异步地缓冲和写入事件。已知的模式有批处理、阻塞、严格阻塞。
——audit-webhook-truncate-enabled
是否启用事件和批处理截断。
——audit-webhook-truncate-max-batch-size int默认值:10485760
发送到底层后端批处理的最大大小。实际序列化的大小可以大几百字节。如果一个批次超过这个限制,它会被分成几个较小的批次。
——audit-webhook-truncate-max-event-size int默认值:102400
发送到底层后端审计事件的最大大小。如果事件的大小大于这个数字,则删除第一个请求和响应,如果这还不能充分减小大小,则丢弃事件。
默认值:“audit.k8s.io/v1”
用于序列化写入webhook的审计事件的API组和版本。
——认证令牌-webhook-cache-ttl持续时间默认:2m0s
缓存来自webhook令牌验证器的响应的持续时间。
——authentication-token-webhook-config-file字符串
带有webhook配置的文件,用于kubeconfig格式的令牌身份验证。API服务器将查询远程服务,以确定承载令牌的身份验证。
默认:“v1beta1”
验证的API版本。k8s。io TokenReview发送和期待从webhook。
——授权模式stringSlice默认:[AlwaysAllow]
用于在安全端口上进行授权的插件的有序列表。以逗号分隔的列表:AlwaysAllow,AlwaysDeny,ABAC,Webhook,RBAC,Node。
——authorization-policy-file字符串
带json逐行格式授权策略的文件,在安全端口上与——authorizationmode =ABAC一起使用。
——授权-webhook-cache-authorized-ttl持续时间默认:5m0s
缓存来自webhook授权器的“授权”响应的持续时间。
——授权-webhook-cache-unauthorized-ttl持续时间默认:30s
缓存来自webhook授权器的“未授权”响应的持续时间。
——authorization-webhook-config-file字符串
文件与webhook配置在kubeconfig格式,使用——授权模式= webhook。API服务器将查询远程服务,以确定对API服务器的安全端口的访问。
默认值:"v1beta1"
API版本的授权。k8s。io SubjectAcce eview发送并期待从webhook。
——azure-container-registry-config字符串
包含Azure容器注册表配置信息的文件的路径。
——绑定地址ip默认值:0.0.0.0
监听的IP地址——secure-port端口。集群的其他部分以及CLI/web客户端必须能够访问相关的接口。如果为空或未指定地址(0.0.0.0或::),则将使用所有接口。
默认:"/var/run/kubernetes"
TLS证书所在的目录。如果提供了——tls-cert-file和——tls-private-key-file,这个标志将被忽略。
——client-ca-file字符串
如果设置了此参数,则在客户端-ca文件中出示由其中一个权威机构签署的客户端证书的任何请求都将使用与客户端证书的CommonName对应的标识进行身份验证。
——cloud-config字符串
云提供商配置文件的路径。没有配置文件的空字符串。
——云提供商字符串
云服务的提供者。没有提供程序的空字符串。
——cloud-provider-gce-l7lb-src-cidrs默认值:130.211.0.0/22,35.191.0.0/16
CIDRs在GCE防火墙中为L7 LB流量代理和健康检查打开
——contention-profiling
启用锁争用分析(如果启用了分析)
——cors-allowed-origins stringSlice
CORS允许的起源列表,逗号分隔。允许的源可以是支持子域匹配的正则表达式。如果此列表为空,则不启用CORS。
—Default -not-ready- tolerance -seconds int: 300
指示notReady的公差的公差秒:NoExecute默认情况下添加到每个没有这种公差的pod。
默认:300
指示不可到达的公差的公差秒数:NoExecute,默认情况下会添加到每个没有这种公差的pod。
—Default -watch-cache-size int默认值:100
默认手表缓存大小。如果为零,那么对于没有设置默认手表大小的资源,将禁用手表缓存。
——delete-collection-workers int默认值:1
为删除收集调用生成的工作进程的数目。它们用于加速名称空间清理。
——disable-admission-plugins stringSlice
承认插件,应该禁用虽然他们是默认启用的插件列表中(NamespaceLifecycle、LimitRanger ServiceAccount, TaintNodesByCondition、优先级、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, pod预设,PodSecurityPolicy, pod宽容限制,优先级,ResourceQuota, RuntimeClass, SecurityContextDeny, ServiceAccount, StorageObjectInUseProtection, TaintNodesByCondition, ValidatingAdmissionWebhook。这个标志中插件的顺序并不重要。
——egress-selector-config-file字符串
带有apiserver出口选择器配置的文件。
——enable-admission-plugins stringSlice
承认插件,应该启用除了默认启用的(NamespaceLifecycle、LimitRanger ServiceAccount, TaintNodesByCondition,优先级、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, pod预设,PodSecurityPolicy, pod宽容限制,优先级,ResourceQuota, RuntimeClass, SecurityContextDeny, ServiceAccount, StorageObjectInUseProtection, TaintNodesByCondition, ValidatingAdmissionWebhook。这个标志中插件的顺序并不重要。
——enable-aggregator-routing
打开聚合器路由请求到端点IP而不是群集IP。
——enable-bootstrap-token-auth
允许“bootstrap.kubernetes”类型的秘密。io/token'在'kube-system'名称空间中,用于TLS引导身份验证。
——enable-garbage-collector默认值:真的
启用通用垃圾收集器。必须与kube-controller-manager的相应标志同步。
——enable-priority-and-fairness默认值:真的
如果为真且APIPriorityAndFairness特性gate已启用,则将最大飞行处理程序替换为一个增强的处理程序,该处理程序使用优先级和公平性进行排队和调度
——encryption-provider-config字符串
包含用于在etcd中存储秘密的加密提供程序的配置的文件
—endpoint-reconciler类型的字符串默认值:“lease”
使用端点协调器(master-count、lease、none)
——etcd-cafile字符串
用于保护etcd通信的SSL证书授权文件。
——etcd-certfile字符串
用于保护etcd通信的SSL证书文件。
——etcd-compact -interval duration默认值:5m0s
压缩请求的间隔。如果为0,则禁用来自apiserver的压缩请求。
默认值:1m0s
轮询etcd的频率,以确定每种类型的资源数量。0禁用度量集合。
——etcd-keyfile字符串
用于保护etcd通信的SSL密钥文件。
——etcd-前缀字符串默认:“/registry”
在etcd中为所有资源路径添加前缀。
——etcd-servers stringSlice
要连接的etcd服务器列表(方案://ip:port),逗号分隔。
——etcd-servers-overrides stringSlice
每个资源etcd服务器覆盖,逗号分隔。个人重写格式:组/资源#服务器,其中服务器是url,分号分隔。
——事件-ttl持续时间默认:1h0m0s
保留事件的时间量。
——外部主机名的字符串
为这个主机生成外部url时使用的主机名(例如Swagger API文档或OpenID发现)。
——feature-gates mapStringBool
一组键=值对,用于描述alpha/实验特性的特性门。选项有:
APIListChunking=true|false (BETA - default=true)
APIPriorityAndFairness=true|false (ALPHA - default=false)
APIResponseCompression=true|false (BETA - default=true)
AllAlpha=true|false (ALPHA - default=false)
AllBeta=true|false (BETA - default=false)
AllowInsecureBackendProxy=true|false (BETA - default=true)
AnyVolumeDataSource=true|false (ALPHA - default=false)
幻影显形=真|假(BETA -默认=真)
balanceattachedno= true|false (ALPHA - default=false)
BoundServiceAccountTokenVolume=true|false (ALPHA - default=false)
CPUManager=true|false (BETA - default=true)
CRIContainerLogRotation=true|false (BETA - default=true)
CSIInlineVolume=true|false (BETA - default=true)
CSIMigration=true|false (BETA - default=true)
CSIMigrationAWS=true|false (BETA - default=false)
CSIMigrationAWSComplete=true|false (ALPHA - default=false)
CSIMigrationAzureDisk=true|false (ALPHA - default=false)
CSIMigrationAzureDiskComplete=true|false (ALPHA - default=false)
CSIMigrationAzureFile=true|false (ALPHA - default=false)
CSIMigrationAzureFileComplete=true|false (ALPHA - default=false)
CSIMigrationGCE=true|false (BETA - default=false)
CSIMigrationGCEComplete=true|false (ALPHA - default=false)
CSIMigrationOpenStack=true|false (BETA - default=false)
CSIMigrationOpenStackComplete=true|false (ALPHA - default=false)
ConfigurableFSGroupPolicy=true|false (ALPHA - default=false)
CustomCPUCFSQuotaPeriod=true|false (ALPHA - default=false)
DefaultIngressClass=true|false (BETA - default=true)
DevicePlugins=true|false (BETA - default=true)
DryRun=true|false (BETA - default=true)
动态审计=true|false (ALPHA - default=false)
DynamicKubeletConfig=true|false (BETA - default=true)
EndpointSlice=true|false (BETA - default=true)
endpointsliceproxy =true|false (ALPHA - default=false)
EphemeralContainers=true|false (ALPHA - default=false)
EvenPodsSpread=true|false (BETA - default=true)
expandcsivolume =true|false (BETA - default=true)
expandinusepersistentvolume =true|false (BETA - default=true)
expandpersistentvolume =true|false (BETA - default=true)
实验者alhostusernamespacedefault =true|false (BETA - default=false)
HPAScaleToZero=true|false (ALPHA - default=false)
HugePageStorageMediumSize=true|false (ALPHA - default=false)
HyperVContainer=true|false (ALPHA - default=false)
IPv6DualStack=true|false (ALPHA - default=false)
immutableephemeralvolume =true|false (ALPHA - default=false)
KubeletPodResources=true|false (BETA - default=true)
LegacyNodeRoleBehavior=true|false (ALPHA - default=true)
LocalStorageCapacityIsolation=true|false (BETA - default=true)
LocalStorageCapacityIsolationFSQuotaMonitoring=true|false (ALPHA - default=false)
NodeDisruptionExclusion=true|false (ALPHA - default=false)
非抢占优先级=true|false (ALPHA - default=false)
PodDisruptionBudget=true|false (BETA - default=true)
PodOverhead=true|false (BETA - default=true)
ProcMountType=true|false (ALPHA - default=false)
QOSReserved=true|false (ALPHA - default=false)
RemainingItemCount=true|false (BETA - default=true)
RemoveSelfLink=true|false (ALPHA - default=false)
ResourceLimitsPriorityFunction=true|false (ALPHA - default=false)
RotateKubeletClientCertificate=true|false (BETA - default=true)
RotateKubeletServerCertificate=true|false (BETA - default=true)
RunAsGroup=true|false (BETA - default=true)
RuntimeClass=true|false (BETA - default=true)
SCTPSupport=true|false (ALPHA - default=false)
SelectorIndex=true|false (ALPHA - default=false)
ServerSideApply=true|false (BETA - default=true)
ServiceAccountIssuerDiscovery=true|false (ALPHA - default=false)
ServiceAppProtocol=true|false (ALPHA - default=false)
ServiceNodeExclusion=true|false (ALPHA - default=false)
ServiceTopology=true|false (ALPHA - default=false)
StartupProbe=true|false (BETA - default=true)
StorageVersionHash=true|false (BETA - default=true)
SupportNodePidsLimit=true|false (BETA - default=true)
SupportPodPidsLimit=true|false (BETA - default=true)
Sysctls=true|false (BETA - default=true)
TTLAfterFinished=true|false (ALPHA - default=false)
TokenRequest=true|false (BETA - default=true)
TokenRequestProjection=true|false (BETA - default=true)
TopologyManager=true|false (BETA - default=true)
validateproxyre重定向=true|false (BETA - default=true)
VolumeSnapshotDataSource=true|false (BETA - default=true)
WinDSR=true|false (ALPHA - default=false)
WinOverlay=true|false (ALPHA - default=false)

——goaway-chance浮动
为了防止HTTP/2客户端卡在一个apiserver上,可以随机关闭一个连接(GOAWAY)。客户机的其他正在运行的请求将不会受到影响,并且客户机将重新连接,在再次经过负载平衡器之后,可能会在另一个apiserver上着陆。此参数设置将发送GOAWAY的请求的比例。带有单个apiserver的集群或不使用负载平衡器的集群不应该启用此功能。最小值为0(关闭),最大值为0.02(1/50请求);建议从.001(1/1000)开始。

——http2-max-streams-per-connection int
服务器为HTTP/2连接中的最大流数向客户端提供的限制。0表示使用golang的默认值。
——kubelet-certificate-authority字符串
指向证书颁发机构的证书文件的路径。
——kubelet-client-certificate字符串
TLS的客户端证书文件的路径。
——kubelet-client-key字符串
TLS的客户端密钥文件的路径。
——kubelet-https默认值:真的
对于kubelet连接使用https。
——kubelet-preferred-address-types stringSlice默认:[主机名,内部dns,内部alip,外部dns,外部alip]
用于kubelet连接的首选NodeAddressTypes列表。
——kubelet-timeout持续时间默认:5s
库贝列操作超时。
——kubernetes-service-node-port int
如果非零,Kubernetes主服务(apiserver创建/维护的)将是NodePort类型,使用这个值作为端口的值。如果为零,Kubernetes主服务将为ClusterIP类型。
——livez-grace-period持续时间
此选项表示apiserver完成启动序列并变为活动状态所需的最大时间量。从apiserver的启动时间到这个时间段结束,/livez将假定启动后未完成的钩子将成功完成,因此返回true。
——在traceLocation默认::0
当日志记录命中行文件:N时,发出堆栈跟踪
——log dir字符串
如果非空,则在此目录中写入日志文件
——日志文件的字符串
如果非空,请使用此日志文件
——log-file-max-size uint默认值:1800
定义日志文件可以增长到的最大大小。单位是字节。如果该值为0,则最大文件大小不受限制。
——日志刷新频率持续时间默认:5s
日志刷新之间的最大秒数
——logtostderr默认值:真的
日志到标准错误而不是文件
——master-service-namespace字符串默认值:“Default”
不赞成:应该将Kubernetes主服务从该名称空间注入到pods中。
——max-connection-bytes-per-sec int
如果非零,则将每个用户连接调整到这个字节数/秒。当前仅适用于长时间运行的请求。
——max- mutatingrequests-inflight默认值:200
在给定时间内正在运行的变化的请求的最大数目。当服务器超过这个值时,它会拒绝请求。零没有极限。
——max-requests-inflight int默认值:400
在给定时间内正在运行的非变异请求的最大数目。当服务器超过这个值时,它会拒绝请求。零没有极限。
——最小请求超时int默认值:1800
一个可选字段,指示处理程序在计时之前必须保持请求打开的最小秒数。目前,只有watch请求处理程序(它选择这个数字之上的随机值作为连接超时)能够分散负载。
——oidc-ca-file字符串
如果设置,则OpenID服务器的证书将由oidc- CA文件中的一个权威机构进行验证,否则将使用主机的根CA集。
——oidc-client-id字符串
如果设置oidc-发布者-url,则必须设置OpenID连接客户端的客户端ID。
——oidc-groups-claim字符串
如果提供,指定用户组的自定义OpenID连接声明的名称。索赔值应该是字符串或字符串数组。此标志是实验性的,请参阅身份验证文档了解更多详细信息。
——oidc-groups-prefix字符串
如果提供了该值,所有组都将以该值为前缀,以防止与其他身份验证策略发生冲突。
——oidc-issuer-url字符串
OpenID发行者的URL,只接受HTTPS模式。如果设置,它将用于验证OIDC JSON Web令牌(JWT)。
——oidc-required-claim mapStringString
描述ID令牌中要求的声明的键=值对。如果设置,则验证声明在ID令牌中具有匹配值。重复此标志以指定多个声明。
——oidc- signingalgs stringSlice默认值:[RS256]
逗号分隔的允许何塞非对称签名算法列表。不包含此列表中的“alg”标头值的JWTs将被拒绝。值由RFC 7518 https://tools.ietf.org/html/rfc7518# sec3.1定义。
——oidc-username-claim字符串默认值:“sub”
OpenID声明用作用户名。注意,除了默认声明(“sub”)之外,并不能保证声明是惟一的和不可变的。此标志是实验性的,请参阅身份验证文档了解更多详细信息。
——oidc-username-prefix字符串
如果提供,所有用户名都将以这个值作为前缀。如果没有提供,除了“电子邮件”之外的用户名声明将以发行者URL为前缀,以避免冲突。要跳过任何前缀,请提供值“-”。
——配置默认值:真的
通过web接口启用分析:port/debug/pprof/
——proxy-client-cert-file字符串
客户端证书,用于证明聚合器或kube-apiserver在请求期间必须发出调用时的身份。这包括将请求代理到用户api-服务器和调用webhook允许插件。预计该证书将在requestheader-client-ca-file标志中包含来自CA的签名。CA发布在kube-system名称空间中的“extension-apiserver-authentication”configmap中。接收来自kube-aggregator的调用的组件应该使用该CA执行其相互TLS验证的一半。
——proxy-client-key-file字符串
客户端证书的私钥,用于在聚合器或kube-apiserver必须在请求期间发出调用时证明其身份。这包括将请求代理到用户api-服务器和调用webhook允许插件。
——请求超时持续时间默认值:1m0s
一个可选字段,指示处理程序在计时之前必须保持请求打开的持续时间。这是请求的默认请求超时,但是可能会被一些标志覆盖,比如针对特定类型的请求的最小请求超时。
——requestheader-allowed-names stringSlice
客户端证书通用名称列表,允许在由——requestheader-username-headers指定的标头中提供用户名。如果为空,则允许使用在——requestheader-client-ca-file中验证的任何客户端证书。
——requestheader-client-ca-file字符串
根证书包,用于在信任由——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的一组键=值对。支持选项:
对于核心API组,v1=true|false
对于特定的API组和版本,/=true|false(例如apps/v1=true)
api/all=true|false控制所有api版本
api/ga=true|false控制了form v[0-9]+的所有api版本
api/beta=true|false控件的所有api版本的形式v[0-9]+beta[0-9]+
api/alpha=true|false控件的所有api版本的形式v[0-9]+alpha[0-9]+
api/legacy已被弃用,将在将来的版本中删除
——secure-port int Default: 6443
为HTTPS提供身份验证和授权的端口。它不能用0关掉。
——service-account-issuer {service-account-issuer} / .well-known / openid-configuration
服务帐户令牌颁发者的标识符。发布方将在已发布令牌的“iss”声明中声明此标识符。这个值是一个字符串或URI。如果根据OpenID Discovery 1.0规范,这个选项不是有效的URI, ServiceAccountIssuerDiscovery特性将保持禁用状态,即使特性门设置为true。强烈建议这个值符合OpenID规范:https://openid.net/specs/openid-connect-discovery-1_0.html。在实践中,这意味着服务帐户颁发者必须是一个https URL。还强烈建议这个URL能够在{service-account- publisher}/. known/ OpenID -configuration中提供OpenID发现文档。
——service-account-jwks-uri字符串
重写发现文档中服务于/. known/openid-configuration的JSON Web键集的URI。如果发现docand键集通过URL而不是API服务器的外部URL(通过外部主机名自动检测或覆盖)提供给依赖方,则此标志非常有用。只有在启用ServiceAccountIssuerDiscovery功能门时才有效。
——service-account-key-file stringArray
包含peme编码的x509 RSA或ECDSA私有或公共密钥的文件,用于验证ServiceAccount令牌。指定的文件可以包含多个键,并且可以使用不同的文件多次指定该标志。如果未指定,则使用——tls-private-key-file。必须在——service-account- signingkey提供时指定
——service-account-lookup默认值:真的
如果为真,验证etcd中存在的ServiceAccount令牌作为身份验证的一部分。
——service-account-max-token-expiration持续时间
由服务帐户令牌颁发方创建的令牌的最大有效期。如果一个有效的TokenRequest的有效期大于这个值,那么就会发出一个有效期为这个值的令牌。
——service-account-signing-key-file字符串
包含服务帐户令牌颁发者的当前私钥的文件的路径。发行者将使用此私钥对已发行的ID令牌进行签名。(需要“TokenRequest”功能。)
——service-cluster-ip-range字符串
CIDR符号的IP范围,用于分配服务集群IP。这不能与分配给pods节点的任何IP范围重叠。
——service-node-port-range ange默认值:300000 -32767
为具有节点可见性的服务预留的端口范围。例如:“30000 - 32767”。包括范围的两端。
——show-hidden-metrics-for-version字符串
您希望显示隐藏指标的前一个版本。只有以前的次要版本是有意义的,其他值将不被允许。格式是。<小>,例如:“1.16”。这种格式的目的是确保您有机会注意到下一个版本是否隐藏了额外的指标,而不是当它们在之后的版本中被永久删除时感到惊讶。
——shutdown-delay-duration持续时间
延迟终止的时间。在此期间,服务器保持正常服务请求,/healthz返回成功,而/readyz立即返回失败。优雅的终止在延迟结束之后开始。这可以用来允许负载均衡器停止向该服务器发送流量。
——skip-headers
如果为真,请避免在日志消息中使用标题前缀
——skip-log-headers
如果为真,则在打开日志文件时避免标头
——stderrthreshold严重默认:2
在此阈值或以上的日志将进入stderr
——存储后端字符串
持久性的存储后端。选择:“etcd3”(默认)。
默认:“application/vnd. kubernets .protobuf”
用于在存储器中存储对象的媒体类型。某些资源或存储后端可能只支持特定的媒体类型,而忽略此设置。
——target-ram-mb int
apiserver的内存限制(以MB为单位,用于配置缓存大小等)
——tls-cert-file字符串
包含HTTPS的默认x509证书的文件。(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字符串
支持最小TLS版本。可能的值:VersionTLS10、VersionTLS11、VersionTLS12、VersionTLS13
——tls-private-key-file字符串
包含默认x509私钥匹配的文件——tls-cert-file。
——tls- snib -cert-key namedCertKey默认值:[]
一对x509证书和私钥文件路径,可选地以域模式列表作为后缀,这些域模式是完全限定的域名,可能带有前缀通配符段。域模式还允许IP地址,但是只有当apiserver能够看到客户端请求的IP地址时,才应该使用IP地址。如果没有提供域模式,则提取证书的名称。非通配符匹配胜过通配符匹配,显式域模式胜过提取的名称。对于多个密钥/证书对,多次使用——tls- snip -cert-key。例子:“example.crt,例子。键”或“foo.crt foo.key: * .foo.com, foo.com”。
——token-auth-file字符串
如果设置,将使用该文件通过令牌身份验证保护API服务器的安全端口。
——v, v级
日志级别详细度的编号
——verson version(= true)
打印版本信息并退出
——vmodule moduleSpec
文件过滤日志记录的模式=N设置的逗号分隔列表
——watch-cache默认值:真的
在apiserver中启用监视缓存
——watch-cache-sizes stringSlice
观察某些资源(pod、节点等)的缓存大小设置,用逗号分隔。个人设置格式:resource[。group]#size,其中资源是小写复数(没有版本),apiVersion v1(遗留核心API)的资源省略了group,而其他资源包含group,而size是一个数字。它在启用监视缓存时生效。有些资源(replicationcontroller、端点、节点、pod、服务、apiservice .apiregistration.k8 .io)具有启发式设置的系统默认值,其他资源的默认值为default-watch-cache-size