From 2076c10f01d434dfaecc2372b37d73207f9bfe97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9C=B1?= Date: Fri, 23 Aug 2024 15:17:48 +0800 Subject: [PATCH] docs: add applicationset configuration --- .../docs/amamba/images/argocd-helm-any-ns.png | Bin 0 -> 19398 bytes .../amamba/images/gitops-application-set.png | Bin 0 -> 33655 bytes .../user-guide/gitops/applicationset.md | 128 ++++++++ .../user-guide/gitops/integrate-argocd-ui.md | 298 +++++++++--------- docs/zh/navigation.yml | 1 + 5 files changed, 280 insertions(+), 147 deletions(-) create mode 100644 docs/zh/docs/amamba/images/argocd-helm-any-ns.png create mode 100644 docs/zh/docs/amamba/images/gitops-application-set.png create mode 100644 docs/zh/docs/amamba/user-guide/gitops/applicationset.md diff --git a/docs/zh/docs/amamba/images/argocd-helm-any-ns.png b/docs/zh/docs/amamba/images/argocd-helm-any-ns.png new file mode 100644 index 0000000000000000000000000000000000000000..0efccb61eedd268202750fe08d07ad10fafc9126 GIT binary patch literal 19398 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 T(XmFr00000NkvXXu0mjfCo)=n literal 0 HcmV?d00001 diff --git a/docs/zh/docs/amamba/images/gitops-application-set.png b/docs/zh/docs/amamba/images/gitops-application-set.png new file mode 100644 index 0000000000000000000000000000000000000000..9e956aead7773da2dcd1c9328c3b6b6d00e47c67 GIT binary patch literal 33655 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 literal 0 HcmV?d00001 diff --git a/docs/zh/docs/amamba/user-guide/gitops/applicationset.md b/docs/zh/docs/amamba/user-guide/gitops/applicationset.md new file mode 100644 index 0000000000..55a3f7a601 --- /dev/null +++ b/docs/zh/docs/amamba/user-guide/gitops/applicationset.md @@ -0,0 +1,128 @@ +# 使用 ApplicationSet + +ArgoCD 支持使用 [ApplicationSet](https://argo-cd.readthedocs.io/en/stable/user-guide/application-set/) 的方式来灵活的生成多个 GitOps 应用,例如多集群应用场景,应用工作台中使用 `AppOfApplicationSet` 的方式来进行支持。本文将指导您如何在应用工作台中启用 ApplicationSet 功能。 + +!!! note + + 本文假设您的ArgoCD 安装的命名空间和Helm Release名称均为 argocd。这将会影响到后续的搜索和修改操作,如果您的命名空间和Release名称不同,请自行替换。 + +## AppOfApplicationSet模式 + +`AppOfApplicationSet` 是 GitOps的一种运维模式,通过 Application -> 生成ApplicationSet -> 生成多个Application 的方式来实现多集群应用的部署。 效果如图: +![applicationset](../../images/gitops-application-set.png) + +因此本质上还是创建的 GitOps Application。前提是您的 GitOps 仓库(假设您的仓库名称为 app-set-repo) 中需要包含一份 ApplicationSet 的定义文件。如下所示: + +```yaml +apiVersion: argoproj.io/v1alpha1 +kind: ApplicationSet # 资源类型为 ApplicationSet +metadata: + name: guestbook # 注意不要定义namespace,否则无法正常创建 +spec: + generators: + - list: + elements: # 自定义的元素,是一个map结构,可以任意添加,会被go template的形式替换 + - cluster: "cluster1" + namespace: "ns1" + path: "dev" + - cluster: "cluster2" + namespace: "ns2" + path: "staging" + template: # 本质上是渲染出一个ArgoCD的 Application 资源 + metadata: + name: "{{cluster}}-2048" # 在template中可以使用上述generators中定义的元素 + spec: + project: "2" # 代表工作空间的ID + source: + repoURL: https://demo-repo.git # 真实创建 Application 的仓库地址,上述elements中的path应该与此URL对应的仓库对应 + targetRevision: HEAD + path: "{{path}}" + destination: + name: "{{cluster}}" + namespace: "{{namespace}}" +``` + +> 注意 Application 中的集群和命名空间需要提前在【全局管理】模块中进行绑定。project, cluster, namespace请按权限填写,否则会导致创建失败。 + +后续需要在应用工作台的 GitOps 模块创建一个GitOps Application,其中的仓库地址为 app-set-repo对应的地址,即可生成多个 Application。如何创建GitOps应用请看[创建 GitOps 应用](create-argo-cd.md)。 + +请按照下面的步骤来启用 ApplicationSet 功能。 + +## 启用 ApplicationSet 功能 + +1. 配置 ApplicationSet Controller 的RBAC + + ApplicationSet 依赖于ApplicationSet Controller的调谐才能实现控制多个Application,需要在集群中配置相应的 RBAC 角色(默认情况下不会创建,需要手动创建)。分为两种情况: + +- 如果您已经安装了ArgoCD + + 默认情况下,通过 helm安装的ArgoCD 不会创建 ApplicationSet Controller 的ClusterRole和ClusterRoleBinding,您需要手动创建。 推荐通过更新 Helm 应用的方式。 + + 前往 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **Helm应用** -> 搜索 `argocd`(您安装ArgoCD时的Helm应用名称),点击右侧 **更新**,在表单中开启argcd.applicationSet.allowAnyNamespace选项,如下: + + ![update-argocd](../../images/argocd-helm-any-ns.png)。 + + 当然也可以通过values.yaml来设置: + + ```yaml + argo-cd: + applicationSet: + allowAnyNamespace: true + ``` + + 除此之外,您也可以选择在 `kpanda-global-cluster` 集群上通过命令行的方式创建: + + ```shell + kubectl apply https://github.com/argoproj/argo-cd/blob/master/manifests/cluster-rbac/applicationset-controller/argocd-applicationset-controller-clusterrole.yaml + kubectl apply https://github.com/argoproj/argo-cd/blob/master/manifests/cluster-rbac/applicationset-controller/argocd-applicationset-controller-clusterrolebinding.yaml + ``` + +- 如果您未安装ArgoCD + + 在安装时通过设置 `argocd.applicationSet.allowAnyNamespace` 为 `true` 来创建RBAC资源。 + +1. 修改ArgoCD相关的ConfigMap配置 + + 前往 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **配置与密钥** -> **配置项**, 此处需要修改以下两个configmap,因为需要添加内容,请选择 **编辑yaml** 的形式进行修改 + +- argocd-cm + + 在yaml的data字段中添加如下配置: + + ```yaml + kind: ConfigMap + apiVersion: v1 + metadata: + name: argocd-cm + data: + application.resourceTrackingMethod: "annotation+label" # 添加这一行 + ``` + +- argocd-cmd-params-cm + 在yaml的data字段中添加或修改如下配置: + + ```yaml + kind: ConfigMap + apiVersion: v1 + metadata: + name: argocd-cmd-params-cm + data: + # 添加下面这三行 + application.namespaces: "gitops-*" + applicationsetcontroller.namespaces: "gitops-*" + applicationsetcontroller.allowed.scm.providers: "true" + ``` + + 完成上述更改后,您需要重启ArgoCD和Amamba相关组件。 + +## 重启服务 + +重启ArgoCD组件: + +前往 前往 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **工作负载** -> **无状态负载** -> 命名空间选 `argocd` (您安装ArgoCD的命名空间) -> 搜索 `argocd-applicationset-controller` -> 点击右侧 **┇** 中的 **状态** 进行重启。同时在 **有状态负载** -> 搜索 `argocd-application-controller`,将其重启。 + +重启Amamba组件: + +前往 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **工作负载** -> **无状态负载** ,选择命名空间 `amamba-system`,分别重启 `amamba-apiserver` 和 `amamba-syncer` 这两个 Deployment。 + +等待上述组件重启完成后,前往应用工作台创建 GitOps 应用时选择 `AppOfApplicationSet`的方式创建即可。 diff --git a/docs/zh/docs/amamba/user-guide/gitops/integrate-argocd-ui.md b/docs/zh/docs/amamba/user-guide/gitops/integrate-argocd-ui.md index 027942e371..7327cf2ac1 100644 --- a/docs/zh/docs/amamba/user-guide/gitops/integrate-argocd-ui.md +++ b/docs/zh/docs/amamba/user-guide/gitops/integrate-argocd-ui.md @@ -7,189 +7,193 @@ DCE 5.0 应用工作台提供了开启 ArgoCD UI 的功能。本文档将指导 在 UI 中仅有只读权限,如果有其他操作需求,请通过工作台进行操作。 +!!! note + + 本文假设您安装的ArgoCD命名空间为argocd,并且Helm 应用名称也为argocd,这将会涉及到后续的搜索和修改操作,如果您的命名空间和Helm 应用名称不为argocd,请自行替换。 + ## 操作步骤 开启 ArgoCD 的 UI 功能需要修改的配置项较多,并且配置项之间是相互影响的,请严格按照下面的步骤进行配置。 ### 修改 ArgoCD 配置 -下述配置均在 `kpanda-global-cluster` 集群中,并假设您的 ArgoCD 安装在 `argocd` 这个命名空间中。 +下述配置均在 `kpanda-global-cluster` 集群中进行修改。 -前往 __容器管理__ -> __集群列表__ -> __kpanda-global-cluster__ -> __自定义资源__ ,根据资源分组及版本搜索 -(即 `apiVersion` 字段。以 `Gateway` 为例,搜索 `networking.istio.io`),进入自定义资源详情后,选择对应命名空间及版本,在右侧点击 __YAML 创建__ 。 +前往 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **自定义资源** ,根据资源分组及版本搜索 +(即 `apiVersion` 字段。以 `Gateway` 为例,搜索 `networking.istio.io`),进入自定义资源详情后,选择对应命名空间及版本,在右侧点击 **YAML 创建** 。 创建以下几个资源。 1. 创建 Gateway - ```yaml - apiVersion: networking.istio.io/v1alpha3 - kind: Gateway - metadata: - name: argocd-gateway - namespace: argocd # 注意命名空间 - spec: - selector: - istio: ingressgateway - servers: - - hosts: - - "*" - port: - name: http - number: 80 - protocol: HTTP - tls: - httpsRedirect: false - - hosts: - - "*" - port: - name: https - number: 443 - protocol: HTTPS - tls: - cipherSuites: - - ECDHE-ECDSA-AES128-GCM-SHA256 - - ECDHE-RSA-AES128-GCM-SHA256 - - ECDHE-ECDSA-AES128-SHA - - AES128-GCM-SHA256 - - AES128-SHA - - ECDHE-ECDSA-AES256-GCM-SHA384 - - ECDHE-RSA-AES256-GCM-SHA384 - - ECDHE-ECDSA-AES256-SHA - - AES256-GCM-SHA384 - - AES256-SHA - credentialName: argocd-secret - maxProtocolVersion: TLSV1_3 - minProtocolVersion: TLSV1_2 - mode: SIMPLE - ``` + ```yaml + apiVersion: networking.istio.io/v1alpha3 + kind: Gateway + metadata: + name: argocd-gateway + namespace: argocd # argocd所在命名空间 + spec: + selector: + istio: ingressgateway + servers: + - hosts: + - "*" + port: + name: http + number: 80 + protocol: HTTP + tls: + httpsRedirect: false + - hosts: + - "*" + port: + name: https + number: 443 + protocol: HTTPS + tls: + cipherSuites: + - ECDHE-ECDSA-AES128-GCM-SHA256 + - ECDHE-RSA-AES128-GCM-SHA256 + - ECDHE-ECDSA-AES128-SHA + - AES128-GCM-SHA256 + - AES128-SHA + - ECDHE-ECDSA-AES256-GCM-SHA384 + - ECDHE-RSA-AES256-GCM-SHA384 + - ECDHE-ECDSA-AES256-SHA + - AES256-GCM-SHA384 + - AES256-SHA + credentialName: argocd-secret + maxProtocolVersion: TLSV1_3 + minProtocolVersion: TLSV1_2 + mode: SIMPLE + ``` 1. 创建 VirtualService - ```yaml - apiVersion: networking.istio.io/v1alpha3 - kind: VirtualService - metadata: - name: argocd-virtualservice - namespace: argocd # 注意命名空间 - spec: - gateways: - - argocd-gateway - hosts: - - "*" - http: - - match: - - uri: - prefix: /argocd - route: - - destination: - host: argocd-server - port: - number: 80 - ``` + ```yaml + apiVersion: networking.istio.io/v1alpha3 + kind: VirtualService + metadata: + name: argocd-virtualservice + namespace: argocd # argocd所在命名空间 + spec: + gateways: + - argocd-gateway + hosts: + - "*" + http: + - match: + - uri: + prefix: /argocd + route: + - destination: + host: argocd-server + port: + number: 80 + ``` 1. 创建 GProductProxy - ```yaml - apiVersion: ghippo.io/v1alpha1 - kind: GProductProxy - metadata: - name: argocd - spec: - gproduct: amamba - proxies: - - authnCheck: false - destination: - host: amamba-argocd-server.argocd.svc.cluster.local - port: 80 - match: - uri: - prefix: /argocd/applications/argocd - - authnCheck: false - destination: - host: amamba-argocd-server.argocd.svc.cluster.local # 如果命名空间不是argocd,需要更改svc的名称 - port: 80 - match: - uri: - prefix: /argocd - ``` - - host 中的 `amamba-argocd-server.argocd.svc.cluster.local` 需要根据您的 ArgoCD 的服务名称和命名空间进行修改。 - 具体修改路径为 __容器管理__ -> __集群列表__ -> __kpanda-global-cluster__ -> __容器网络__ ,根据 ArgoCD 安装的命名空间搜索关键词 `argocd-server` 来确定。 + ```yaml + apiVersion: ghippo.io/v1alpha1 + kind: GProductProxy + metadata: + name: argocd + spec: + gproduct: amamba + proxies: + - authnCheck: false + destination: + host: argocd-server.argocd.svc.cluster.local + port: 80 + match: + uri: + prefix: /argocd/applications/argocd + - authnCheck: false + destination: + host: argocd-server.argocd.svc.cluster.local # 如果命名空间不是argocd,需要更改svc的名称 + port: 80 + match: + uri: + prefix: /argocd + ``` + + host 中的 `argocd-server.argocd.svc.cluster.local` 需要根据您的 ArgoCD 的服务名称和命名空间进行修改。 + 具体修改路径为 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **容器网络** ,根据 ArgoCD 安装的命名空间搜索关键词 `argocd-server` 来确定。 1. 修改 ArgoCD 的相关配置 - 前往 __容器管理__ -> __集群列表__ -> __kpanda-global-cluster__ -> __工作负载__ -> __无状态负载__ , - 选择您安装的 ArgoCD 的命名空间,如 argocd。找到 `argocd-server`,点击右侧的 __重启__ 按钮。 - - 修改 `argocd-cmd-params-cm`: - - ```yaml - kind: ConfigMap - metadata: - name: argocd-cmd-params-cm - namespace: argocd - data: - server.basehref: /argocd # 添加这三行 - server.insecure: "true" - server.rootpath: /argocd - ``` - - 修改 `argocd-rbac-cm`: - - ```yaml - apiVersion: v1 - kind: ConfigMap - metadata: - name: argocd-rbac-cm - namespace: argocd - data: - policy.csv: |- - g, amamba, role:admin - g, amamba-view, role:readonly # 添加这一行 - ``` - - 修改 `argocd-cm`: - - ```yaml - apiVersion: v1 - kind: ConfigMap - metadata: - name: argocd-cm - namespace: argocd - data: - accounts.amamba: apiKey - accounts.amamba-view: apiKey # 添加这一行 - ``` + 前往 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **工作负载** -> **无状态负载** , + 选择您安装的 ArgoCD 的命名空间,如 argocd。找到 `argocd-server`,点击右侧的 **重启** 按钮。 + + 修改 `argocd-cmd-params-cm`: + + ```yaml + kind: ConfigMap + metadata: + name: argocd-cmd-params-cm + namespace: argocd + data: + server.basehref: /argocd # 添加这三行 + server.insecure: "true" + server.rootpath: /argocd + ``` + + 修改 `argocd-rbac-cm`: + + ```yaml + apiVersion: v1 + kind: ConfigMap + metadata: + name: argocd-rbac-cm + namespace: argocd + data: + policy.csv: |- + g, amamba, role:admin + g, amamba-view, role:readonly # 添加这一行 + ``` + + 修改 `argocd-cm`: + + ```yaml + apiVersion: v1 + kind: ConfigMap + metadata: + name: argocd-cm + namespace: argocd + data: + accounts.amamba: apiKey + accounts.amamba-view: apiKey # 添加这一行 + ``` 1. 更改完上述选项后,需要重启 `argocd-server` 这个 Deployment。 - 前往 __容器管理__ -> __集群列表__ -> __kpanda-global-cluster__ -> __工作负载__ -> __无状态负载__ , - 选择您安装的 ArgoCD 的命名空间,如 argocd。 找到 `argocd-server`,点击右侧的 __重启__ 按钮。 + 前往 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **工作负载** -> **无状态负载** , + 选择您安装的 ArgoCD 的命名空间,如 argocd。 找到 `argocd-server`,点击右侧的 **重启** 按钮。 ### 修改应用工作台配置项 经过上述步骤后,还需要更改应用工作台的配置项才能使 ArgoCD UI 生效。 -1. 前往 __容器管理__ -> __集群列表__ -> __kpanda-global-cluster__ -> __配置与密钥__ -> __配置项__ , +1. 前往 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **配置与密钥** -> **配置项** , 选择命名空间 `amamba-system`,修改 `amamba-config` 这个 ConfigMap,修改以下配置项: - ```yaml - generic: - argocd: - host: amamba-argocd-server.argocd.svc.cluster.local:443 # 将端口改为443 - enableUI: true # 添加这个选项 - ``` + ```yaml + generic: + argocd: + host: argocd-server.argocd.svc.cluster.local:443 # 将端口改为443 + enableUI: true # 添加这个选项 + ``` - host 端口保持 443,其中 `amamba-argocd-server.argocd.svc.cluster.local` 需要根据您的 ArgoCD 的服务名称和命名空间进行修改。 - 具体修改路径为 __容器管理__ -> __集群列表__ -> __kpanda-global-cluster__ -> __容器网络__ ,根据 ArgoCD 安装的命名空间搜索关键词 `argocd-server` 来确定。 + host 端口保持 443,其中 `argocd-server.argocd.svc.cluster.local` 需要根据您的 ArgoCD 的服务名称和命名空间进行修改。 + 具体修改路径为 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **容器网络** ,根据 ArgoCD 安装的命名空间搜索关键词 `argocd-server` 来确定。 -1. 更改完上述选项后,前往 __容器管理__ -> __集群列表__ -> __kpanda-global-cluster__ -> __工作负载__ -> __无状态负载__ , +1. 更改完上述选项后,前往 **容器管理** -> **集群列表** -> **kpanda-global-cluster** -> **工作负载** -> **无状态负载** , 选择命名空间 `amamba-system`,分别重启 `amamba-apiserver` 和 `amamba-syncer` 这两个 Deployment。 ### 查看拓扑 -1. 在 __应用工作台__ -> __持续发布__ 页面中,点击一个应用名称,进入详情界面 +1. 在 **应用工作台** -> **持续发布** 页面中,点击一个应用名称,进入详情界面 1. 详情界面点击 `ArgoCD 拓扑` 即可看到拓扑图: - ![topo](../../images/gitops-topo.jpg) + ![topo](../../images/gitops-topo.jpg) diff --git a/docs/zh/navigation.yml b/docs/zh/navigation.yml index 95db65bbd7..559bcdba14 100644 --- a/docs/zh/navigation.yml +++ b/docs/zh/navigation.yml @@ -161,6 +161,7 @@ nav: - 手动同步应用: amamba/user-guide/gitops/sync-manually.md - 在GitOps中启用凭证加密功能: amamba/user-guide/gitops/gitops-secret.md - 启用ArgoCD原生UI: amamba/user-guide/gitops/integrate-argocd-ui.md + - 启用 ApplicationSet 功能: amamba/user-guide/gitops/applicationset.md - 灰度发布: - 创建金丝雀发布任务: amamba/user-guide/release/canary.md - 查看金丝雀发布任务: amamba/user-guide/release/check-canary.md