Přeskočit na obsah
_CORE
AI & Agentic Systems Core Informační Systémy Cloud & Platform Engineering Data Platforma & Integrace Security & Compliance QA, Testing & Observability IoT, Automatizace & Robotika Mobile & Digital Banky & Finance Pojišťovnictví Veřejná správa Obrana & Bezpečnost Zdravotnictví Energetika & Utility Telco & Média Průmysl & Výroba Logistika & E-commerce Retail & Loyalty
Reference Technologie Blog Know-how
Nástroje O nás Spolupráce Kariéra
Pojďme to probrat

ArgoCD — Pokročilá Konfigurace

21. 11. 2023 1 min čtení intermediate

DevOps Expert

ArgoCD — Pokročilá Konfigurace

ArgoCDGitOpsKubernetesMulti-cluster 5 min čtení

ArgoCD ApplicationSets, multi-cluster management, Sync Waves a hook-based deployments.

ApplicationSets

ApplicationSet controller generuje ArgoCD Applications dynamicky — ideální pro multi-cluster a multi-tenant scénáře.

apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
  name: microservices
spec:
  generators:
    - git:
        repoURL: https://github.com/org/manifests
        revision: main
        directories:
          - path: apps/*
  template:
    metadata:
      name: '{{path.basename}}'
    spec:
      project: default
      source:
        repoURL: https://github.com/org/manifests
        targetRevision: main
        path: '{{path}}'
      destination:
        server: https://kubernetes.default.svc
        namespace: '{{path.basename}}'

Sync Waves & Hooks

Sync waves řídí pořadí deploymentu. Hooks spouští joby v konkrétních fázích sync cyklu.

metadata:
  annotations:
    argocd.argoproj.io/sync-wave: "-1"
    argocd.argoproj.io/hook: PreSync
---
apiVersion: batch/v1
kind: Job
metadata:
  name: db-migration
  annotations:
    argocd.argoproj.io/hook: PreSync
    argocd.argoproj.io/hook-delete-policy: HookSucceeded
spec:
  template:
    spec:
      containers:
        - name: migrate
          image: app:latest
          command: ["/migrate"]
      restartPolicy: Never

Multi-cluster Management

ArgoCD může spravovat desítky clusterů z jedné instance.

# Přidání clusteru
argocd cluster add prod-eu-west-1 --name prod-eu

# Deklarativní Secret
apiVersion: v1
kind: Secret
metadata:
  name: prod-cluster
  namespace: argocd
  labels:
    argocd.argoproj.io/secret-type: cluster
stringData:
  name: prod-eu
  server: https://prod-eu.example.com
  config: |
    {"bearerToken": "...", "tlsClientConfig": {"insecure": false}}

Shrnutí

ArgoCD pokročilé funkce jako ApplicationSets a Sync Waves umožňují škálovat GitOps na enterprise úroveň.

Potřebujete pomoct s implementací?

Náš tým má zkušenosti s návrhem a implementací moderních architektur. Rádi vám pomůžeme.

Nezávazná konzultace

Sdílet:

CORE SYSTEMS tým

Stavíme core systémy a AI agenty, které drží provoz. 15 let zkušeností s enterprise IT.