重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要介绍“docker的高可用如何配置”,在日常操作中,相信很多人在docker的高可用如何配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”docker的高可用如何配置”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
甘南ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!
docker compose
docker compose 将所管理的容器分为三层,工程(project),服务(service)以及容器(contaienr)。docker compose 运行的目录下的所有文件(docker-compose.yml, extends 文件或环境变量文件等)组成一个工程,若无特殊指定工程名即为当前目录名。一个工程当中可包含多个服务,每个服务中定义了容器运行的镜像,参数,依赖。一个服务当中可包括多个容器实例,docker compose 并没有解决负载均衡的问题,因此需要借助其他工具实现服务发现及负载均衡。
安装docker compose
获取docker-compose-linux-x86_64并将其放置到/bin目录下,并做软链接和加可执行权限
chmod +x docker-compose-linux-x86_64 ln -s docker-compose-linux-x86_64 docker-compose
导入haproxy和nginx,方便后续的负载均衡测试
docker load -i haproxy docker load -i nginx
在/tmp/编写compose配置文件
[root@foundation50 compose]#vim docker-compose.yml
在web1 httpd服务创建安装httpd服务和启动httpd的文件
[root@foundation50 compose]#vim web1/dockerfile from rhel7:v1 expose 80 run yum install -y httpd add index.html /var/www/html cmd ["/usr/sbin/httpd","-d","foreground"]
在haproxy里建立haproxy.cfg配置文件
查看
查看haproxy的统计信息
访问172.25.50.1
健康检查
关闭web3
docker swarm
准备三台虚拟机
server1,server2,server3安装docker并启动服务
需要在一个节点上运行docker swarm init,然后在其他节点上运行加入命令即可
[root@server1 ~]# docker swarm init [root@server2~]#docker swarm join \ >--tokenswmtkn-1-51igcdpg4cbgaokq535qis01osel396of153sdlp8k0ljn0rou-2m9sltwkc4uq1vfmp79ous0e4 \ > 172.25.50.2:2377 this node joined a swarm as a worker.
在server1上查看节点状态
前面已经导入了nginx,再导入flsak到三台机器
[root@server1 ~]# docker load -i flask.tar [root@server2 ~]# docker load -i flask.tar [root@server3 ~]# docker load -i flask.tar
为区分不同后端的负载均衡,用python写的一个显示主机名的语句,导入flask和os
打开flask镜像,将demo.py脚本放到root下
提交
[root@server1 python]# docker commit vm1 python:demo
创建名为flask集群,并启动3个后端服务节点,读取python下的demo.py脚本
测试
[root@foundation50 docker]# for i in {1..10}:do curl -w "\n" http://172.25.50.1;done
因为是三台服务器,所以每三次完成一次轮询,实现了负载均衡
docker swarm可视化web监控界面
导入镜像并创建
[root@server1 ~]# docker load -i visualizer.tar [root@server1 ~]# docker service create --name=viz --publish=8080:8080/tcp --constrain=node.role==manager --mount=type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock dockersamples/visualizer
查看监控页面
到此,关于“docker的高可用如何配置”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!