Kubelet
配置项
配置说明
基本配置项
选项 | 说明 |
--address ip | kubelet 监听地址,默认 |
--allow-privileged | 如果值为 |
--cadvisor-port int32 | 指定 cAdvisor 端口, 默认 |
--cluster-dns stringSlice | 指定集群 DNS 服务地址列表,通过逗号分隔,用于 Pod 设置项 |
--cpu-cfs-quota | 启用 CPU CFS 配额用于容器 CPU 资源限制,默认 |
--kubeconfig string | kubeconfig 文件路径, 指定如何连接 API server。除非 |
--http-check-frequency duration | http check 时间间隔,默认 |
--kube-api-burst int32 | Burst 用于 kubelet 与 apiserver 通信限制,默认 |
--kube-api-content-type string | 指定发送请求给 apiserver 的通信内容类型,默认 |
--kube-api-qps int32 | QPS 用于 kubelet 与 apiserver 通信限制,默认 |
--max-pods int32 | 当前 Kubelet 节点上可以运行的最大 pod 数,默认 |
--max-open-files int | kubelet 进程最大打开文件句柄数, 默认 |
--node-labels mapStringString | <警告:Alpha 特性> 当启动时注册到 apiserver 的标签,标签必须 |
--pod-infra-container-image string | pod 中容器共享的 |
--port int32 | kubelet 监听端口,默认 |
--require-kubeconfig | 如果设置为 |
-read-only-port int32 | kubelet 只读端口,一般用于 metrics 信息获取,设置为 0 表示禁用,默认 |
--resolv-conf string | DNS 解析文件指定,默认为 |
--root-dir string | 用于管理 kubelet 文件(volume mounts 等)目录路径,默认 |
认证配置项
选项 | 说明 |
--anonymous-auth | 启用对 kubelet 服务的匿名请求,匿名请求的用户名为 |
--authorization-mode string | kubelet 授权方式,可用选项包括 |
--bootstrap-kubeconfig string | Path to a kubeconfig file that will be used to get client certificate for kubelet. If the file specified by --kubeconfig does not exist, the bootstrap kubeconfig is used to request a client certificate from the API server. On success, a kubeconfig file referencing the generated client certificate and key is written to the path specified by --kubeconfig. The client certificate and key file will be stored in the directory pointed by --cert-dir. |
--cert-dir string | TLS certs 证书目录,如果同时指定 |
--client-ca-file string | If set, any request presenting a client certificate signed by one of the authorities in the client-ca-file is authenticated with an identity corresponding to the CommonName of the client certificate. |
--tls-cert-file string | 包含 x509 证书的文件路径,用于提供 HTTPS 服务,如果未提供 |
--tls-private-key-file string | 包含 X509 匹配 |
日志配置项
选项 | 说明 |
--alsologtostderr | 日志输出到文件同时输出到 stderr |
--log-backtrace-at traceLocation | when logging hits line file:N, emit a stack trace (default |
--log-cadvisor-usage | 记录 cadvisor 运行日志 |
--log-dir string | 如果非空,则输出日志到指定目录 |
--log-flush-frequency duration | 日志刷新的最大间隔秒数,默认 |
--logtostderr | 日志输出到标准错误输出而不是文件,默认值为 |
--stderrthreshold severity | 超过此阈值的日志将转到 stderr,默认为 |
-v, --v Level | log level for V logs |
Docker 配置项
选项 | 说明 |
--container-runtime string | 选择容器运行类型, |
--docker string | docker endpoint 设置,默认为 |
--docker-disable-shared-pid | 当使用 Docker 1.13.1 或更高版本运行时,容器运行时接口(CRI)针对一个 pod 中的容器间默认为共享 PID 命名空间。通过设置此标志可以达到 pod 间容器 PID 命名空间互相隔离。此功能将在未来的 Kubernetes 版本中被删除 |
--docker-endpoint string | 同 |
--docker-exec-handler string | 容器中执行命令 Handler 指定,有 |
--docker-only | 除了根信息统计之外,只报告 docker 容器统计数据 |
镜像配置项
选项 | 说明 |
--image-gc-high-threshold int32 | 当磁盘使用率达到该百分比后会一直运行镜像 GC 机制,默认 |
--image-gc-low-threshold int32 | 在磁盘使用率没有达到该百分比之前,不触发镜像 GC 机制,默认 |
--image-pull-progress-deadline duration | 如果指定时间 pull 镜像没有任何进度,则取消 pull,默认 |
--minimum-image-ttl-duration duration | 在镜像 GC 之前未使用的镜像最小时间值。 例如 |
--registry-burst int32 | 最高 pull 数限制, 实际值依然受 |
--registry-qps int32 | 如果 > 0, 限制 registry pull QPS 为指定值,如果为 0, 则不限制,默认 |
--serialize-image-pulls | 一次只 pull 一个镜像。在 docker daemon 版本 < 1.9 或者使用 Aufs 存储驱动的时候不建议修改默认值。具体可以参见 Issue #10959,默认 |
网络配置项
选项 | 说明 |
--cni-bin-dir string | <警告: Alpha 特性> 指定搜索 CNI plugin binaries 的目录绝对路径,默认 |
--cni-conf-dir string | <警告: Alpha 特性> 指定搜索 CNI 配置文件的目录绝对路径,默认 |
--network-plugin string | <警告: Alpha 特性> 指定网络插件名称,如 |
--network-plugin-mtu int32 | <警告: Alpha 特性> 通过网络插件传值 MTU,覆盖系统默认值。 如果设置为 0 则默认使用 |
Volume 卷配置项
选项 | 说明 |
--enable-controller-attach-detach | 启用 |
--keep-terminated-pod-volumes | 在 pod 终止后,将终止的 pod 卷在节点保留,可用于调试卷相关的问题 |
--volume-plugin-dir string | <警告: Alpha 特性> 指定搜索其他第三方卷插件的目录绝对路径 ,默认 |
--volume-stats-agg-period duration | 指定 kubelet 所有 pod 统计以及缓存卷磁盘使用率的时间间隔。如果要禁用,设置该值为 0 即可,默认 |
cgroup/namespace 配置项
选项 | 说明 |
--cgroup-driver string | kubelet 操作主机 cgroups 驱动选择, |
--cgroup-root string | 针对 pod 可选项 root cgroup,默认 |
--cgroups-per-qos | Enable creation of QoS cgroup hierarchy, if true top level QoS and pod cgroups are created. 默认 |
--host-ipc-sources stringSlice | 指定允许使用主机 ipc namespace pod 列表,默认 |
--host-network-sources stringSlice | 指定允许使用 host network 的 pod,默认 |
--host-pid-sources stringSlice | 指定允许使用主机 pid namespace pod 列表,默认 |
--kube-reserved-cgroup string | Absolute name of the top level cgroup that is used to manage kubernetes components for which compute resources were reserved via '--kube-reserved' flag. Ex. '/kube-reserved'. 默认 |
--kubelet-cgroups string | Optional absolute name of cgroups to create and run the Kubelet in. |
--runtime-cgroups string | Optional absolute name of cgroups to create and run the runtime in. |
--system-cgroups / | Optional absolute name of cgroups in which to place all non-kernel processes that are not already inside a cgroup under /. Empty for no container. Rolling back the flag requires a reboot. |
--system-reserved-cgroup string | Absolute name of the top level cgroup that is used to manage non-kubernetes components for which compute resources were reserved via '--system-reserved' flag. Ex. '/system-reserved'. 默认 |
cgroup 相关选项有些笔者没有深入相关调研,建议使用默认值即可
event 配置项
选项 | 说明 |
--event-burst int32 | Maximum size of a bursty event records, temporarily allows event records to burst to this number, while still not exceeding event-qps. Only used if --event-qps > 0 (default 10) |
--event-qps int32 | If > 0, limit event creations per second to this value. If 0, unlimited. (default 5) |
--event-storage-age-limit string | Max length of time for which to store events (per type). Value is a comma separated list of key values, where the keys are event types (e.g.: creation, oom) or "default" and the value is a duration. Default is applied to all non-specified event types (default "default=0") |
--event-storage-event-limit string | Max number of events to store (per type). Value is a comma separated list of key values, where the keys are event types (e.g.: creation, oom) or "default" and the value is an integer. Default is applied to all non-specified event types (default "default=0") |
event 配置项笔者也没有进行相关设置,建议使用默认值即可
Pod eviction
配置项
eviction
配置项选项 | 说明 |
--eviction-soft string | pod eviction 阈值软限制(例如 |
--eviction-soft-grace-period string | 设置 eviction grace periods(例如 |
--eviction-max-pod-grace-period int32 | 当达到 pod eviction 软阈值的时候,terminating pods 最长允许的 grace period (in seconds)。如果为负数, 则取决于 pod 实际指定的值。默认全局的一个 grace period 为 |
--eviction-hard string | pod eviction 阈值硬限制(例如 |
--eviction-minimum-reclaim string | 最小回收值设置,(例如 |
--eviction-pressure-transition-period duration | 在转移 eviction pressure 条件前,kubelet 需要等待的时间,默认 |
关于 kubelet eviction 策略可参考:
推荐配置项
/etc/kubernetes/kubelet
最后更新于