郑州计算机培训机构_htmlcss完整的网页代码_推广普通话内容100字_正规营销培训
2025/2/12 13:48:23
来源:https://blog.csdn.net/2401_85084312/article/details/142182423
浏览:
次
关键词:郑州计算机培训机构_htmlcss完整的网页代码_推广普通话内容100字_正规营销培训
郑州计算机培训机构_htmlcss完整的网页代码_推广普通话内容100字_正规营销培训
![](https://i-blog.csdnimg.cn/direct/a5e7bf27e5ec4c02aec29043681a3abf.png)
![](https://i-blog.csdnimg.cn/direct/77ec6b5a3d8545fd8e377652453d52d3.png)
![](https://i-blog.csdnimg.cn/direct/9792b4a9480942c185ef00670d5962b0.png)
![](https://i-blog.csdnimg.cn/direct/d4f8c7ce096b4186beec4345657500a4.png)
![](https://i-blog.csdnimg.cn/direct/ec1843b2ba224448a1500a97597263a1.png)
![](https://i-blog.csdnimg.cn/direct/4d63f48722cd4e289e4834b4b865dcee.png)
![](https://i-blog.csdnimg.cn/direct/b46bc01ea2bd48f78373ca1bbe736343.png)
![](https://i-blog.csdnimg.cn/direct/d7fa5040a1784889a03952f8255c842a.png)
![](https://i-blog.csdnimg.cn/direct/573a8ad705e9453e8211aacbc36323cb.png)
![](https://i-blog.csdnimg.cn/direct/0eeeff6c48844382b456a82e3113ea59.png)
![](https://i-blog.csdnimg.cn/direct/8525cb9e41e841599925d2e18f0f6892.png)
![](https://i-blog.csdnimg.cn/direct/d6a04314420d43c0ad75959259706c54.png)
![](https://i-blog.csdnimg.cn/direct/fd21daf33f5e44668d1e71c2964edf3e.png)
![](https://i-blog.csdnimg.cn/direct/20db8319f1974e85aecea2b83c32c836.png)
![](https://i-blog.csdnimg.cn/direct/a519766f07f74dc68574682351cdfc51.png)
![](https://i-blog.csdnimg.cn/direct/d55b570ef9fb42cb8f1c6cb6e621f915.png)
![](https://i-blog.csdnimg.cn/direct/5de15914e861410286f694225ca6abae.png)
如上图所示,
三台主机:恢复到docker的快照;
然后上传到三台服务器所需的镜像;
同步会话。执行导入脚本将镜像导入到系统中;
![](https://i-blog.csdnimg.cn/direct/6dc7a1f966e34a0f8088c1dcddd118ba.png)
然后取消会话的同步,设置各个主机的主机名;
![](https://i-blog.csdnimg.cn/direct/cdb59c8b47704c3eb1a8c6d1025de842.png)
![](https://i-blog.csdnimg.cn/direct/5064dacc06664debb88923393b519fd7.png)
![](https://i-blog.csdnimg.cn/direct/c33ef47dec164a80a60f228eb63ea24f.png)
然后同步会话修改hosts文件;
![](https://i-blog.csdnimg.cn/direct/c9a73e32e802474dbe7f531ae4faa306.png)
![](https://i-blog.csdnimg.cn/direct/da599ce8ef964817879e562073670ae0.png)
查看防火墙和内核安全机制;
实验环境永久关闭即可;
生产环境需添加相应的策略;tcp/udp
然后在任意一个节点创建集群,在哪个节点创建,哪个节点就是manager;
其他节点如何成为manager,提升权限即可;
先将swarm初始化;
![](https://i-blog.csdnimg.cn/direct/cd77fcb2e5384b81a27a5072ed6427a1.png)
会提示如下语句:
![](https://i-blog.csdnimg.cn/direct/8106f0ba1441473e8ec236ad8361a7c6.png)
大概意思就是当前101节点成为了集群的manager;
如果其他节点也想添加到集群,要执行以下指令:
利用2377/tcp端口加入到manager节点的集群中;
docker swarm join --token SWMTKN-1-5i733918jgh6glcmae1afkr5mhafyjocyv6kn7o68gmlc6l4io-9dt4s9otn66zsecgxfdk6muy1 192.168.10.101:2377
复制提示的命令在其他节点执行一下;
提示这个节点加入到了一个集群且是worker;
![](https://i-blog.csdnimg.cn/direct/73b657b91b1c46b3aa9789485186f651.png)
![](https://i-blog.csdnimg.cn/direct/a30ae363bccb4f9aa307dc979b26adac.png)
查看docker主机的信息,从中找到集群的信息;
![](https://i-blog.csdnimg.cn/direct/d6aaa5bfcfa04de28cdedd8a8a95e6fb.png)
节点的ID
集群的ID
节点数量:3
数据通信端口:4789
![](https://i-blog.csdnimg.cn/direct/d4ff589b07d54c4ba30c8ac6bc35c060.png)
其他节点也可以查看相关的信息,只不过会显示不是manager;
![](https://i-blog.csdnimg.cn/direct/8ebc93b7df6749a7871599f46bf3df18.png)
以及可以列出集群节点;
![](https://i-blog.csdnimg.cn/direct/700719b77f12455f888d3cc068dac7ee.png)
AVAILABILITY栏的三种状态:
active:能运行容器的。
pause:当前容器继续运行,新调度来的容器不进行接收。
drain:新调度的容器不接收,且原有的容器迁移到其他节点。
如何修改manager节点的工作方式:
![](https://i-blog.csdnimg.cn/direct/90683eab8bfc446982e9bd9b091b9c9f.png)
如果想要容器运行在指定的节点上,那么就要针对该节点打一个标签;
标签是一个键值对的格式;适用于docker和k8s中。
![](https://i-blog.csdnimg.cn/direct/14a2526c42414c8483dd40efc265a164.png)
然后查看swarm中指定节点的详细信息;
![](https://i-blog.csdnimg.cn/direct/83d5ee14a97147e2b0977fa9de0e306e.png)
通过查看到Labels为复数,就可以得知每一个节点可以有多个标签;
然后尝试在swarm中运行容器给指定的节点;
其中要访问可信镜像站拉取一个nginx的镜像;
如何获取?可以查看之前的博文;
![](https://i-blog.csdnimg.cn/direct/7231ca09cd674e88bd6b1bfb02ac0d49.png)
![](https://i-blog.csdnimg.cn/direct/3f23878bb0ca42f68d3873786aa13e6d.png)
通过查看命令可以看出,于compose中的概念基本相同,都是以服务的方式运行一组容器;
![](https://i-blog.csdnimg.cn/direct/8cfeec4d9461448886ec785d00c107a3.png)
![](https://i-blog.csdnimg.cn/direct/7b02ffc031f54c469b03db826ebb14ca.png)
![](https://i-blog.csdnimg.cn/direct/6e12d6dadb564fbc9c3a8e44c59fad69.png)
查看指定的服务;
![](https://i-blog.csdnimg.cn/direct/ff60a045011f4544ae4df77e5e2ab525.png)
在指定运行的节点上查看运行的容器:
红色框框中是最终运行起来的容器的名字;
![](https://i-blog.csdnimg.cn/direct/35a3db6a8f304c759840cb2205743e7f.png)
但是在worker节点查看服务会提示该节点不是swarm的manager;
请提升当前节点到manager;
![](https://i-blog.csdnimg.cn/direct/40c480d297874e34a725a5b80be78ae8.png)
然后可以在manager节点上提升另外两个节点为manager;
![](https://i-blog.csdnimg.cn/direct/09f4e1da624a464ba089882006589ad9.png)
再查看就有权限了;
![](https://i-blog.csdnimg.cn/direct/5360fd47555e436dac4fa3c20ef1e303.png)
如何降权???
![](https://i-blog.csdnimg.cn/direct/7b7fc8922354413f8876041e51335174.png)
然后在manager节点上查看节点的信息;
![](https://i-blog.csdnimg.cn/direct/dd0a2515e0be40d48d1e2e2a44c73376.png)
但是leader仍然是创建swarm时所在的主机,即101;
其他节点也可以成为管理的入口;
如何解散集群和脱离集群;
了解即可不需要使用,如果使用了还要重新搭建集群,或者重新加入到集群中;
解散集群要在leader主机上执行;
![](https://i-blog.csdnimg.cn/direct/78373e9a6395410782a627937dfb727d.png)
而脱离集群在需要脱离集群的节点上执行即可;
![](https://i-blog.csdnimg.cn/direct/11c4c62bbf7640eba089c79e2be8ed3e.png)
如何创建副本;
![](https://i-blog.csdnimg.cn/direct/1cfc92ed9aa74d6897d587e53b06cf7d.png)
![](https://i-blog.csdnimg.cn/direct/24ddd20c6ffb490dba4e7c8e1f44642f.png)
查询:
![](https://i-blog.csdnimg.cn/direct/c0f722ddd29f4f77b99d04e3aeaa9fce.png)
查询跑在了哪个节点上;
![](https://i-blog.csdnimg.cn/direct/5c8973433e054f4182ec1c694b7ab7ad.png)
查询服务的详细信息;
默认是json格式的;
![](https://i-blog.csdnimg.cn/direct/4c8a230c830d4dc58554cfa3889234e9.png)
可以使用--pretty(漂亮)的选项显示更直观的方式查看;
![](https://i-blog.csdnimg.cn/direct/1dff6521524449ca90dae2902979d325.png)
对服务进行扩容;
![](https://i-blog.csdnimg.cn/direct/6eadb92631664c2a87cbe30c80d4500c.png)
![](https://i-blog.csdnimg.cn/direct/57cc833d75cb43dfb7b4a08c155c8d98.png)
对服务缩容:
![](https://i-blog.csdnimg.cn/direct/d7d09e545c554c67b654620ab6f0f73c.png)
移除服务:
![](https://i-blog.csdnimg.cn/direct/68f5c5edeab0445cbe54708aae8621ca.png)
滚动更新:
先创建redis的服务,三个副本;
![](https://i-blog.csdnimg.cn/direct/3fd39b91485548889927b4e96866bb28.png)
![](https://i-blog.csdnimg.cn/direct/f39cb6525aed4749933516921f46ad73.png)
如何滚动更新:
针对镜像进行替换;
可高可低;
![](https://i-blog.csdnimg.cn/direct/ec88085cdacb4349884858372051b6f5.png)
OverLay:
先创建网络;
![](https://i-blog.csdnimg.cn/direct/15aca905b1e64c8f87222de112f7793c.png)
然后创建容器的时候,加入网络;
![](https://i-blog.csdnimg.cn/direct/c0e31a8db629472aafcb3c4baf8430f6.png)
![](https://i-blog.csdnimg.cn/direct/d22ccac89faa48bfb0abebd8691cecfe.png)
数据卷管理:
单纯的数据卷的方式:
先创建数据卷;
![](https://i-blog.csdnimg.cn/direct/2adb17492c6c40899807362341e3c7fb.png)
在创建容器的时候加入到数据卷中;
![](https://i-blog.csdnimg.cn/direct/a97f1f19902b4d1aa9b8930c01beb9aa.png)
![](https://i-blog.csdnimg.cn/direct/8e541ae795604f528c48c64d4d88a646.png)
![](https://i-blog.csdnimg.cn/direct/44d8513a28294fae81961035187880fc.png)
但是这种方式;同一个服务中的两个副本的数据不能共享;
NFS的方式:
在manager节点作为服务器端,worker节点作为客户端;
然后同步会话,安装nfs的包;
![](https://i-blog.csdnimg.cn/direct/f867dc701e7847fdbf2663ae37954379.png)
之后创建共享目录;
![](https://i-blog.csdnimg.cn/direct/bb7f6af1acdf4ee6b809879901a87f14.png)
然后取消回话同步,在manage节点上书写nfs的配置文件;
![](https://i-blog.csdnimg.cn/direct/56b331995ea849c396f1e2d8050bec25.png)
![](https://i-blog.csdnimg.cn/direct/f2924bc86cbb40f395f81e412cd0e765.png)
![](https://i-blog.csdnimg.cn/direct/a638acd6ccfa4687a1068551ca8c8fb2.png)
![](https://i-blog.csdnimg.cn/direct/4e3e325c618d480990442d5079c3e362.png)