码头工人集群的创建与管理实例详解

  

本文详细讲述了码头工人集群的创建与管理。分享给大家供大家参考,具体如下:

  

在《码头工人简单安装与应用入门教程》中编写一个应用程序,并将其转化为服务,在《码头工人分布式应用教程》中,使应用程序在生产过程中扩展5倍,并定义应该如何运行。现在将此应用程序部署到集群上,并在多台机器上运行它,通过将多台机器连接到<强> 集群上,使多容器,多机器应用成为可能。

  

码头工人集群的创建与管理实例详解

  

群(集群)是运行码头工人并加入到一个集群中的一组机器,在这种情况下,您将继续运行以往的码头工人命令,但是现在它们将由群经理(集群管理器)在集群上执行。集群中的机器可以是物理的或虚拟的,加入集群后,它们被称为节点(节点)。集群管理器可以使用多种策略来运行容器,比如空旷节点(最空的节点),它使用容器填充最少使用的机器。或者全球(全局),它确保了每台机器只能得到指定容器的一个实例。您可以指示集群管理器在组成文件中使用这些策略,就像您已经使用的策略一样。

  

集群管理器是集群中唯一可以执行命令的机器,或者授权其他机器作为工人工(人)加入集群。工人只是在那里提供能力,并没有权力告诉任何其他机器可以做什么和不可以做什么,到目前为止,您已经在本地机器上以单主机模式使用码头工人,但是码头工人也可以切换到集群模式,这就是使用集群的原因。当立即启用集群模式使当前机器成为集群管理器时,码头工人将运行您正在管理的集群上执行的命令,而不仅仅是在当前的机器上。

  

  

一个集群由多个节点组成,可以是物理机或虚拟机,做法很简单,运行<代码>码头工人群init 来启用集群模式,并让你的当前机器成为集群管理器,然后在其他机器上运行<代码>码头工人群加入>   

接下来使用虚拟机快速创建一个集群,需要一个可以创建虚拟机(vm)的虚拟机管理程序,在机器上安装甲骨文VirtualBox应用程序。如果是Windows 10系统,而且安装了hyper - v,则无需安装VirtualBox,而应该使用hyper - v。

  

现在,使用<代码> docker-machine 创建几个虚拟机,使用VirtualBox驱动程序:

        virtualbox myvm1 docker-machine创建美元——驱动程序   virtualbox myvm2 docker-machine创建美元——驱动程序      之前      

您现在创建了两个名为myvm1和myvm2的虚拟机,使用下面命令列出机器并获取其IP地址:

        美元docker-machine ls      之前      

第一台机器将作为管理员,执行管理命令,认证工人加入群体,第二台机器将成为工人。可以使用<代码> docker-machine ssh将命令发送到虚拟机,执行<代码>码头工人群init 使myvm1成为集群管理器:

        美元docker-machine ssh myvm1“码头工人群init - advertise-addr & lt; myvm1的ip>”      之前      

在执行<代码>码头工人群init 后,响应中会包含一个预配置的<代码>码头工人群加入命令,您可以在要添加的任何节点上运行该命令。复制这个命令,并通过<代码> docker-machine ssh> 强的虚拟机,让作为工人加入新的集群:

        美元docker-machine ssh myvm2“码头工人群加入——令牌& lt; token>& lt; ip>: 2377”      之前      

将myvm2加入集群时,端口号要选择2377年,因为端口2376是码头工人守护进程端口,不要使用此端口,否则可能会遇到错误。在管理器上运行ls <代码>码头工人节点以查看集群中的节点:

        美元docker-machine ssh myvm1“码头工人节点ls”      之前      

现在集群己经创建完成,如果想要删除集群,可以使用码头工人群离开在每个节点运行。

  

  

现在只要重复《码头工人分布式应用教程》中使用的过程来部署新的集群,只要记住,只有像myvm1这样的集群管理器才能执行码头工人命令,工人只是干活的。

  

到目前为止,您已经在<代码> docker-machine ssh> docker-machine env & lt; machine> 码头工人集群的创建与管理实例详解