我正在运行kubernetes 1.8.5,并且想知道是否有一种方法可以告诉Kubelet监视主机上的/ var / lib / docker而不是/。
答案 0 :(得分:0)
除了可以从apiserver的PodSpec中获取容器清单之外,还可以通过三种方式将容器清单提供给Kubelet。
文件:在命令行中作为标志传递的路径。将定期监视此路径下的文件是否有更新。监视周期默认为20秒,可通过标志进行配置。
HTTP端点:在命令行上作为参数传递的HTTP端点。每20秒检查一次此端点(也可以使用标志进行配置)。
HTTP服务器:kubelet还可以侦听HTTP并响应简单的API(当前未经过规范)以提交新的清单。
“监视”是什么意思还不清楚,因此下面列出了Kubelet二进制文件的所有与路径相关的命令行参数:
--boot-id-file string
要检查的文件的逗号分隔列表 引导ID。使用存在的第一个。 (默认 “ / proc / sys / kernel / random / boot_id”)
--bootstrap-checkpoint-path string
指向目录所在路径 检查点已存储
--bootstrap-kubeconfig string
到kubeconfig
文件的路径,该文件将 用于获取kubelet的客户端证书。如果指定文件 由--kubeconfig
组成,不使用引导程序kubeconfig
向API服务器请求客户端证书。成功的话kubeconfig
文件引用了生成的客户端证书和密钥 被写入--kubeconfig
指定的路径。客户端 证书和密钥文件将存储在指向的目录中--cert-dir
。
--cert-dir string
TLS证书所在的目录。如果 提供了--tls-cert-file
和--tls-private-key-file
,此标志 将被忽略。 (默认/var/lib/kubelet/pki
)
--cloud-config string
云提供商配置的路径 文件。
--cni-bin-dir string
要在其中的目录的完整路径 搜索CNI插件二进制文件。默认值:/opt/cni/bin
容器提示文件的
--cni-conf-dir string
要在其中的目录的完整路径 搜索CNI配置文件。默认值:/etc/cni/net.d
--container-hints string
位置 (默认/etc/cadvisor/container_hints.json
)
--docker-tls-ca string
到受信任CA的路径(默认为ca.pem
)
--docker-tls-cert string
客户端证书的路径(默认cert.pem
)
--docker-tls-key string
到私钥的路径(默认为key.pem
)
--dynamic-config-dir string
Kubelet将使用此目录进行 检查点下载的配置和跟踪配置 健康。 Kubelet将创建此目录(如果尚未创建) 存在。该路径可以是绝对路径,也可以是相对路径。相对路径开始于 Kubelet的当前工作目录。提供此标志将启用 动态Kubelet配置。目前,您还必须启用DynamicKubeletConfig
功能闸将传递此标志。
--experimental-mounter-path string
[实验性]贴片机的路径 二进制保留空白以使用默认安装。
--init-config-dir string
Kubelet将在此目录中查找 初始化配置。该路径可以是绝对路径,也可以是相对路径。相对的 路径从Kubelet的当前工作目录开始。忽略这个 参数以使用内置的默认配置值。目前, 您还必须启用KubeletConfigFile
功能闸以通过此功能 标记。
--kubeconfig string
到kubeconfig文件的路径,指定如何 连接到API服务器。 (默认/var/lib/kubelet/kubeconfig
)
--lock-file string
kubelet用作锁的文件路径 文件。
--log-dir string
如果为非空,则在此目录中写入日志文件
--pod-manifest-path string
包含容器的目录的路径 要运行的清单文件,或单个pod清单文件的路径。 以点开头的文件将被忽略。
--resolv-conf string
解析器配置文件用作基础 用于容器DNS解析配置。 (默认/etc/resolv.conf
)
--rkt-path string
rkt二进制文件的路径。留空以使用第一个 $ PATH中的rkt。
--root-dir string
用于管理kubelet文件的目录路径(卷 坐骑等)。 (默认/var/lib/kubelet
)
--seccomp-profile-root string
seccomp配置文件的目录路径。 (默认/var/lib/kubelet/seccomp
)
--tls-cert-file string
包含用于以下目的的x509证书的文件 服务HTTPS(带有中间证书(如果有),在 服务器证书)。如果--tls-cert-file
和--tls-private-key-file
是 如果未提供,则会为 公用地址并保存到传递到--cert-dir
的目录中。
--tls-private-key-file string
包含x509私钥的文件 匹配--tls-cert-file
。
您可以通过在Kubelet启动期间为--config
提供一个config file参数来设置Kubelet配置。
要修改现有的Kubelet参数(以CentOS为例):
重新启动Kubelet:
systemctl daemon-reload
systemctl restart kubelet