—add_dir_header |
| 如果为 true,将文件目录添加到日志消息的头部 |
—alsologtostderr |
| 设置为 true 表示将日志输出到文件的同时输出到 stderr(当 —logtostderr=true 时不生效) |
—bind-address string 默认值:0.0.0.0 |
| 重写 kube-proxy 对其节点主要 IP 的理解。请注意,此名称是一个历史遗留字段, 并且 kube-proxy 实际上并没有将任何套接字绑定到此 IP。 如果配置文件由 —config 指定,则忽略此参数。 |
—bind-address-hard-fail |
| 如果为 true,kube-proxy 会将无法绑定端口的失败操作视为致命错误并退出。 |
—boot_id_file string 默认值:”/proc/sys/kernel/random/boot_id” |
| 逗号分隔的文件列表,用于检查 boot-id。使用第一个存在的文件。 |
—cleanup |
| 如果为 true,清理 iptables 和 ipvs 规则并退出。 |
—cluster-cidr string |
| 集群中 Pod 的 CIDR 范围。对于双协议栈集群,这可以是逗号分隔的双协议栈 CIDR 范围对。 当 —detect-local-mode 设置为 ClusterCIDR 时, kube-proxy 会将源 IP 在此范围内的流量视为本地流量。否则不使用此字段。 如果配置文件由 —config 指定,则忽略此参数。 |
—config string |
| 配置文件的路径。 |
—config-sync-period duration 默认值:15m0s |
| 来自 apiserver 的配置的刷新频率。必须大于 0。 |
—conntrack-max-per-core int32 默认值:32768 |
| 每个 CPU 核跟踪的最大 NAT 连接数(0 表示保留当前限制并忽略 conntrack-min 设置)。 |
—conntrack-min int32 默认值:131072 |
| 无论 conntrack-max-per-core 多少,要分配的 conntrack 条目的最小数量(将 conntrack-max-per-core 设置为 0 即可 保持当前的限制)。 |
—conntrack-tcp-be-liberal |
| 通过将 nf_conntrack_tcp_be_liberal 设置为 1,启用宽松模式以跟踪 TCP 数据包。 |
—conntrack-tcp-timeout-close-wait duration 默认值:1h0m0s |
| 处于 CLOSE_WAIT 状态的 TCP 连接的 NAT 超时。 |
—conntrack-tcp-timeout-established duration 默认值:24h0m0s |
| 已建立的 TCP 连接的空闲超时(0 保持当前设置)。 |
—conntrack-udp-timeout duration |
| UNREPLIED UDP 连接的空闲超时(0 保持当前设置)。 |
—conntrack-udp-timeout-stream duration |
| ASSURED UDP 连接的空闲超时(0 保持当前设置)。 |
—detect-local-mode LocalMode |
| 用于检测本地流量的模式。 如果配置文件由 —config 指定,则忽略此参数。 |
—feature-gates <逗号分隔的 ‘key=True|False’ 对> |
| 一组 key=value 对,用来描述测试性/试验性功能的特性门控。可选项有: APIResponseCompression=true|false (BETA - 默认值=true) APIServerIdentity=true|false (BETA - 默认值=true) APIServerTracing=true|false (BETA - 默认值=true) AdmissionWebhookMatchConditions=true|false (BETA - 默认值=true) AggregatedDiscoveryEndpoint=true|false (BETA - 默认值=true) AllAlpha=true|false (ALPHA - 默认值=false) AllBeta=true|false (BETA - 默认值=false) AnyVolumeDataSource=true|false (BETA - 默认值=true) AppArmor=true|false (BETA - 默认值=true) CPUManagerPolicyAlphaOptions=true|false (ALPHA - 默认值=false) CPUManagerPolicyBetaOptions=true|false (BETA - 默认值=true) CPUManagerPolicyOptions=true|false (BETA - 默认值=true) CRDValidationRatcheting=true|false (ALPHA - 默认值=false) CSIMigrationPortworx=true|false (BETA - 默认值=false) CSIVolumeHealth=true|false (ALPHA - 默认值=false) CloudControllerManagerWebhook=true|false (ALPHA - 默认值=false) CloudDualStackNodeIPs=true|false (BETA - 默认值=true) ClusterTrustBundle=true|false (ALPHA - 默认值=false) ClusterTrustBundleProjection=true|false (ALPHA - 默认值=false) ComponentSLIs=true|false (BETA - 默认值=true) ConsistentListFromCache=true|false (ALPHA - 默认值=false) ContainerCheckpoint=true|false (ALPHA - 默认值=false) ContextualLogging=true|false (ALPHA - 默认值=false) CronJobsScheduledAnnotation=true|false (BETA - 默认值=true) CrossNamespaceVolumeDataSource=true|false (ALPHA - 默认值=false) CustomCPUCFSQuotaPeriod=true|false (ALPHA - 默认值=false) DevicePluginCDIDevices=true|false (BETA - 默认值=true) DisableCloudProviders=true|false (BETA - 默认值=true) DisableKubeletCloudCredentialProviders=true|false (BETA - 默认值=true) DisableNodeKubeProxyVersion=true|false (ALPHA - 默认值=false) DynamicResourceAllocation=true|false (ALPHA - 默认值=false) ElasticIndexedJob=true|false (BETA - 默认值=true) EventedPLEG=true|false (BETA - 默认值=false) GracefulNodeShutdown=true|false (BETA - 默认值=true) GracefulNodeShutdownBasedOnPodPriority=true|false (BETA - 默认值=true) HPAContainerMetrics=true|false (BETA - 默认值=true) HPAScaleToZero=true|false (ALPHA - 默认值=false) HonorPVReclaimPolicy=true|false (ALPHA - 默认值=false) ImageMaximumGCAge=true|false (ALPHA - 默认值=false) InPlacePodVerticalScaling=true|false (ALPHA - 默认值=false) InTreePluginAWSUnregister=true|false (ALPHA - 默认值=false) InTreePluginAzureDiskUnregister=true|false (ALPHA - 默认值=false) InTreePluginAzureFileUnregister=true|false (ALPHA - 默认值=false) InTreePluginGCEUnregister=true|false (ALPHA - 默认值=false) InTreePluginOpenStackUnregister=true|false (ALPHA - 默认值=false) InTreePluginPortworxUnregister=true|false (ALPHA - 默认值=false) InTreePluginvSphereUnregister=true|false (ALPHA - 默认值=false) JobBackoffLimitPerIndex=true|false (BETA - 默认值=true) JobPodFailurePolicy=true|false (BETA - 默认值=true) JobPodReplacementPolicy=true|false (BETA - 默认值=true) KubeProxyDrainingTerminatingNodes=true|false (ALPHA - 默认值=false) KubeletCgroupDriverFromCRI=true|false (ALPHA - 默认值=false) KubeletInUserNamespace=true|false (ALPHA - 默认值=false) KubeletPodResourcesDynamicResources=true|false (ALPHA - 默认值=false) KubeletPodResourcesGet=true|false (ALPHA - 默认值=false) KubeletSeparateDiskGC=true|false (ALPHA - 默认值=false) KubeletTracing=true|false (BETA - 默认值=true) LegacyServiceAccountTokenCleanUp=true|false (BETA - 默认值=true) LoadBalancerIPMode=true|false (ALPHA - 默认值=false) LocalStorageCapacityIsolationFSQuotaMonitoring=true|false (ALPHA - 默认值=false) LogarithmicScaleDown=true|false (BETA - 默认值=true) LoggingAlphaOptions=true|false (ALPHA - 默认值=false) LoggingBetaOptions=true|false (BETA - 默认值=true) MatchLabelKeysInPodAffinity=true|false (ALPHA - 默认值=false) MatchLabelKeysInPodTopologySpread=true|false (BETA - 默认值=true) MaxUnavailableStatefulSet=true|false (ALPHA - 默认值=false) MemoryManager=true|false (BETA - 默认值=true) MemoryQoS=true|false (ALPHA - 默认值=false) MinDomainsInPodTopologySpread=true|false (BETA - 默认值=true) MultiCIDRServiceAllocator=true|false (ALPHA - 默认值=false) NFTablesProxyMode=true|false (ALPHA - 默认值=false) NewVolumeManagerReconstruction=true|false (BETA - 默认值=true) NodeInclusionPolicyInPodTopologySpread=true|false (BETA - 默认值=true) NodeLogQuery=true|false (ALPHA - 默认值=false) NodeSwap=true|false (BETA - 默认值=false) OpenAPIEnums=true|false (BETA - 默认值=true) PDBUnhealthyPodEvictionPolicy=true|false (BETA - 默认值=true) PersistentVolumeLastPhaseTransitionTime=true|false (BETA - 默认值=true) PodAndContainerStatsFromCRI=true|false (ALPHA - 默认值=false) PodDeletionCost=true|false (BETA - 默认值=true) PodDisruptionConditions=true|false (BETA - 默认值=true) PodHostIPs=true|false (BETA - 默认值=true) PodIndexLabel=true|false (BETA - 默认值=true) PodLifecycleSleepAction=true|false (ALPHA - 默认值=false) PodReadyToStartContainersCondition=true|false (BETA - 默认值=true) PodSchedulingReadiness=true|false (BETA - 默认值=true) ProcMountType=true|false (ALPHA - 默认值=false) QOSReserved=true|false (ALPHA - 默认值=false) RecoverVolumeExpansionFailure=true|false (ALPHA - 默认值=false) RotateKubeletServerCertificate=true|false (BETA - 默认值=true) RuntimeClassInImageCriApi=true|false (ALPHA - 默认值=false) SELinuxMountReadWriteOncePod=true|false (BETA - 默认值=true) SchedulerQueueingHints=true|false (BETA - 默认值=false) SecurityContextDeny=true|false (ALPHA - 默认值=false) SeparateTaintEvictionController=true|false (BETA - 默认值=true) ServiceAccountTokenJTI=true|false (ALPHA - 默认值=false) ServiceAccountTokenNodeBinding=true|false (ALPHA - 默认值=false) ServiceAccountTokenNodeBindingValidation=true|false (ALPHA - 默认值=false) ServiceAccountTokenPodNodeInfo=true|false (ALPHA - 默认值=false) SidecarContainers=true|false (BETA - 默认值=true) SizeMemoryBackedVolumes=true|false (BETA - 默认值=true) StableLoadBalancerNodeSet=true|false (BETA - 默认值=true) StatefulSetAutoDeletePVC=true|false (BETA - 默认值=true) StatefulSetStartOrdinal=true|false (BETA - 默认值=true) StorageVersionAPI=true|false (ALPHA - 默认值=false) StorageVersionHash=true|false (BETA - 默认值=true) StructuredAuthenticationConfiguration=true|false (ALPHA - 默认值=false) StructuredAuthorizationConfiguration=true|false (ALPHA - 默认值=false) TopologyAwareHints=true|false (BETA - 默认值=true) TopologyManagerPolicyAlphaOptions=true|false (ALPHA - 默认值=false) TopologyManagerPolicyBetaOptions=true|false (BETA - 默认值=true) TopologyManagerPolicyOptions=true|false (BETA - 默认值=true) TranslateStreamCloseWebsocketRequests=true|false (ALPHA - 默认值=false) UnauthenticatedHTTP2DOSMitigation=true|false (BETA - 默认值=true) UnknownVersionInteroperabilityProxy=true|false (ALPHA - 默认值=false) UserNamespacesPodSecurityStandards=true|false (ALPHA - 默认值=false) UserNamespacesSupport=true|false (ALPHA - 默认值=false) ValidatingAdmissionPolicy=true|false (BETA - 默认值=false) VolumeAttributesClass=true|false (ALPHA - 默认值=false) VolumeCapacityPriority=true|false (ALPHA - 默认值=false) WatchList=true|false (ALPHA - 默认值=false) WinDSR=true|false (ALPHA - 默认值=false) WinOverlay=true|false (BETA - 默认值=true) WindowsHostNetwork=true|false (ALPHA - 默认值=true) ZeroLimitedNominalConcurrencyShares=true|false (BETA - 默认值=false) 如果配置文件由 —config 指定,则忽略此参数。 |
—healthz-bind-address 0.0.0.0 默认值:0.0.0.0:10256 |
| 服务健康状态检查的 IP 地址和端口。 如果 —bind-address 未设置或设置为 IPv4,则默认为 “0.0.0.0:10256”。 如果 —bind-address 设置为 IPv6,则默认为 “[::]:10256”。 设置为空则禁用。如果配置文件由 —config 指定,则忽略此参数。 |
-h, —help |
| kube-proxy 操作的帮助命令。 |
—hostname-override string |
| 如果非空,将使用此字符串而不是实际的主机名作为标识。 如果不设置,节点名称假定为与节点的主机名相同。 |
—init-only |
| 如果设置为 true,则执行需要完整 root 权限才能执行的所有初始化步骤,然后退出。 完成此操作后,你可以仅使用 CAP_NET_ADMIN 权能再次运行 kube-proxy。 |
—iptables-localhost-nodeports 默认值:true |
| 如果设为 false,Kube-proxy 将禁用允许通过本地主机访问 NodePort 服务的传统行为, 这仅适用于 iptables 模式和 ipv4。本地主机的 NodePort 在其他代理模式或 IPv6 下是不允许的。 |
—iptables-masquerade-bit int32 默认值:14 |
| 在使用 iptables 或 ipvs 代理模式时,用来设置 fwmark 空间的 bit,标记需要 SNAT 的数据包。必须在 [0,31] 范围内。 |
—iptables-min-sync-period duration 默认值:1s |
| iptables 规则重新同步之间的最小间隔(例如 ‘5s’、’1m’、’2h22m’)。 值为 0 表示每次 Service 或 EndpointSlice 更改都会立即进行 iptables 重新同步。 |
—iptables-sync-period duration 默认值:30s |
| 表示各种重新同步和清理操作执行频率的时间间隔(例如 ‘5s’、’1m’、’2h22m’)。必须大于 0。 |
—ipvs-exclude-cidrs strings |
| 逗号分隔的 CIDR 列表,ipvs 代理在清理 IPVS 规则时不会此列表中的地址范围。 |
—ipvs-min-sync-period duration |
| ipvs 规则重新同步之间的最小间隔(例如 ‘5s’、’1m’、’2h22m’)。 值为 0 表示每次 Service 或 EndpointSlice 更改都会立即进行 ipvs 重新同步。 |
—ipvs-scheduler string |
| 代理模式为 ipvs 时所选的 ipvs 调度器类型。 |
—ipvs-strict-arp |
| 通过将 arp_ignore 设置为 1 并将 arp_announce 设置为 2 启用严格的 ARP。 |
—ipvs-sync-period duration 默认值:30s |
| 表示各种重新同步和清理操作执行频率的时间间隔(例如 ‘5s’、’1m’、’2h22m’)。必须大于 0。 |
—ipvs-tcp-timeout duration |
| 空闲 IPVS TCP 连接的超时时间,0 保持连接(例如 ‘5s’、’1m’、’2h22m’)。 |
—ipvs-tcpfin-timeout duration |
| 收到 FIN 数据包后,IPVS TCP 连接的超时,0 保持当前设置不变。(例如 ‘5s’、’1m’、’2h22m’)。 |
—ipvs-udp-timeout duration |
| IPVS UDP 数据包的超时,0 保持当前设置不变。(例如 ‘5s’、’1m’、’2h22m’)。 |
—kube-api-burst int32 默认值:10 |
| 与 kubernetes apiserver 通信的突发数量。 |
—kube-api-content-type string 默认值:”application/vnd.kubernetes.protobuf” |
| 发送到 apiserver 的请求的内容类型。 |
—kube-api-qps float32 默认值:5 |
| 与 kubernetes apiserver 交互时使用的 QPS。 |
—kubeconfig string |
| 包含鉴权信息的 kubeconfig 文件的路径(主控节点位置由 master 标志设置)。 |
—log-flush-frequency duration 默认值:5s |
| 日志清洗之间的最大秒数 |
—log_backtrace_at <“file:N” 格式的字符串> 默认值:0 |
| 当日志命中 file:N,触发一次堆栈追踪 |
—log_dir string |
| 如果非空,则在此目录中写入日志文件(当 —logtostderr=true 时不生效) |
—log_file string |
| 如果非空,使用此日志文件(当 —logtostderr=true 时不生效) |
—log_file_max_size uint 默认值:1800 |
| 定义日志文件可以增长到的最大大小(当 —logtostderr=true 时不生效)。 单位是兆字节。如果值为 0,则最大文件大小不受限制。 |
—logging-format string 默认值:”text” |
| 设置日志格式。允许的格式为:”text”。 |
—logtostderr 默认值:true |
| 日志输出到 stderr 而不是文件。 |
—machine_id_file string 默认值:”/etc/machine-id,/var/lib/dbus/machine-id” |
| 用来检查 Machine-ID 的文件列表,用逗号分隔。 使用找到的第一个文件。 |
—masquerade-all |
| 如果使用 iptables 或 ipvs 代理模式,则对通过 Service 集群 IP 发送的所有流量进行 SNAT。 这对某些 CNI 插件可能是必需的。 |
—master string |
| Kubernetes API 服务器的地址(覆盖 kubeconfig 中的相关值)。 |
—metrics-bind-address ipport 默认值:127.0.0.1:10249 |
| metrics 服务器要使用的 IP 地址和端口。 如果 —bind-address 未设置或设置为 IPv4,则默认为 “127.0.0.1:10249”。 如果 —bind-address 设置为 IPv6,则默认为 “[::1]:10249”。 设置为 “0.0.0.0:10249” / “[::]:10249” 可以在所有接口上进行绑定。 设置为空则禁用。如果配置文件由 —config 指定,则忽略此参数。 |
—nodeport-addresses strings |
| 一个包含有效节点 IP 的 CIDR 范围列表。 如果设置了,到 NodePort 服务的连接只会在节点 IP 在指定范围内时才会被接受。 如果不设置,则 NodePort 连接将在所有本地 IP 上被接受。 如果配置文件由 —config 指定,则忽略此参数。 |
—one_output |
| 如果为 true,则仅将日志写入其本身的严重性级别 (而不是写入每个较低的严重性级别;当 —logtostderr=true 时不生效)。 |
—oom-score-adj int32 默认值:-999 |
| kube-proxy 进程中的 oom-score-adj 值,必须在 [-1000,1000] 范围内。 如果配置文件由 —config 指定,则忽略此参数。 |
—pod-bridge-interface string |
| 一个桥接接口名称。当 —detect-local-mode 设置为 BridgeInterface 时, kube-proxy 会将源自此桥接的流量视为本地流量。 |
—pod-interface-name-prefix string |
| 一个接口名称前缀。当 —detect-local-mode 设置为 InterfaceNamePrefix 时, kube-proxy 会将源自名称以该前缀开头的所有接口的流量视为本地流量。 |
—profiling |
| 如果为 true,则通过 Web 接口 /debug/pprof 启用性能分析。 如果配置文件由 —config 指定,则忽略此参数。 |
—proxy-mode ProxyMode |
| 使用哪种代理模式:在 Linux 上可以是 ‘iptables’(默认)或 ‘ipvs’。 在 Windows 上唯一支持的值是 ‘kernelspace’。 如果配置文件由 —config 指定,则忽略此参数。 |
—show-hidden-metrics-for-version string |
| 要显示隐藏指标的先前版本。 仅先前的次要版本有意义,不允许其他值。 格式为 <major>.<minor>,例如 ‘1.16’。 这种格式的目的是确保你有机会注意到下一个发行版是否隐藏了其他指标, 而不是在之后将其永久删除时感到惊讶。 如果配置文件由 —config 指定,则忽略此参数。 |
—skip_headers |
| 如果为 true,则避免在日志消息中使用头部前缀。 |
—skip_log_headers |
| 如果为 true,则在打开日志文件时避免使用头部(当 —logtostderr=true 时不生效) |
—stderrthreshold int 默认值:2 |
| 当写入到文件或 stderr 时设置严重程度达到或超过此阈值的日志输出到 stderr (当 —logtostderr=true 或 —alsologtostderr=true 时不生效)。 |
-v, —v int |
| 设置日志级别详细程度的数值。 |
—version version[=true] |
| —version, —version=raw 打印版本信息并退出; —version=vX.Y.Z… 设置报告的版本。 |
—vmodule pattern=N,… |
| 以逗号分割的 pattern=N 设置的列表,用于文件过滤日志(仅适用于文本日志格式) |
—write-config-to string |
| 如果设置,将默认配置信息写入此文件并退出。 |