内容提要
本文介绍了将Patroni集群升级到Etcd 3.5.xx的步骤,包括置于维护模式、关闭服务、清理旧数据、安装新版本、创建新集群、修改配置文件等。最后,从维护模式中恢复,Patroni接管PostgreSQL集群。
关键要点
-
Patroni是PostgreSQL的高可用性框架,Etcd是推荐的DCS。
-
Etcd 3.3版本已经过时,建议升级到Etcd 3.5。
-
Etcd 3.5的默认API版本为3,旧版本的API在新版本中不可见。
-
配置Etcd时,建议使用YAML文件而不是环境变量,以提高可读性和故障排除能力。
-
启动Etcd集群时,可以选择单节点引导或同时启动多个节点。
-
升级Etcd时,需将Patroni置于维护模式,确保PostgreSQL不受影响。
-
清理旧版本Etcd的数据目录,确保没有遗留数据。
-
安装新版本的Etcd,并创建新的Etcd集群。
-
修改Patroni配置文件以使用Etcd API版本3。
-
启动Patroni并验证配置是否成功复制回Etcd。
-
将Patroni从维护模式中恢复,开始管理PostgreSQL集群。
延伸问答
如何将Patroni集群升级到Etcd 3.5版本?
首先将Patroni置于维护模式,关闭服务,清理旧数据,安装新版本Etcd,创建新集群,修改配置文件,最后恢复维护模式。
Etcd 3.5与3.3版本有什么主要区别?
Etcd 3.5的默认API版本为3,而3.3的默认API版本为2,旧版本的API在新版本中不可见。
为什么建议将Etcd从3.3升级到3.5?
Etcd 3.3已经过时,且其生命周期已结束,继续使用可能存在安全风险。
在配置Etcd时,使用YAML文件有什么优势?
使用YAML文件配置Etcd比环境变量更清晰,便于故障排除。
如何验证Patroni配置是否成功复制回Etcd?
可以使用命令`patronictl -c /etc/patroni/patroni.yml show-config`来验证配置。
升级Etcd时,如何确保PostgreSQL不受影响?
在升级过程中,将Patroni置于维护模式,以确保PostgreSQL服务不受影响。