0

我在 CoreOS 上有一个 DigitalOcean flexVolume。我正在关注 TonyZou 的CoreOS文档。

请注意,CoreOS 将 /usr 挂载为只读,因此您需要将 --volume-plugin-dir=/etc/kubernetes/volumeplugins 添加到 /etc/kubernetes/kubelet.env 中的 KUBELET_ARGS 并将插件放在那里。

使用 systemctl restart kubelet.service 重启 kubelet。

我在 /etc/kubernetes/kubelet.env 中创建文件,内容为:

KUBELET_ARGS=--volume-plugin-dir=/etc/kubernetes/volumeplugins

我的驱动程序在 /etc/kubernetes/volumeplugins 文件夹中。但是,使用 flexvolume 驱动程序的 pod 一直保持在 ContainerCreating 状态。不确定 kubelet.env 文件是否被 kubelet 拾取。有什么建议么?

4

2 回答 2

1

您可以将 /etc/kubernetes/kubelet.env 文件添加到您的 kubelet systemd 单元。就像是

EnvironmentFile=/etc/kubernetes/kubelet.env

这可以确保 kubelet 服务会获取您的 env 文件。

于 2017-04-26T15:15:49.450 回答
0

您的 kubelet 没有拾取kubelet.env.

  1. 如果你想手动运行 kubelet,你应该KUBELET_ARGS=--volume-plugin-dir=/etc/kubernetes/volumeplugins在你的 shell 环境中添加。

  2. 如果你想通过 systemd 运行 kubelet,你应该kubelet.env在你的 kubelet systemd 配置文件中添加并重新加载配置文件。

于 2017-05-21T06:33:00.877 回答