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