Docker swarm:如何手动设置节点名称?

2024-02-21

有关我的环境的一些背景:

我有 docker swarm 在 3 个 ubuntu 14.04 vagrant 盒子上运行。 swarm master 在一台机器上运行(带有 consul),另外 2 台机器正在运行加入到 master 的 Swarm Worker。我按照文档页面设置了环境https://docs.docker.com/swarm/install-manual/ https://docs.docker.com/swarm/install-manual/。它工作正常,因此任何docker -H :4000 <some_docker_command>从我的主机上运行效果很好。当我运行时,服务发现处于活动状态滑翔机实验室/注册员我的两个工人身上都有容器。对我的集群的任何更改(例如节点或容器故障)都会在大约 30 秒内由 swarm 显示(我认为这有点慢,但至少它可以工作)。

问题:

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 等其他云提供商那样设置实例标签。

tldr:我有 3 个运行 swarm 的 vagrant ubuntu 盒子(1 个 master + 2 个worker)。默认情况下,工作人员的标签名称为“ubuntu-14”,我想通过向/etc/default/docker为每个工人建立档案。我要添加什么?


解决方案

## change the hostname
hostname myname
## restart docker
sudo service docker restart

我刚刚通过编辑更改了我的流浪盒的主机名/etc/hostname文件并将 ubuntu-14 更改为 master、worker1 或worker2。然后我重新启动了我的机器,还必须在每台机器上重新启动 docker 服务sudo service docker restart。我还销毁了我的旧容器并再次运行它们,我不确定这一步是否必要,但我这样做是为了很好的措施。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker swarm:如何手动设置节点名称? 的相关文章

随机推荐

  • Python - SQLite JSON1 加载扩展

    我想在 Python 中使用 SQLite 的 json1 扩展 根据官方文档 http sqlite org json1 html 它应该是一个可加载的扩展 我从以下位置获取了 json1 c 文件source http sqlite o
  • 在Python中解压文件

    我通读了zipfile文档 https docs python org 3 library zipfile html 但不明白如何unzip一个文件 仅介绍如何压缩文件 如何将 zip 文件的所有内容解压缩到同一目录中 import zip
  • Haskell:在更新函数中引用先前更新的列表元素

    假设我有以下定义 data Book Book id Int title String type Shelf Book 假设我有一个假设的功能 upd用于更新 updShelf Shelf gt Shelf updShelf all boo
  • OSGI环境中单例的迁移解决方案

    我正在 Java EE 环境中工作 其中每个应用程序都位于其自己的 war 文件中 在每个应用程序 war 文件的 WEB INF lib 中 有一个由所有应用程序共享的公共 jar 这个公共 jar 包含几个可以从代码中的许多点访问的单例
  • 从 HashMap 获取值时为什么需要双 & 符号?

    我在 Rust 中的引用方面遇到了一些麻烦 我有以下无法编译的代码 use std collections HashMap fn main let mut map HashMap new map insert 0 0 map insert
  • 按发布降序显示帖子

    我正在尝试测试 Firebase 以允许用户使用以下方式发表评论push 我想用以下内容显示我检索到的数据 fbl child sell limit 20 on value function fbdata handle data displ
  • 当向 RecyclerView ListAdapter 提交新列表时,差异检查始终为 areContentsTheSame() 返回 true

    我正在使用 MVVM 架构来构建一个简单的订购应用程序 我在 ProductsFragment 中使用 RecyclerView 来列出所有可以订购的产品 我还在我的 ViewModel 中使用 LiveData 并在我的 Fragment
  • 满足我需求的强制门户

    我正在为我的组织寻找强制门户 我看到很多这样的应用程序将允许用户在 a 输入凭据或 b 付款后通过 我正在寻找的东西有点不同 让我介绍一些有关我的系统的基础知识 我正在使用活动目录和内部 DNS 运行基于 Windows 的网络 我有一个内
  • jquery Flexslider 手动控件不起作用

    我正在尝试为 flexslider 插件实现手动控制 这是我的代码 div class container div class columns row div class flexslider ul class slides li styl
  • 从 Flask-sqlalchemy 中的连接查询读取

    成功连接两个数据库表后 我尝试通过寻址第一个表来读取第二个表中的数据 我正在致辞opinion topic name来自我的 jinja2 模板 但没有返回任何内容 如何从连接的查询中访问 Topic topic name 值 view m
  • 内联图像未从 GatsbyJS 中的 markdown 文件正文加载

    我正在尝试使用 gatsby remark images 在我的 markdown 文件中使用内联图像 不幸的是 该图像无法加载到我的本地主机上 我不知道这是否只是语法错误 或者我错过了一些重大的东西 这是config https gith
  • __iter__ 是如何工作的?

    尽管阅读了它 但我仍然不太明白如何 iter 作品 一个简单的解释是什么 我见过def iter self return self 我不知道这是如何工作的 也不知道这是如何工作的步骤 我可以简单地说 iter 在类上定义一个方法 该方法将返
  • JXTable 列排序在 1.0 和 1.6 之间发生变化

    自从我们更新到 JDK1 6 以来 我最近将应用程序中的 SwingX 库从版本 1 0 更新到了 1 6 2 我知道排序已更改为重新使用 JDK 1 6 中引入的一些核心 JDK 组件 但是 在版本 1 0 中 可以通过单击标题对列进行排
  • 为什么相同时间的 Unix 时间戳在不同时区不同

    Why 7 18 2013 11 33GMT 时区和我当地的时区 亚洲 加尔各答 是否不同 由于 Unix 时间戳是自纪元时间以来计算的刻度1 1 1970 00 00 00 GMT所以我知道纪元时间在不同时区的不同间隔发生 但仍然如此 经
  • 在 C++ 11 中创建动态二维矩阵的好方法

    我已经知道如何使用创建动态二维矩阵new并使用释放它delete 由于 C 11 具有许多新的内存功能 例如unique ptr array容器等 创建 2D 矩阵的一种好方法是什么 这样就不需要显式地使用释放矩阵delete操作员 最简单
  • Laravel 5 不从点 ENV 文件读取值

    我不知道这个问题是否相关 LARAVEL 5 仍处于开发阶段 在观看了有关 LARAVEL 5 新功能的 Laracast 视频之一后 我已经拉取了 LARAVEL 5 我迫不及待地等待它的正式发布 我命名了本地环境dot文件为 env l
  • 如果我在一个类中有多个测试并且前面的测试失败,我如何让它跳过或退出该类而不是测试其余的测试?

    我将 Python 与 Selenium 和 unittest 结合使用 我在一堂课中有四个测试 因为它们都是相关的单元测试 如果前面的测试失败 如何让它跳过下一个测试 我已经阅读了unittest的skip方法的所有文档 但没有一个正是我
  • 显示事件的典型 uml 图

    我有几个模块 他们通过事件相互交流 通常使用什么 UML 图来显示这一点 人们使用非 uml 图吗 有什么例子吗 我想你肯定想要一个顺序图 http en wikipedia org wiki Sequence diagram按顺序显示模块
  • Laravel Eloquent 截断数据类型 double

    Laravel 截断 double 类型的值 值 3 539363636363637 显示为3 5393636363636 我这样做 e Enrollment find 173 dd e gt value show 3 5393636363
  • Docker swarm:如何手动设置节点名称?

    有关我的环境的一些背景 我有 docker swarm 在 3 个 ubuntu 14 04 vagrant 盒子上运行 swarm master 在一台机器上运行 带有 consul 另外 2 台机器正在运行加入到 master 的 Sw