0

我有一个基于Patroni / Spilo的 PostgreSQL Kubernetes 服务。此 Kubernetes 服务部署了一个由三个 PostgreSQL pod + 三个 Etcd pod 组成的集群。在维护期间,我遇到了故障,无法恢复滚动更新之前运行良好的旧配置。

我搜索了文档,似乎 StatefulSets 不支持将回滚作为部署。我找到了引用此文档的线程

然而,老实说,我不明白如何进行。

我的集群有以下豆荚:

postgres-0
postgres-1
postgres-2
etcd-0
etcd-1
etcd-2

我的滚动更新只需要将 etcd 映像从 3.3.20 升级到 3.5.1。升级开始更新 etcd-2 并且 pod 由于多种原因而崩溃。所以我的意图是停止更新并将 etcd-2 恢复到 3.3.20。

在这种情况下我应该如何进行?活跃和探索如何在这里帮助我?目前,该线程中提出的解决方案让我有点困惑。

4

1 回答 1

1

要撤消所做的更改,请首先检查推出历史记录kubectl rollout history sts <name> -n <namespace if not default>

获取有关修订的更多详细信息kubectl rollout history sts <name> --revision <number> -n <namespace if not default>

撤消更改kubectl rollout undo sts <name> --to-revision <number> -n <namespace if not default>

于 2021-12-14T09:42:34.183 回答