在已启用 Arc 的 AKS 边缘软件包群集中远程部署应用程序
可以使用 GitOps 和 Flux 轻松地将容器化应用程序部署到已启用 Arc 的 AKS 边缘软件包群集。
在零售连锁场景中,我们需要通过部署跟踪库存和分析交互的智能货架应用程序来优化客户体验。 我们需要一个用于管理传感器、保护数据和实现远程监督的解决方案。
在这里,你将了解如何使用 GitOps 和 Flux 将应用程序部署到已启用 Arc 的 AKS 边缘软件包群集。
适用于已启用 Arc 的 Kubernetes 的 GitOps
Azure Arc 的一个主要优势是促进实现 DevOps 原则,将已确立的开发实践应用于操作。 DevOps 可提高敏捷性,且不会影响 IT 环境的稳定性。 已启用 Azure Arc 的 Kubernetes 支持 GitOps,这是一种通过减少手动部署工作量来简化应用程序发布过程的 DevOps 做法。
借助 GitOps,可以更轻松地在整个组织中标准化 Kubernetes 配置,包括已启用 Arc 的 Kubernetes。 存储库或其他文件源承载表示资源预期状态的配置文件。
在 Kubernetes 群集上运行的代理监视存储库的状态。 发生配置更改时,代理会将更新的文件拉取到群集并应用新配置,确保群集保持所需状态。
已启用 Azure Arc 的 Kubernetes 群集依赖于 Flux,Flux 是一种常用的开源 GitOps 部署操作程序,可自动将配置部署到群集。 Flux 支持常见的文件源(如 Git 存储库、Helm 存储库和 Bucket),并支持 YAML、Helm 和 Kustomize 配置模板类型。
用于将应用程序推送到 AKS 边缘软件包的 GitOps 配置
将 AKS 边缘软件包连接到 Azure Arc 并启用 GitOps 后,可以使用 GitOps 和 Flux 将应用程序部署到 AKS 边缘软件包群集。 为此,请创建群集级配置和命名空间级配置。 在示例中,请使用以下 Helm 配置:
将更改提交到 GitHub 应用程序存储库以进行自动更新
在示例中,我们将 Flux 配置为在将更改提交到 GitHub 存储库主分支时自动更新应用程序。 例如,如果我们在创建命名空间级配置时将“同步间隔”设置为“1 分钟”,Flux 就会每分钟从 GitHub 拉取更改。