牧场主舰队 - AWS 规范性指导

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

牧场主舰队

Rancher Fleet 是一款专为管理多个 Kubernetes 集群而设计的 GitOps-at-scale解决方案。它严格遵守 GitOps 原则,同时注重可扩展性和多集群管理。

GitOps 支持

区域图 工具功能

Git 是唯一的真相来源

Fleet 使用 Git 存储库作为权威来源,用于定义跨多个集群的应用程序和资源的所需状态。所有配置,包括 Kubernetes 清单、Helm 图表和自定义资源,都存储在 Git 中。

声明式配置

Fleet 使用对应用程序和资源所需状态的声明性描述。这些资源可以是原始的 Kubernetes YAML、Helm 图表、Kustomize 文件或特定于舰队的自定义资源。

自动同步

Fleet 会持续监控 Git 存储库是否有更改。当它检测到 Git 状态和集群状态之间的差异时,它会自动将更改应用于目标集群。

多集群管理

队列专为管理多个 Kubernetes 集群间的部署而设计。它可以处理来自单个控制平面的成千上万个集群。

Kubernetes 原生架构

舰队是作为一组 Kubernetes 自定义资源和控制器构建的。它使用 Kubernetes 中的扩展机制进行操作。 GitOps

持续对账

Fleet 会不断将集群的实际状态与 Git 中定义的所需状态进行比较。它会自动校正这些状态之间检测到的任何偏差。

集群分组和定位

Fleet 允许您对集群进行分组,并将部署定位到特定组或单个集群。它支持跨不同环境和群集类型进行一致的应用程序部署。

分层配置

Fleet 支持分层配置,分层配置为基础配置提供环境特定的叠加层。这符合高效管理多个环境的 GitOps 做法。

头盔集成

Fleet 为 Helm 图表提供原生支持,并可轻松管理复杂的应用程序。它可以通过 GitOps 工作流程对Helm版本进行版本控制和管理。

自定义资源定义 (CRDs)

Fleet 使用自定义资源(例如 GitRepo 和 Bundle)来定义部署。它们 CRDs 提供了一种基于 Kubernetes 的原生方式来定义工作流程。 GitOps

安全和 RBAC

Fleet 与 Kubernetes RBAC 集成以实现访问控制。它支持敏感信息和凭证的安全管理。

可观测性

Fleet 提供有关集群和应用程序同步状态的状态信息。它提供了对整个集群中 GitOps 流程的见解。

可扩展性

Fleet 旨在扩展以高效管理数千个集群。它支持企业环境中的大规模 GitOps 运营。

依赖关系管理

您可以定义不同资源和应用程序之间的依赖关系。Fleet 可确保在复杂的部署中遵循正确的操作顺序。

自定义和可扩展性

Fleet 支持自定义脚本和生命周期挂钩,用于对部署进行高级自定义。它允许与现有工具和工作流程集成。

离线和隔空支持

Fleet 可以在互联网连接有限或没有互联网连接的环境中运行。它支持高安全性或受监管环境中的 GitOps 工作流程。

渐进式推出

Fleet 支持跨集群分阶段部署,这允许采用受控和渐进的部署策略。

统一的管理界面

Fleet 提供了一个用于管理所有集群 GitOps工作流程的单一界面。它简化了复杂的多集群环境中的操作。

与其他 Rancher 工具集成

Fleet 可与其他 Rancher 工具集成,提供全面的 Kubernetes 管理解决方案。

审计跟踪和合规性

Fleet 会对所有变更和部署进行清晰的审计跟踪。它通过版本控制、基于 Git 的操作帮助您满足合规性要求。

Rancher Fleet 在实施这些 GitOps 原则时非常注重可扩展性和多集群管理。它的设计特别适合管理跨不同环境、数据中心或云提供商的大量 Kubernetes 集群的组织。

Fleet 的主要区别在于其大规模处理 GitOps 能力。此功能对于管理大量集群的大型企业或托管服务提供商来说特别有价值。诸如 Argo CD 或 Flux 之类的工具通常用于单个集群管理,而 Fleet GitOps 则用于管理大型集群。

通过遵守这些 GitOps 原则,Rancher Fleet 为希望在多样化和大规模的 Kubernetes 环境中对应用程序和资源实施一致、可扩展和自动管理的组织提供了解决方案。

有关更多信息,请参阅 Fleet 文档

架构

有关架构和工作流程的信息,请参阅 Fleet 存储库