Docker的前后端分离人人网项目Demo4(Docker Swarm)

目前是吧所有集群都部署在本地虚拟机上面,如果本地宿主机挂了,项目也不能使用了,所以就需要将集群中不同节点拆分部署。
Docker的前后端分离人人网项目Demo4(Docker Swarm)

A宿主机部署一套完整节点,B宿主机在部署一套完整节点
用docker swarm来组建docker集群

理解了swarm对于学习谷歌的k8s就有好处
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
三剑客简介
docker-machine提供容器服务,前面用到的所有
docker-compose是容器脚本服务,不用像以前启动容器命令写很长
docker-swarm是容器集群技术
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
swarm的管理方式,和PXC集群、redis-cluster集群很像,都是去中心化的设计
(没有所谓主从)

docker-swarm集群节点分为两种,一个是manager节点,负责管理swarm集群(不光是管理集群,也要承担work节点工作),一个是worker节点(部署容器运行项目),manager、worker两者都可以配置冗余节点,实现高可用,挂掉swarm集群中任意一个节点,不会瘫痪集群,
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
swarm不提供负载均衡,只是负责管理docker集群·

Docker的前后端分离人人网项目Demo4(Docker Swarm)

Docker的前后端分离人人网项目Demo4(Docker Swarm)

Docker的前后端分离人人网项目Demo4(Docker Swarm)
在VM里面安装了四个linux centos实例,都安装了docker
两个作为manager节点,两个作为worker节点

下面init指令后是,让其他以work的身份加入集群。

Docker的前后端分离人人网项目Demo4(Docker Swarm)

获得以manager身份加入的命令
Docker的前后端分离人人网项目Demo4(Docker Swarm)
让第二个节点以manager加入docker集群
Docker的前后端分离人人网项目Demo4(Docker Swarm)
转换成workerDocker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)

Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
标*号那个swarm才是目前管理swarm集群的,

Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)

Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
然后创建数据库PXC集群
首先安装pxc镜像
Docker的前后端分离人人网项目Demo4(Docker Swarm)
改名
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
创建数据卷
backup要挂载到pxc容器里面,实现备份

Docker的前后端分离人人网项目Demo4(Docker Swarm)

Docker的前后端分离人人网项目Demo4(Docker Swarm)
目前我有5个pxc节点,但是只有四台centos的docker
那么,一台需要安装两个pxc节点
Docker的前后端分离人人网项目Demo4(Docker Swarm)
第二个pxc节点,在第一个centos宿主机上
Docker的前后端分离人人网项目Demo4(Docker Swarm)
第三个pxc节点,在第二个centos宿主机上
Docker的前后端分离人人网项目Demo4(Docker Swarm)
第四个pxc节点,在第三个centos宿主机上
Docker的前后端分离人人网项目Demo4(Docker Swarm)
第五个pxc节点,在第四个centos宿主机上
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
验证上面建立的docker 的pxc集群
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)

测试同步一致性,进一个逻辑test,看其他db是否同步起了
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
然后配置pxc双机热备
先查看容器ip址
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
上图是主动退出

下图是被动退出
Docker的前后端分离人人网项目Demo4(Docker Swarm)
停止docker服务是service docker stop

实际操作
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)

Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
主动离开
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)

Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)

docker图像界面实现docker管理
Docker的前后端分离人人网项目Demo4(Docker Swarm)

安装portainer,4个linux都要安装
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
0.0.0.0表示任务ip地址都要访问这个2375端口
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
每个linux都要配置portainer
Docker的前后端分离人人网项目Demo4(Docker Swarm)

Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
注意创建swarm集群无法在portainer里面创建。必须通过命令行

Docker的前后端分离人人网项目Demo4(Docker Swarm)
第二个manager
Docker的前后端分离人人网项目Demo4(Docker Swarm)
其余两个是swarm
Docker的前后端分离人人网项目Demo4(Docker Swarm)

Docker的前后端分离人人网项目Demo4(Docker Swarm)
创建共享网络
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)
Docker的前后端分离人人网项目Demo4(Docker Swarm)

相关文章: