docker swarm是一个docker集群管理的应用,类似应用还有很多,只是这个直接集成在1.12的docker版本中

主要继承了swarm的集群安全特性

K-V存储

swarmkit的节点分为两类

worker 工作节点

用于接受管理节点的机器,执行命令执行容器任务,

manager 管理节点,

用来接收用户的命令请求,调整群集状态,分配容器拥有最高权限

两个节点状态可以随意切换,manager为了实现高可用,需要两台以上才可以 

----------------------------------------------------------------------------------------------------------------

swarm是通过主机名跟域名互相通信

所以有条件可以使用DNS

简单的直接修改hosts文件即可

swarm需要开启一些端口

TCP,2377 群集管理端口

TCP/UDP   7946节点通讯端口   4789 overlay网络通讯端口

centos 7里面的keyboard的后缀是什么啊_docker


for i in 1 2 3 ; do ssh node$i  firewall-cmd --add-port=2377/tcp ; done

    for i in 1 2 3 ; do ssh node$i  firewall-cmd --add-port=7946/tcp ; done

    for i in 1 2 3 ; do ssh node$i  firewall-cmd --add-port=7946/udp ; done

    for i in 1 2 3 ; do ssh node$i  firewall-cmd --add-port=4789/udp ; done

    for i in 1 2 3 ; do ssh node$i  firewall-cmd --add-port=4789/tcp ; done

for i in 1 2 3 ; do ssh node$i  firewall-cmd --reload    ; done 

方便使用for循环开启端口

for   变量    in   取值范围   ;   do   执行的语句     ;   done      格式

------------------------------------------------------------------------------------------------------------------------------

初始化swram集群

centos 7里面的keyboard的后缀是什么啊_网络_02


使用命令创建集群,中间两个命令一个是添加主机成为工作节点,一个是成为管理节点/

centos 7里面的keyboard的后缀是什么啊_docker_03


查看集群信息, 

复制上面命令到其他机器运行会自动加入集群

先开启路由转发功能,所有机器都要开

centos 7里面的keyboard的后缀是什么啊_网络_04


使用node1 当私有仓库

centos 7里面的keyboard的后缀是什么啊_docker_05


一般使用都会用反向代理解析,

如果没有就直接指定了

然后只要容器名字指定192.168.1.1:5000就可以存放或者下载 本地仓库了

swram使用的网桥是公用的overlay

自己可以创建,

centos 7里面的keyboard的后缀是什么啊_集群管理_06


上面是本身有的,overlay是作用在swarm群集中的

centos 7里面的keyboard的后缀是什么啊_集群管理_07


使用create创建命令创建一个自己的网络

manage会直接获取新的网络

worker只有在需要使用的时候才会更新需要的网络

centos 7里面的keyboard的后缀是什么啊_运维_08


只需要在主控制机使用service  create 就可以创建需要的镜像,这就是集群管理

--replicas是指定多少个镜像


--network   指定网络


centos 7里面的keyboard的后缀是什么啊_TCP_09


可以查看服务当前有多少个副本

centos 7里面的keyboard的后缀是什么啊_网络_10


查看某个服务都运行在那个节点上,状态如何

centos 7里面的keyboard的后缀是什么啊_TCP_11


--mode global   是全局模式,副本个数随着节点的数量走,每个节点都会生成一个副本


swarm那个容器如果出现问题就会自动在其他节点开启保持容器的数量.

https://blog.51cto.com/11637223/1911968