容器化单节点kubernetes集群的秘密

时间:2016-02-08 18:38:40

标签: docker kubernetes

众所周知,秘密不适用于容器化的kubernetes集群((https://github.com/kubernetes/kubernetes/blob/master/docs/getting-started-guides/docker.md)。为此记录了几个错误(例如:https://github.com/kubernetes/kubernetes/issues/18239)。

但是,由于Docker 1.10允许共享/从属传播,因此该问题应该在技术上得到解决。但是,我无法让它工作。

我尝试更改单节点docker命令,如下所示:

docker run \
 --restart=always \
 --volume=/:/rootfs:ro \
 --volume=/sys:/sys:ro \
 --volume=/dev:/dev \
 --volume=/var/lib/docker/:/var/lib/docker:shared \
 --volume=/var/lib/kubelet/:/var/lib/kubelet:shared \
 --volume=/var/run:/var/run:shared \
 --net=host \
 --pid=host \
 --privileged=true \
 -d \
 gcr.io/google_containers/hyperkube-amd64:v${K8S_VERSION} \
 /hyperkube kubelet \
  --containerized \
  --hostname-override="127.0.0.1" \
  --address="0.0.0.0" \
  --api-servers=http://localhost:8080 \
  --config=/etc/kubernetes/manifests \
  --cluster-dns=10.0.0.10 \
  --cluster-domain=cluster.local \
  --allow-privileged=true \
  --v=10

请注意共享安装传播设置。当我这样做时,我得到错误:

  

docker:来自守护程序的错误响应:无法启动容器   f7a5ae3d3e88b02ba42544ec768050717c942bc62889175171e6ebb3f89a1a6c:路径   / var / run挂载在/ run上,但它不是共享挂载..

我试图在一个流浪者盒子上的Unbutu信任上做这件事。我使用的是docker版本1.10.0和容器化的hyperkuber版本v1.2.0-alpha.7。

我在这里缺少什么?如果我使用原始 rw 回滚共享设置,则会收到错误消息:无法安装pod 的卷 IsLikelyNotMountPoint 错误。< / p>

更新

嘿,伙计们,我想我想出来了(至少对于单节点集装箱化的kubernetes环境而言)。我遵循的步骤是:

mkdir -p /var/lib/kubelet mount -o bind /var/lib/kubelet /var/lib/kubelet mount --make-shared /var/lib/kubelet

和实际命令

docker run \ --restart=always \ --volume=/:/rootfs:ro \ --volume=/sys:/sys:ro \ --volume=/dev:/dev \ --volume=/var/lib/docker/:/var/lib/docker:rw \ --volume=/var/lib/kubelet/:/var/lib/kubelet:shared \ --volume=/var/run:/var/run:rw \ --net=host \ --pid=host \ --privileged=true \ -d \ gcr.io/google_containers/hyperkube-amd64:v${K8S_VERSION} \ /hyperkube kubelet \ --hostname-override="127.0.0.1" \ --address="0.0.0.0" \ --api-servers=http://localhost:8080 \ --config=/etc/kubernetes/manifests \ --cluster-dns=10.0.0.10 \ --cluster-domain=cluster.local \ --allow-privileged=true --v=10

我正在使用kubernetes版本v1.2.0.alpha.7。另请注意,在main命令中,我添加了 shared mount并删除了“containerized”参数。另外,我使用的是最新版本的Docker(1.10)

0 个答案:

没有答案