通量算子
     
Flux Operator是一个Kubernetes CRD控制器,用于管理 运营商通过自助服务功能、部署窗口扩展了Flux, 以及GitHub、GitLab、Gitea和Azure DevOps拉取请求测试的预览环境。
______________________________________________________________________
______________________________________________________________________
Flux CD自动驾驶仪 -运算符提供了Flux Bootstrap程序的替代方案,它 通过完全自动化,消除了跨集群舰队管理Flux的操作负担 基于声明性API的Flux控制器的安装、配置和升级。
高级配置 -操作员简化了Flux多租户锁定的配置, 分片、水平和垂直缩放、持久存储,并允许对Flux进行微调 带有Kustomize补丁的控制器。操作员简化了从Git到交付的转换 用于将集群期望状态转换为OCI工件和S3兼容存储的机制。
深度洞察 -操作员对Flux管理的输送管道提供了深入的见解, 包括有关Flux控制器的详细报告和Prometheus指标 准备状态、协调器统计数据和集群状态同步。 这 Flux Web用户界面 提供GitOps管道的实时视图, 允许您监视部署、跟踪对账状态和排除问题。
自助服务环境 -操作员 资源集API 使平台团队能够将自己的应用程序标准定义为一组Flux和Kubernetes资源 它可以被模板化、参数化,并作为一个单元部署在自助服务环境中。 ResourceSet API与Git pull请求集成,以创建短暂的环境 用于测试和验证。
人工智能辅助GitOps -The Flux MCP服务器 连接 运行运营商的Kubernetes集群的AI助手,实现无缝交互 通过自然语言。它是AI工具和GitOps管道之间的桥梁, 允许您分析跨环境的部署,排除问题, 并使用对话提示执行操作。
企业支持 -操作员是ControlPlane的关键组件 企业产品,旨在实现自动化 以安全可靠的方式向生产环境推出新的Flux版本、CVE补丁和修补程序。 操作员与控制平面通量分布一起在上进行端到端测试 红帽OpenShift、亚马逊EKS、Azure AKS和谷歌GKE。
快速入门指南
安装焊剂操作器
将焊剂操作器安装在 flux-system 命名空间,例如使用Helm:
helm install flux-operator oci://ghcr.io/controlplaneio-fluxcd/charts/flux-operator \
--namespace flux-system\[!注意\] Flux Operator可以使用Helm、Terraform、OperatorHub、kubectl和其他方法安装。 有关更多信息,请参阅 安装指南.
安装流量控制器
创建一个 FluxInstance 资源 命名 flux 在 flux-system 命名空间以安装最新的Flux稳定版本:
apiVersion: fluxcd.controlplane.io/v1
kind: FluxInstance
metadata:
name: flux
namespace: flux-system
annotations:
fluxcd.controlplane.io/reconcileEvery: "1h"
fluxcd.controlplane.io/reconcileArtifactEvery: "10m"
fluxcd.controlplane.io/reconcileTimeout: "5m"
spec:
distribution:
version: "2.x"
registry: "ghcr.io/fluxcd"
artifact: "oci://ghcr.io/controlplaneio-fluxcd/flux-operator-manifests"
components:
- source-controller
- kustomize-controller
- helm-controller
- notification-controller
- image-reflector-controller
- image-automation-controller
cluster:
type: kubernetes
size: medium
multitenant: false
networkPolicy: true
domain: "cluster.local"
kustomize:
patches:
- target:
kind: Deployment
patch: |
- op: replace
path: /spec/template/spec/nodeSelector
value:
kubernetes.io/os: linux
- op: add
path: /spec/template/spec/tolerations
value:
- key: "CriticalAddonsOnly"
operator: "Exists"\[!注意\] Flux实例可以通过多种方式进行自定义。 有关更多信息,请参阅 配置指南.
从Git存储库同步
要从Git存储库同步集群状态,请将以下配置添加到 FluxInstance:
apiVersion: fluxcd.controlplane.io/v1
kind: FluxInstance
metadata:
name: flux
namespace: flux-system
spec:
sync:
kind: GitRepository
url: "https://github.com/my-org/my-fleet.git"
ref: "refs/heads/main"
path: "clusters/my-cluster"
pullSecret: "flux-system"
# distribution omitted for brevity如果源存储库是私有的,则必须在 flux-system 命名空间 并且应该包含克隆存储库的凭据:
flux create secret git flux-system \
--url=https://github.com/my-org/my-fleet.git \
--username=git \
--password=$GITHUB_TOKEN\[!注意\] 有关如何从Git存储库配置同步的更多信息, 容器注册表和S3兼容存储,请参阅 集群同步指南.
监控焊剂安装
要监视Flux部署状态,请检查 Flux报告 资源在 flux-system 命名空间:
kubectl get fluxreport/flux -n flux-system -o yaml该报告会定期更新,并包含有关部署的信息 准备状态、分发详细信息、对账器统计数据、Flux CRD版本, 集群同步状态等。
访问Flux Web用户界面
要访问 Flux Web用户界面, 您可以将运营商服务进行端口转发:
kubectl -n flux-system port-forward svc/flux-operator 9080:9080请注意,Flux Web UI可以配置为 入口 和 单点登录 用于安全的外部访问。
资源集API
通量操作员 资源集API 为定义和管理Flux资源和相关Kubernetes提供高级抽象 将对象视为单个单元。 ResourceSet API旨在降低GitOps工作流的复杂性 为开发人员和平台团队提供自助服务。
指南:
文档
- 安装
- 焊剂操作员安装 - 自举集群的迁移 - Flux操作员CLI
- 通量配置
- 通量控制器配置 - Flux实例定制 - 群集同步配置 - 通量控制器分片 - 通量监测和报告
- CRD参考
- FluxInstance API参考 - FluxReport API参考 - 资源集API参考 - ResourceSetInputProvider API参考
贡献
我们欢迎通过GitHub pull请求为Flux Operator项目做出贡献。 请查看 贡献 关于如何设置开发环境并开始为项目做出贡献的详细指南。
许可证
Flux Operator是一个开源项目,根据 AGPL-3.0许可证.
该项目由CNCF Flux核心维护人员开发,是 控制平面 团队。
