Docker容器进行大规模集群部署,如何来做呢?肯定不能手动一个机器一个机器控制了,必须找到更高效等方式。
Docker官方提供了容器编排和集群管理工具Swarm。来解决大规模集群快速部署和监控等问题。
Docker是开源容器工具,之前我们讲过单节点模式下实战部署Java 或者MySQL、MongoDB等应用。今天我们来实战一下Docker集群和快速模式。Docker容器集群分布式架构模式,是互联网大规模部署运维利器。可以快速部署,伸缩目前开源领域的绝大部分服务器端程序,包括自定义开发的Java等应用镜像。
如果你没有安装过Docker,我们推荐等是Linux或者Mac环境,Docker镜像服务器,我们使用等是阿里云仓库。
1、安装首先安装传输加密组件,然后来下载docker
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
2: 安装阿里云docker 安全协议GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
3: 仓库写入阿里云Docker软件源信息,选择stable版本
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
使用阿里云Docker仓库速度比较快。
4: 更新资源列表,安装新版本Docker-CE,社区版本。
sudo apt-get -y update
sudo apt-get -y install docker-ce
5、检查Docker版本,是否成功安装
输入docker version命令,可以查看安装的Docker版本信息。
6、运行Docker Hello World
最简单的例子就是 Hello world,docker会从服务器拉去hello world镜像,并且在本地运行。
sudo docker run hello-world
Docker安装成功,并且可以执行最简单的镜像,入门例子。
7、搜索Docker镜像
这里搜索alibaba关键字
可以看到仓库中返回的Doccur镜像列表。
8、Docker集群,3个节点。节点可以动态扩展
我们模拟等Docker集群包含3个节点,当然后期可以动态加入更多等服务器节点进入Docker集群。非常等方便。这里为了模拟Docker集群,我们假设有3个节点。3个服务器等IP地址分别对应关系:
1个Manager节点 192.168.217.143
1个Worker01节点 192.168.217.144
1个Worker02节点 192.168.217.145
使用命令:docker swarm init 初始化集群等第一个节点作为管理几点,执行命令等结果如下:
9、加入Worker节点到集群中
使用命令:docker swarm join --token SWMTKN-1-042uawbpq7syfjggwl9h4mb4yqd0a67rb9pdrlh24qgh6wd98g-ejpq8hnf6w6zii9codj5pn565 192.168.217.143:2377
把2个节点加入到集群中。
10、 查看Docker集群状态信息
添加集群节点完毕后,可以使用docker node ls命令查看Docker集群状态信息。
11、通过Docker创建Web服务程序,
创建一个网站命令作为测试例子,docker service create --name webapp --publish 80:80 nginx。
我们也可以使用自己制作到Java Spring Boot 2.x网站作为例子。
12、快速伸缩到6个实例集群模式
为了测试Docker集群伸缩特性模式,我们可以通过命令快速创建出6个节点。
使用到命令是docker service scale webapp=6
这样我们就成功安装docker swarm集群,并部署了Web网站作为测试。
阿里巴巴Java群超过3500人
直播地址:Java技术进阶群
进群方式:钉钉扫码入群
阿里巴巴MongoDB群