关于我的环境背景:
我在3个Ubuntu 14.04 Vagrant虚拟机上运行Docker Swarm。Swarm主节点在1台机器上(带有Consul),另外2台机器运行Swarm工作节点并加入到主节点。我按照文档页面https://docs.docker.com/swarm/install-manual/设置了环境。从我的主节点运行任何docker -H :4000 <some_docker_command>
都能正常工作。服务发现已经激活,因为我在我的两个工作节点上运行了gliderlabs/registrator容器。Swarm会在大约30秒内显示集群中的任何更改,例如节点或容器故障(在我看来有点慢,但至少它还能工作)。
问题:
Swarm将我的两个节点都识别为“ubuntu-14”。
vagrant@ubuntu-14:~$ docker -H :4000 ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a6972155d243 cohenaj194/apache-simple "/usr/sbin/apache2ctl" About an hour ago Up 13 seconds 172.28.128.6:32770->80/tcp ubuntu-14/test2
af78a8c788ed gliderlabs/registrator "/bin/registrator con" 2 hours ago Up About an hour ubuntu-14/registrator2
8e39416a785a gliderlabs/registrator "/bin/registrator con" 2 hours ago Up 2 hours ubuntu-14/registrator1
27c2225b32fb cohenaj194/apache-simple "/usr/sbin/apache2ctl" 2 hours ago Up 2 hours 172.28.128.4:32770->80/tcp ubuntu-14/test1
vagrant@ubuntu-14:~$ docker -H :4000 network ls
NETWORK ID NAME DRIVER
38b24dc5615b ubuntu-14/bridge bridge
c4e1ffae2fa7 ubuntu-14/bridge bridge
29cf499e57ab ubuntu-14/host host
7b4a4a153ada ubuntu-14/host host
723b6bc6f23c ubuntu-14/none null
01f3647d62cd ubuntu-14/none null
我想知道如何手动将节点的名称从“ubuntu-14”更改为其他内容。我希望能够通过向
/etc/default/docker
文件添加一行来设置标签,因为我最终将在私有云中运行我的集群,该云与其他云提供商(如AWS)类似,没有设置实例标签的方法。简而言之:我有3个vagrant ubuntu盒子运行swarm(1个主节点+2个工作节点)。默认情况下,工作节点的标签名为“ubuntu-14”,我想通过在每个工作节点上添加一些内容到
/etc/default/docker
文件来手动更改标签名。我应该添加什么?
sudo hostnamectl --no-ask-password set-hostname [你想要更改的名称]
。 - SomeoneElse