我目前正在研究如何在 Docker Swarm 中为 Docker 容器提供有状态存储。我遇到了 vsphere storage for docker volume plugin (https://storagehub.vmware.com/t/vsphere-docker-volume-service/installation-6/)(https://github.com/vmware-archive/vsphere-storage-for-docker) 对我来说,这看起来很理想,因为我在 vSphere 中将主机作为虚拟机运行。
安装过程似乎涉及每个docker主机上的命令docker plugin install --grant-all-permissions --alias vsphere vmware/docker-volume-vsphere:latest
。据我所知,这是在主机上启动一个新容器,将插件授予主机。
但是,如果需要在群中的所有主机上运行容器,是否有办法将插件容器作为全局服务(如 K8s 中的守护进程集)运行,而不必在每个主机上安装插件?
当然,如果添加新主机,Docker Swarm 会自动在所有主机上运行容器,那将非常有利。另一方面,我可以看到一个问题,即全局服务甚至需要插件才能存在(例如使用网络插件)。
答案1
如果没有测试过的话,我本能地说,最好手动将其部署到每个主机,否则您可能会遇到问题,例如,如果您需要在停电或类似情况下从冷启动,正如您自己正确想到的那样!