docker容器编排
1.容器编排目的
1.怎么去管理这么多容器?
2.怎么能方便的横向扩展?
3.如果容器 down了,怎么能自动恢复?
4.如何去更新容器而不影响业务?
5.如何去监控追踪这些容器?
6.怎么去调度容器的创建?
6.保护隐私数据?
2.docker容器集群



3.创建集群
nodes swarm cluster setup
Vagrant Virtualbox
Docker machine Virtualbox
Palywithdocker : https://labs.play-with-docker.com
-----3中创建集群机器的方法
1. 3台机器如下:



manager机器



在加入worker1节点后,在manager上面查看节点情况


添加worker2几点

2.创建Service操作




容器运行情况



3.水平扩展




worker2强制删除一个容器


·

worker1 上的2个

删除demo容器


4.集群部署
不同的集群服务器容器之间可能是不能互相通讯的,部署集群的时候,db和应用是不确定部署在那台机器上的,这时候就要使用Overlay网络了
1.创建Overlay网络






worker2节点应用和IP


访问worker2 ip的服务


注意:注意创成功后3和节点都是可以通过IP访问的,原理如下
因为manager上又Overlay网络,当manager上创建容器会随机的分配到几点,同时demo的Overlay网络也会同步到该节点,如果容器没有分配到节点网络是不会同步到该几点,所以查看不到没有分配容器的Overlay网络,分配容器的节点是可以查看到Overlay网络
单机同步Overlay网络需要借助第三方查看,集群环境不需要第三方插件

5.集群服务间通信之Routing Mesh




单机发现

6.Routing Mesh之Ingress负载均衡


在集群中任务IP都能访问服务:主要是Ingress网络

在集群中访问每次都是负载均衡,虽然访问的都是同一个IP,但是通过Ingress网络进行负载均衡


7.Docker Stack部署Wordpress
docker compose一般部署在单机环境
1.deploy
https://docs.docker.com/compose/compose-file/#deploy
2.集群环境部署要求和单机部署要求不同,需要使用deploy策略
修改compose.yml配置文件



在集群中使用stack,要在manager上执行


创建workpress




清理环境

完成后3个节点都能访问
8. Docker Secret管理和使用
1.Secret








使用:




通过文件指定



在复杂的应用中使用compose配置文件中使用

9. Service更新


启用2个服务,用于不停机更新脚本

查看更新命令




更新端口

