gitops_argocd

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

gitops_argocd

gitops_argocd

ArgoCD sincroniza automáticamente el estado del clúster Kubernetes con los manifiestos/charts del repositorio Git. Esto garantiza que nadie puede modificar la configuración del cluster manualmente y que el repositorio es la única fuente de verdad.
ArgoCD 可自动将Kubernetes集群状态与Git仓库中的manifests/charts同步。这可以确保没有人能够手动修改集群配置,Git仓库是唯一的事实来源。

When to use

适用场景

Implementar antes del primer deploy a producción. ArgoCD detecta cualquier drift entre el estado deseado (Git) y el estado real (cluster) y puede corregirlo automáticamente o alertar.
请在首次生产环境部署前实施。ArgoCD能够检测期望状态(Git)与实际状态(集群)之间的任何偏差,可以自动修正或发出告警。

Instructions

操作指南

  1. Instalar ArgoCD en el cluster:
    bash
    kubectl create namespace argocd
    kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
  2. Crear
    Application
    de ArgoCD apuntando al chart de Helm:
    yaml
    apiVersion: argoproj.io/v1alpha1
    kind: Application
    metadata:
      name: kyc-production
    spec:
      source:
        repoURL: https://github.com/company/kyc-system
        targetRevision: main
        path: charts/kyc
        helm:
          valueFiles: [values-prod.yaml]
      destination:
        server: https://kubernetes.default.svc
        namespace: kyc-prod
      syncPolicy:
        automated: { prune: true, selfHeal: true }
  3. selfHeal: true
    — ArgoCD revierte cambios manuales en el cluster automáticamente.
  4. prune: true
    — elimina recursos del cluster que se han eliminado del repo.
  5. Configurar notificaciones de ArgoCD a Slack para sync success/failure.
  6. Image updater: instalar
    argocd-image-updater
    para que ArgoCD detecte nuevas imágenes en el registry y abra PRs automáticamente.
  1. 在集群中安装ArgoCD:
    bash
    kubectl create namespace argocd
    kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
  2. 创建指向Helm chart的ArgoCD
    Application
    yaml
    apiVersion: argoproj.io/v1alpha1
    kind: Application
    metadata:
      name: kyc-production
    spec:
      source:
        repoURL: https://github.com/company/kyc-system
        targetRevision: main
        path: charts/kyc
        helm:
          valueFiles: [values-prod.yaml]
      destination:
        server: https://kubernetes.default.svc
        namespace: kyc-prod
      syncPolicy:
        automated: { prune: true, selfHeal: true }
  3. selfHeal: true
    — ArgoCD会自动回滚集群中的手动变更。
  4. prune: true
    — 自动删除集群中已从仓库移除的资源。
  5. 配置ArgoCD的Slack通知,用于推送同步成功/失败的消息。
  6. 镜像更新器:安装
    argocd-image-updater
    ,让ArgoCD检测镜像仓库中的新镜像,自动提交PR。

Notes

注意事项

  • Con ArgoCD,
    kubectl apply
    directo en producción está prohibido — todos los cambios van via Git PR.
  • El acceso a ArgoCD UI debe estar protegido con SSO (integrar con Keycloak o GitHub OAuth).
  • Guardar las credenciales de repositorio de ArgoCD en Vault, no en el cluster directamente.
  • 使用ArgoCD时,禁止直接在生产环境执行
    kubectl apply
    — 所有变更都需通过Git PR提交。
  • ArgoCD UI的访问必须通过SSO保护(可集成Keycloak或GitHub OAuth)。
  • ArgoCD的仓库凭证需存储在Vault中,不要直接存放在集群内。