可用性与恢复
通过将环境与适当的部署拓扑、高可用基线、Global Cluster Disaster Recovery 路径以及备份或恢复操作步骤相匹配,规划可用性与恢复。
有关详细的容量规划、备份、恢复和灾难恢复操作步骤,请参阅链接的特定主题操作步骤。以下指导重点介绍规划选择和支持边界。
部署拓扑
请根据场景选择拓扑,而不是依据单一的生产环境最低配置表。
高可用基线
对于类似生产环境的环境,请使用 3 个控制平面节点作为 HA 基线。5 个控制平面节点的拓扑可以提升大型环境的扩展性和可靠性,但并非每个生产部署都普遍硬性要求使用 5 个节点。
Infra 节点或自定义角色节点有助于隔离平台组件或高负载组件,但除非容量规格层级或组件文档另有说明,否则并非普遍要求。对于 Extra Large global 集群容量规划,请遵循专用 Infra 节点的容量规划指导。
组件级高可用
标准 HA 拓扑部署依赖平台组件之间的以下机制。本节为架构师提供参考背景;在平台以 HA 拓扑部署时,无需自行针对每个组件配置这些机制。
etcd
- 部署在
global集群的控制平面节点上。 - 使用 RAFT 共识协议进行领导者选举和状态复制。
- 3 个控制平面节点的部署可容忍 1 个节点故障;5 个控制平面节点的部署可容忍 2 个节点故障。
- 支持本地和远程对象存储快照备份,以用于恢复。
平台访问与入口
- 集群入口网关以多个从节点运行,并支持领导者选举。
- 外部负载均衡器、DNS 记录,或具有心跳检测和主备故障转移功能的自建 VIP,可提供平台访问入口。
镜像仓库与对象存储
- 镜像仓库组件在集群入口后运行多个从节点,并配备高可用数据库后端和高可用缓存后端。
- 平台使用的对象存储后端以分布式模式运行,并提供纠删码、数据冗余和自动恢复功能。
监控与日志
- 监控以多个实例运行,并支持查询时去重、分布式存储组件和跨地域冗余选项。
- 日志组件以分布式、多从节点模式部署,覆盖采集、传输、存储和查询。
容器网络
- 容器网络接口(CNI)通过无状态的每节点代理和三副本控制平面组件实现高可用。
自愈
- Kubernetes 控制平面和平台组件协调运行状况检查、故障转移和流量重定向。
- 对瞬时故障进行重试;当节点不可用时,将业务工作负载重新调度到运行正常的节点上。
有关拓扑级规划,请参阅高可用基线。有关集群级灾难恢复,请参阅Global Cluster Disaster Recovery。
Global 集群灾难恢复
Global 集群灾难恢复可在主 global 集群不可用时,保护平台管理入口和 global 控制平面服务。
Global DR 的范围如下:
- 使用主集群和备用
global集群。 - 依赖实时同步存储在主
global集群 etcd 中的资源状态,但排除的命名空间除外。 - 通过将 DNS 或 VIP 访问切换到备用集群,恢复平台入口和
global控制平面服务。 - 主集群和备用集群应遵循经过验证的路径,保持版本、补丁、组件版本和关键配置一致。
请勿将 Global DR 视为完整的平台数据 DR、原生应用数据 DR、自动故障转移或受 SLA 保障的 RPO/RTO 承诺。Global DR 不涵盖镜像仓库数据、chartmuseum 数据、其他组件数据、原生应用数据或排除在 etcd 同步范围之外的资源。
有关操作步骤和支持的场景,请参阅 Global Cluster Disaster Recovery。
备份和恢复路径
恢复按场景构成。每种机制保护特定的数据域,并具有各自的操作步骤、前提条件和限制。
根据备份配置,原生应用备份可以保护命名空间、Kubernetes 资源和持久卷数据。但它不支持所有存储或原生应用数据模式。例如,hostPath PersistentVolumes 不受文档所述原生应用备份路径支持,而数据库工作负载应遵循特定数据服务的备份指南。
恢复检查清单
使用此检查清单选择后续工作。有关详细步骤,请遵循链接的操作步骤:
- 在安装规划期间选择单集群、多集群或单节点。
- 根据可扩展性指南确定
global集群和业务集群的规模。 - 在安装 Core 之前,确定是否需要 Global Cluster Disaster Recovery。
- 根据需要恢复的数据域,为 etcd、镜像仓库数据、监控数据、日志数据和原生应用配置备份。
- 按照操作流程要求,定期执行恢复检查和故障转移演练。
- 在故障转移或恢复后,验证平台访问、
global服务、已连接集群的访问权限以及组件级恢复。
有关相关规划和操作路径,请参阅 了解更多。