ubuntu单(双)机版Swarm安装及试用


Swarm – Docker的调度工具

简介

  • Swarm是一个由Docker研发团队开发的调度工具,可以使用标准的Docker 应用编程接口。
  • Swarm有三个核心概念:节点服务任务
    1. 节点是已加入Swarm的Docker引擎的实例
    2. 服务是在Worker节点上执行的
    3. 任务是在Docker容器中执行的命令

一、安装docker

安装docker是安装Swarm的准备工作,安装命令如下:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

安装成功效果如下:
在这里插入图片描述

安装成功后,检查Docker的安装是否正确:

$docker info

在这里插入图片描述

二、安装Swarm单机版

1.拉取swarm镜像

拉取swarm镜像的命令为:

$docker pull swarm

最后一行显示信息 Status: Downloaded newer image for swarm:latest,说明拉取成功。
在这里插入图片描述

2.搭建Swarm环境

初始化Swarm的命令为:

$docker swarm init

执行该命令后,获取全球唯一的 token,作为Swarm环境的唯一标识,效果如下:
在这里插入图片描述

3.确认Swarm单机版搭建是否成功

在ubuntu上执行的命令为:

$docker ps -a

显示如下信息,表明Swarm单机版启动成功。
在这里插入图片描述

三、安装Swarm双机版

1.新结点加入Swarm

在新节点主机slave01上执行:

docker swarm join --token 
SWMTKN-1-21th3y371uzbt1eebdrb72yk7l2y1ljrzz0oy1qmpbhg1s0frb-b42lgqwhcsn1ozuvys5xh534n 
192.168.149.128:2377

运行结果如下:
在这里插入图片描述
运行结果最后一句This node joined a swarm as a worker.表明节点主机slave01worker的身份加入swarm

2.启动管理机

在管理机上执行:

$docker run -d -p 2378:2377 swarm manage token://SWMTKN-1-
21th3y371uzbt1eebdrb72yk7l2y1ljrzz0oy1qmpbhg1s0frb-b42lgqwhcsn1ozuvys5xh534n

运行结果如下:
在这里插入图片描述

3.确认双机版搭建是否成功

在管理机上执行:

$docker ps -a

显示如下信息,表明管理机启动成功。
在这里插入图片描述
在管理机上执行docker -H 192.168.149.128:2378 info查看集群详细信息,下图列出了每个节点名、配置信息等。
在这里插入图片描述
上图中红框标出的
Managers: 1
Nodes: 2
表示有2个节点(Node),1个管理节点(Managers)。

至此,通过swarm搭建docker双机版完成!

四、在Swarm双机版部署服务

1.部署服务到Swarm双机版

搭建swarm双机版后,部署服务到Swarm双机版。
部署服务时,在swarm-manager节点上创建一个名为 helloworld 的服务,指派给一个工作节点:

$docker service create --replicas 1 --name helloworld alpine ping docker.com

该命令的参数解释:

  • –replicas:service运行的实例个数
  • –name: 命名service为helloword
  • alpine ping docker.com: 定义此service为,在 Alpine Linux容器中,执行ping http://docker.com

在这里插入图片描述

2.查看服务部署情况

查看 helloworld 服务运行在哪个节点上,可以看到目前是在 swarm-worker 节点:

$ docker service ps helloworld

在这里插入图片描述
查看 helloworld 部署的具体信息:

$docker service inspect --pretty helloworld

在这里插入图片描述

3.扩展服务到多节点

将上述的 helloworld 服务扩展到2个节点。

$docker service scale helloworld=2

在这里插入图片描述
从下图可以看到,服务从1个节点扩展到2个节点。
在这里插入图片描述

总结及展望

本文介绍了ubuntu单机版Swarm安装及试用,并进一步实现了Swarm双机版的安装和服务部署。

Swarm作为Docker的调度工具,通过自动故障转移来处理错误,并且当一个实例不足以处理或计算数据时,能够扩展容器来解决问题。 Swarm的主要任务是负责在最合适的主机上启动容器,并且将它们关联起来。

我将Swarm从单机版升级为双机版,下一步尝试安装Swarm集群
Swarm集群由管理节点(manager)和工作节点(work node)构成,如下图所示。

  • swarm manager:负责整个集群的管理工作包括集群配置、服务管理等所有跟集群有关的工作。
  • work node:即图中的 available node,主要负责运行相应的服务来执行任务(task)。
    在这里插入图片描述
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值