概述

使用 Fleet 进行持续交付是大规模的 GitOps。Fleet 旨在管理多达一百万个集群。它也足够轻量级,对于单个集群也很有效,但当你达到大规模时,它真的会大放异彩。大规模是指单个组织中的大量集群、大量部署或大量团队。

Fleet 是 Rancher 的一个独立项目,可以通过 Helm 安装在任何 Kubernetes 集群上。

架构

有关 Fleet 如何运作的信息,请参阅架构页面。

在 Rancher UI 中访问 Fleet

Fleet 预安装在 Rancher 中,并由 Rancher UI 中的持续交付选项进行管理。有关持续交付和其他 Fleet 故障排除技巧的更多信息,请参阅此处

用户可以按照 gitops 实践,利用持续交付将应用程序部署到 git 仓库中的 Kubernetes 集群,而无需任何手动操作。

按照以下步骤在 Rancher UI 中访问持续交付:

  1. 单击 ☰ > 持续交付

  2. 在菜单顶部选择命名空间 ,注意以下事项:

    • 默认情况下,选择 fleet-default,包括通过 Rancher 注册的所有下游集群。

    • 你可以切换到 fleet-local,它仅包含 local 集群,或者你可以创建自己的工作空间,将集群分配和移动到其中。

    • 然后,你可以通过单击左侧导航栏上的集群来管理集群。

  3. 单击左侧导航栏上的 Gitrepos,将 gitrepo 部署到当前工作空间的集群中。

  4. 选择 git 仓库目标集群/集群组。你也可以通过单击左侧导航栏中的集群组在 UI 中创建集群组。

  5. 部署 gitrepo 后,你可以通过 Rancher UI 监控应用程序。

Windows 支持

有关对具有 Windows 节点的集群的支持的详细信息,请参阅 Windows 支持页面。

GitHub 仓库

Fleet Helm charts 可在此处获取。

在代理后使用 Fleet

有关在代理后面使用 Fleet 的详细信息,请参阅在代理后使用 Fleet 页面。

Helm Chart 依赖

为了成功部署具有依赖项的 Helm Chart,你必须运行一个手动命令(如下所示),因为用户需要满足依赖列表。如果不执行此操作,继续克隆你的仓库并运行 helm install,则会因依赖项丢失而导致安装失败。

git 仓库中的 Helm Chart 必须在 Chart 子目录中包含其依赖。 你必须手动运行 helm dependencies update $chart 或在本地运行 helm dependencies build $chart,然后将完整的 Chart 目录提交到 git 仓库。请注意,你需要使用适当的参数更新你的命令。

故障排除

  • 已知问题:Fleet gitrepos 的 clientSecretName 和 helmSecretName 密文不包含在 backup-restore-operator 创建的备份或恢复中。一旦有永久的解决方案,我们将更新社区内容。

  • 临时解决方法:默认情况下,用户定义的密文不会在 Fleet 中备份。如果执行灾难恢复或将 Rancher 迁移到新集群,则有必要重新创建密文。要修改 ResourceSet 以包含要备份的额外资源,请参阅文档此处

文档

Fleet 文档位于 https://fleet.rancher.io/