可用性最佳实践

本页面介绍了确保 Google Distributed Cloud 联网配置实现高可用性的最佳实践。Distributed Cloud Connected 不提供服务等级协议 (SLA),仅提供本页面上所述的指导。

选择并实现可用性级别

您必须为 Distributed Cloud connected 工作负载选择最符合业务要求的可用性级别。例如,零售店的自助结账应用与移动网络运营商的边缘 RAN 部署相比,可用性风险要低得多。

Distributed Cloud connected 软件会占用每台物理机上的一些资源。具体金额因 Distributed Cloud connected 部署的具体配置而异。工作负载的弹性取决于您在节点上预留的备用计算和内存容量,以应对硬件重启和节点故障。Google 建议您使用资源配额来设计工作负载,以确保在维护或组件故障期间,幸存的节点有足够的可用空间。目标可用性与您为紧急情况预留的 Distributed Cloud Connected 备用资源容量成正比。这些估算值不包括在维护窗口中安排的停机时间。

您可能会因硬件故障或需要重启的节点而突然遇到容量不足的情况。为此,您必须在设计工作负载时考虑到资源配额,以便每个 Distributed Cloud 连接节点始终具有满足所选可用性级别的可用容量。

在地理位置上实现 Distributed Cloud 区域的多样化

为尽可能减少潜在的管理平面故障造成的影响,我们强烈建议您将 Distributed Cloud 可用区分布到多个相邻区域。

网络钩子高可用性

将 Webhook 视为任务关键型服务。请遵循以下有关 Webhook 高可用性的最佳实践:

  • 运行至少两个 webhook Pod 副本。
  • 使用 topologySpreadConstraints 将 webhook Pod 副本分布在不同的物理节点上。
  • 请谨慎设置 CPU 和内存限制,以防止在集群处于高负载状态时驱逐 webhook Pod。

使用可存活模式

Distributed Cloud 集群使用在 Distributed Cloud connected 硬件上运行的本地控制平面。当与 Google Cloud 的连接断开时,您的工作负载仍会继续运行。如需了解详情,请参阅Distributed Cloud 连接的生存模式

了解软件更新和维护窗口

Google 会定期更新 Distributed Cloud connected 软件。 这些软件更新是强制性的,您无法选择不接收。 借助 Distributed Cloud connected,您可以为每个 Distributed Cloud connected 集群指定单独的维护时段。

为了缓解工作负载可能暂时中断的情况,您可以通过维护期控制可以进行控制层面和节点自动升级的时间。维护期适用于以下类型的场景和其他类似的场景:

  • 非高峰时段:您想要在流量减少的非高峰时段内安排自动升级以最大限度地减小停机的可能性。
  • 随时待命:您想要确保在工作时间内进行升级,以便有人可以监控升级并管理任何意外问题。
  • 多集群升级:您想要以指定的时间间隔在不同区域的多个集群中发布升级(一次一个区域)。

Distributed Cloud Connected 支持以下类型的维护窗口:

  • 维护窗口。指定 Google 可在 Distributed Cloud 连接的集群上执行维护和软件升级的时间范围。
  • 维护排除窗口。指定一个时间窗口,在此期间,Google 无法对您的 Distributed Cloud connected 集群执行维护或软件升级。 如需配置维护排除期,您必须先配置维护窗口。维护排除窗口优先于集群的维护窗口。

除了自动升级之外,Google 偶尔还需要执行其他维护任务。在这种情况下,它会尽可能遵守集群的维护窗口。

如果软件升级或维护任务在维护窗口结束之前未完成,Distributed Cloud Connected 会暂停升级或任务,并在下一个预定的维护窗口期间恢复升级或任务。如果软件升级失败,Distributed Cloud Connected 会停止升级;在这种情况下,您必须与 Google 支持团队联系,以修复软件安装。

Distributed Cloud connected 保留在维护期之外发布计划外紧急升级的权利。此外,对弃用或过时软件的强制升级可能会在维护期之外自动进行。

您也可以随时手动升级集群。手动启动的升级可以立即开始,而无需考虑任何维护期。

如需了解如何为新集群或现有集群设置维护窗口,请参阅配置维护窗口

软件更新分批推送

为了减少工作负载停机时间,Distributed Cloud Connected 软件更新会错开进行。换句话说,Google 会分阶段升级每个 Distributed Cloud 连接集群中的工作器节点。软件升级阶段的所有工作器节点同时停机。

您还可以选择自行设置软件升级阶段的大小。换句话说,您可以指定在 Distributed Cloud Connected 集群中,有多少个节点可以同时因软件升级而停机。如需查看相关说明,请参阅管理软件升级期间的节点停机时间

限制

维护窗口具有以下限制:

  • 每个集群有一个维护窗口。每个集群只能配置一个维护窗口。如果配置新的维护窗口,则新维护窗口会覆盖它的上一个维护窗口。

  • 维护窗口的时区。在配置和查看维护期时,时间的显示方式会因您使用的工具而有所不同,详情请参阅以下部分。

配置维护期时

使用更通用的 --maintenance-window 标志配置维护窗口时,您无法指定时区。使用 Google Cloud CLI 或 API 时,系统会使用世界协调时间 (UTC) 显示时间。Google Cloud 控制台使用本地时区来显示时间。

如果使用更精细的标志(例如 --maintenance-window-start),您可以将时区指定为值的一部分。如果省略时区,则系统会使用本地时区。时间始终以世界协调时间 (UTC) 格式存储。

查看维护期时

查看集群的相关信息时,维护期的时间戳可能会以世界协调时间 (UTC) 格式或本地时区显示,具体取决于您查看信息的方式:

  • 使用 Google Cloud 控制台查看集群的相关信息时,时间始终以本地时区显示。
  • 使用 gcloud CLI 查看集群的相关信息时,时间始终以世界协调时间 (UTC) 格式显示。

在这两种情况下,RRULE 始终采用世界协调时间 (UTC)。也就是说,如果指定一周中的某天,则这些时间采用世界协调时间 (UTC)。

配置集群维护窗口

借助 Distributed Cloud connected,您可以为每个 Distributed Cloud connected 集群指定维护窗口。此窗口会告知 Google 仅在您指定的时间和频率更新 Distributed Cloud 软件。

以下规则适用于 Distributed Cloud 已连接集群维护窗口:

  • 如果您为 Distributed Cloud Connected 集群指定了维护窗口,Google 会在通过 Distributed Cloud Connected 版本说明宣布更新后的 48 小时内更新 Distributed Cloud Connected 软件。在版本说明页面上,您可以订阅 Distributed Cloud Connected 版本说明 RSS Feed,以便及时了解软件更新。
  • 维护窗口的最短时长为 5 小时。您可以根据 Distributed Cloud Connected 安装的复杂程度和业务需求指定更长的时间范围。
  • 软件更新的最低频率为每周一次。您可以指定每周或每天的维护窗口。您可以包含和排除特定日期。
  • 您可以随时更改集群的维护窗口时间表,但前提是尚未安排维护窗口或维护窗口未在进行中。
  • 如果软件更新未在指定的时间窗口内完成,系统会暂停更新,然后在下一个预定的维护窗口期间恢复更新。

如需了解详细说明,请参阅为集群配置维护窗口

维修故障硬件

如果 Distributed Cloud 连接的机器发生故障,您有责任根据硬件保修或 SI 维护合同更换整台机器。Google 会监控 Distributed Cloud connected 软件和节点运行状况;如果我们检测到硬件问题,会通过 Cloud Monitoring 向您发送提醒。在将机器从您的场所移走之前,Google 会尝试安全地从其所有磁盘驱动器中删除数据。您有责任根据与 Google 认证的 SI 签订的服务协议,执行额外的磁盘清理操作。

其他故障点

您需要负责维护 Distributed Cloud 安装的以下方面,这些方面不受 Google 控制,但可能会影响 Distributed Cloud Connected 的可用性:

  • 您选择存储在 Distributed Cloud connected 硬件上的任何数据。这包括在将 Distributed Cloud Connected 硬件退回给 Google 之前,创建可正常运行的冗余备份并导出数据。
  • 电源
  • 环境温度、湿度和冷却
  • 实体硬件安全
  • 本地网络安全
  • 本地网络和互联网连接。Distributed Cloud 连接必须每 7 天重新连接一次,以刷新安全令牌、加密密钥,并同步日志记录和管理数据。 Google Cloud

后续步骤