云计算之路-阿里云上:重启 manager 节点引发 docker swarm 集群宕机

为了迎接春节假期后的访问高峰,我们今天对 docker swarm 集群进行了变更操作,购买了1台阿里云4核8G的服务器作为 worker 节点,由原来的  3 manager nodes + 2 worker nodes 变为  3 manager nodes + 3 worker nodes 。

晚上,我们对已经持续运行一段时间的5个节点逐一进行重启操作,重启方式如下:

1)docker node update --availability drain 让节点下线
2)阿里云控制台重启服务器
3)docker node update --availability active 让节点上线

以前多次进行过这样的操作,未曾遇到问题,而今天在将其中1台manager节点下线后竟然意外地引发了整个集群宕机 。。。21:39 - 22:02 左右,这个突发的故障给您带来很大的麻烦,请您谅解。受这次故障影响的站点有 闪存博问班级园子短信息招聘小组网摘新闻,openapi 。

经过分析,我们得到的教训是尽可能避免只有2个manager节点的情况(manager节点采用的是投票机制,少数服从多数,2个节点的投票永远是1:1,这也是一种不稳定情况)。针对这个教训,我们调整了节点的部署,改为了 5 manager nodes + 1 worker nodes ,这样即使2个manger节点下线或出问题,也不会群龙无首。

docker swarm 集群的不稳定让我们如履薄冰,今年我们会想尽一切办法彻底解决这个问题。

posted @   博客园团队  阅读(1810)  评论(11编辑  收藏  举报
编辑推荐:
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
阅读排行:
· Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
· 2分钟学会 DeepSeek API,竟然比官方更好用!
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· DeepSeek本地性能调优
· autohue.js:让你的图片和背景融为一体,绝了!
历史上的今天:
2017-02-20 上周热点回顾(2.13-2.19)
2013-02-20 云计算之路:遇到障碍——阿里云不支持带宽共享
2012-02-20 上周热点回顾(2.13-2.19)
点击右上角即可分享
微信分享提示