Kubelet自定义路径监视

时间:2018-07-12 15:51:55

标签: kubernetes ubuntu-16.04 kubelet

我正在运行kubernetes 1.8.5,并且想知道是否有一种方法可以告诉Kubelet监视主机上的/ var / lib / docker而不是/。

1 个答案:

答案 0 :(得分:0)

根据Kubelet documentation page

除了可以从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 stringkubeconfig文件的路径,该文件将   用于获取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为例):

  1. 编辑/usr/lib/systemd/syste/kubelet.service
  2. 重新启动Kubelet:

    systemctl daemon-reload  
    systemctl restart kubelet