Karmada-io 是一个由华为开源的云原生多云容器编排平台,旨在让开发者能够像使用单个 Kubernetes 集群一样使用多个 Kubernetes 集群。以下是 Karmada 的一些核心特性和概念:
1. **核心概念**:
- **资源模板**:Karmada 使用 Kubernetes 原生 API 定义联邦资源模板,以便于与现有 Kubernetes 工具集成。
- **调度策略**:提供独立的 Propagation Policy API 来定义多集群的调度要求,支持 1:N 的策略映射机制。
- **差异化策略**:为不同集群提供 Override Policy API,允许自动化生产独立配置,例如根据集群区域自动配置不同的镜像仓库地址。
2. **特性**:
- **兼容 K8s 原生 API**:从单集群到多集群的无侵入式升级,现有 K8s 工具链的无缝集成。
- **开箱即用**:针对场景内置策略集,如 `Active-active`、`Remote DR`、`Geo Redundant` 等,实现跨集群应用程序自动伸缩、故障转移和负载均衡。
- **避免供应商锁定**:与主流云提供商集成,在集群之间自动分配、迁移,未绑定专有供应商编排。
- **集中式管理**:位置无关的集群管理,支持公有云、本地或边缘上的集群。
- **丰富多集群调度策略**:包括集群亲和性、实例在多集群中的拆分调度/再平衡,多维 HA:区域/AZ/集群/提供商。
&