💡
原文英文,约800词,阅读约需3分钟。
📝
内容提要
在升级到etcd v3.6之前,必须先升级到v3.5.26或更高版本,以确保集群自动修复,避免出现“僵尸成员”问题。此问题源于旧版本的v2store与v3store不一致,导致已删除的节点重新出现。
🎯
关键要点
- 在升级到etcd v3.6之前,必须先升级到v3.5.26或更高版本。
- 升级到v3.6可以确保集群自动修复,避免出现“僵尸成员”问题。
- “僵尸成员”是指已从数据库集群中删除但重新出现的etcd节点。
- 在v3.5及更早版本中,v2store是成员数据的真实来源,v3store在v3.6中成为真实来源。
- 在v3.5.26中添加了自动同步v3store与v2store的机制。
- 升级路径为:先升级到v3.5.26,确认所有成员健康后再升级到v3.6。
- 如果无法升级到v3.5.26,则应推迟升级到v3.6。
- 此问题可能由多个因素引起,包括etcdctl快照恢复中的错误和不安全的同步选项。
- 一旦升级到v3.6,v3store将成为成员数据的唯一来源,进一步的不一致将不再可能。
- 感谢Christian Baumann报告此长期升级问题,帮助我们解决了该问题。
❓
延伸问答
在升级到etcd v3.6之前需要做什么?
必须先升级到etcd v3.5.26或更高版本。
什么是僵尸成员?
僵尸成员是指已从数据库集群中删除但重新出现的etcd节点。
如何避免在升级中出现僵尸成员问题?
通过在升级到v3.6之前先升级到v3.5.26,确保集群自动修复。
升级到v3.6后,v3store的角色是什么?
在v3.6中,v3store将成为成员数据的唯一来源。
如果无法升级到v3.5.26,该怎么办?
应推迟升级到v3.6,直到能够升级到v3.5.26。
导致僵尸成员问题的可能原因有哪些?
可能原因包括etcdctl快照恢复中的错误和不安全的同步选项。
➡️