Docker Swanm集群配置
首先 可以用ContOS虚拟机 克隆 5个虚拟机,注意(克隆主机必须装了Docker,克隆后,克隆机都会有Docker)
配置 网络
克隆CentOS虚拟机
最后和到如下结果
打开2377端口
firewall-cmd --zone=public --add-port=2377/tcp --permanent
重启防火墙
firewall-cmd --reload
然后进入CentOS 7 64位
初始化 Swarm
sudo docker swarm init --advertise-addr 192.168.0.102:2377 --listen-addr 192.168.0.102:2377
A: (初始化后Swarm后可以通过 docker swarm join-token worker 查看Swarm的Token信息 )
上图下箭头即是添加功能节点命令,代码如下:
sudo docker swarm join --token SWMTKN-1-1fmeankvtj5x8483gsxuhgwvhrdt2yt6japzopemjcucv8ykit-4xj0shobna3bu2u1tk377z2ch 192.168.0.102:2377 --advertise-addr 192.168.0.105:2377 --listen-addr 192.168.0.105:2377
B: 查看添管理能节点命令
docker swarm join-token manager
上图下箭头即是添加管理节点命令 (注意 先关闭添加管理节点机器的防火墙,不然可能不成功),代码如下:
sudo docker swarm join --token SWMTKN-1-1fmeankvtj5x8483gsxuhgwvhrdt2yt6japzopemjcucv8ykit-4xj0shobna3bu2u1tk377z2ch 192.168.0.102:2377 --advertise-addr 192.168.0.104:2377 --listen-addr 192.168.0.104:2377
可以通过Docker info查看相关信息
添加管理节点 (注意 先关闭104的
防火墙,不然可能不成功)
先登入另一台虚拟机
关闭防火墙
systemctl stop firewalld
添加管理节点
sudo docker swarm join --token SWMTKN-1-1fmeankvtj5x8483gsxuhgwvhrdt2yt6japzopemjcucv8ykit-4xj0shobna3bu2u1tk377z2ch 192.168.0.102:2377 --advertise-addr 192.168.0.104:2377 --listen-addr 192.168.0.104:2377
添加功能节点
sudo docker swarm join --token SWMTKN-1-1fmeankvtj5x8483gsxuhgwvhrdt2yt6japzopemjcucv8ykit-4xj0shobna3bu2u1tk377z2ch 192.168.0.102:2377 --advertise-addr 192.168.0.105:2377 --listen-addr 192.168.0.105:2377
创建Swarm Service
这里的five是我用.net Core创建的Image,现在我要用这个境像创建5个Swarm Servie容器
sudo docker service create --name myfiveweb -p 8080:5000 --replicas 5 five
查看Swarm Service 运行情况
docker service ls
详情
docker service ps myfiveweb
查看Docker 节点信息
docker node ls
如果报 docker node ls错:
Error response from daemon: rpc error: code = Unknown desc = The swarm does not have a leader. It's possible that too few managers are online. Make sure more than half of the managers are online.
解决方法:
docker swarm init --force-new-cluster
提升为管理节点命令
sudo docker node promote fhdpncl3ay8vl5ogmbdh42ia8
将管理节点降级
docker node demote 0nbt 降级
删了节点
先在节点机器上执行
sudo docker swarm leave --force
然后再Swarm主管理机上执行
docker node rm ablwad6b 删除
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· 程序员常用高效实用工具推荐,办公效率提升利器!
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 【译】WinForms:分析一下(我用 Visual Basic 写的)
2018-10-13 .net Core 页面错误异常处理及全局异常处理