3.4.6.4. 缩减


若要缩减副本集,可以将成员从 5 个缩减到 3 个,或从 3 个缩减到 1 个。

虽然当满足条件(存储可用性、现有数据库的大小和 oplogSize)时,可以在不需要人工干预的情况下进行扩展,但缩减总是需要人工干预。

缩减:

  1. 使用 oc scale 命令设置新副本数:

    $ oc scale --replicas=3 statefulsets/mongodb

    如果新副本数仍为前一个数字中的大多数,则副本集可能会选择一个新的 PRIMARY,如果删除的 pod 中的一个具有 PRIMARY 成员角色。例如,从 5 个成员缩减到 3 个成员时。

    或者,缩减到较低数字可临时导致副本集只有 SECONDARY 成员,且处于只读模式。例如,从 5 个成员缩减到只有 1 个成员时。

  2. 更新 replica set 配置,以删除不存在的成员。

    这在以后可能会有所改进,一个可能的实现是设置 PreStop pod hook 来检查副本数(通过 Downward API 获得),并确定 pod 已从 StatefulSet 中删除,并且由于其他原因不会重启。

  3. 清除已弃用 pod 使用的卷。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.