Docker入门之Docker Swarm

本文介绍了Docker Swarm,作为Docker的内置集群管理工具,它提供了高性能、灵活的容器调度和服务持续可用性。Swarm将多台Docker主机转换为单一虚拟主机,并支持原生的Docker API和多主机网络等功能。文章详细讲解了Swarm的基本概念,如管理节点、工作节点、任务和服务,并通过实践操作展示了如何创建Swarm集群、弹性伸缩、部署服务和设置图形化界面。
摘要由CSDN通过智能技术生成

一 Docker Swarm简介

Swarm 在 Docker 1.12 版本之前属于一个独立的项目,在 Docker 1.12 版本发布之后,该项目合并到了 Docker 中,成为 Docker 的一个子命令。

Swarm 是 Docker 社区提供的唯一一个原生支持 Docker 集群管理的工具。

Swarm可以把多个 Docker 主机组成的系统转换为单一的虚拟 Docker 主机,使得容器可以组成跨主机的子网网络。

Docker Swarm 是一个为 IT 运维团队提供集群和调度能力的编排工具

 Docker Swarm 优点

任何规模都有高性能表现

灵活的容器调度

服务的持续可用性

和 Docker API 及整合支持的兼容性

Docker Swarm 为 Docker 化应用的核心功能(诸如多主机网络和存储卷管理)提供原生支持。

docker swarm 相关概念

节点分为管理 (manager) 节点和工作 (worker) 节点

任务 (Task)是 Swarm 中的最小的调度单位,目前来说就是一个单一的容器。

服务 (Services) 是指一组任务的集合,服务定义了任务的属性。

二 Docker Swarm实践

1 创建 Swarm 集群

初始化集群:    docker swarm init

[root@server1 ~]# docker swarm init 

根据提示在其他docker节点上执行命令:

[root@server2 ~]# docker swarm join --token SWMTKN-1-5ipfg3qp4zqy5stlm19lq5w5xi8g9rwaqzcq31uc7gu8e5udjy-ekevu055fxp4kf700sjscaem4 172.25.7.1:2377
This node joined a swarm as a worker.
[root@server3 ~]# docker swarm join --token SWMTKN-1-5ipfg3qp4zqy5stlm19lq5w5xi8g9rwaqzcq31uc7gu8e5udjy-ekevu055fxp4kf700sjscaem4 172.25.7.1:2377
This node joined a swarm as a worker.
[root@server4 ~]# docker swarm join --token SWMTKN-1-5ipfg3qp4zqy5stlm19lq5w5xi8g9rwaqzcq31uc7gu8e5udjy-ekevu055fxp4kf700sjscaem4 172.25.7.2:2377
This node joined a swarm as a worker.

 把server2升为manager,把server1降级

[root@server1 ~]# docker node promote  server2
Node server2 promoted to a manager in the swarm.

[root@server1 ~]# docker node demote server1
Manager server1 demoted in the swarm.

 把配置文件docker.conf传到其他节点

[root@server1 sysctl.d]# scp docker.conf server2:/etc/sysctl.d/
docker.conf                                   100%   80   114.6KB/s   00:00    
[root@server1 sysctl.d]# scp docker.conf server3:/etc/sysctl.d/
docker.conf                                   100%   80   114.2KB/s   00:00    
[root@server1 sysctl.d]# scp docker.conf server4:/etc/sysctl.d/
The authenticity of host 'server4 (172.25.7.4)' can't be established.
ECDSA key fingerprint is SHA256:W+53+laKT65G9xA9YPq/6F3WxJ9khpZTk5RKUjU9f04.
ECDSA key fingerprint is MD5:51:7b:a6:bf:ca:d0:6b:b8:76:69:5f:0d:90:5d:e0:92.
Are you sure you want to 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值