FLUXCD
Fluxcd CLI

1. Ispezione e Stato Generale
| Comando |
Descrizione |
flux check |
Verifica l'installazione e la compatibilità dei componenti nel cluster. |
flux get all -A |
Visualizza tutte le risorse (Git, Helm, KS) in tutti i namespace. |
flux stats |
Mostra statistiche sulle risorse e le performance dei controller. |
2. Riconciliazione (Sync Forzato)
| Comando |
Descrizione |
flux reconcile source git <nome> |
Forza il pull immediato dei nuovi commit dal repository Git. |
flux reconcile ks <nome> |
Forza l'applicazione immediata dei manifesti Kustomize. |
flux reconcile hr <nome> |
Sincronizza i valori e aggiorna la HelmRelease specificata. |
3. Debug e Troubleshooting
| Comando |
Descrizione |
flux logs --all-namespaces |
Streaming aggregato dei log di tutti i controller Flux. |
flux events -n <ns> |
Mostra la cronologia degli eventi (errori di sync, pull falliti, ecc.). |
flux trace <kind> <name> |
Ricostruisce la catena di dipendenze di una risorsa fino al commit Git. |
flux get hr <nome> -o yaml |
Ispeziona lo stato (status) e i messaggi d'errore dettagliati di una release. |
4. Gestione Ciclo di Vita (Maintenance)
| Comando |
Descrizione |
flux suspend ks <nome> |
Sospende la sincronizzazione (utile per modifiche manuali "hotfix"). |
flux resume ks <nome> |
Riprende la riconciliazione automatica. |
flux suspend hr <nome> |
Blocca gli aggiornamenti automatici di un Helm Chart. |
flux resume hr <nome> |
Riabilita gli aggiornamenti della HelmRelease. |
5. Preview e Validazione Locale
| Comando |
Descrizione |
flux build ks <nome> --path ./percorso |
Renderizza localmente lo YAML finale (dry-run locale). |
flux diff ks <nome> --path ./percorso |
Mostra le differenze tra Git e lo stato attuale del cluster. |
6. Risorse Sorgente
| Comando |
Descrizione |
flux get sources git |
Elenca i GitRepository configurati e i relativi branch/commit. |
flux get sources helm |
Elenca i repository Helm e lo stato degli indici (index.yaml). |
flux get sources chart |
Mostra i chart scaricati e pronti per l'installazione. |
Alias Rapidi (Shortcuts)
- ks =
kustomization
- hr =
helmrelease
- git =
source git
- repo =
source helm
Esempi
# File gestiro dal kustomize controller flux
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: monitoring
namespace: flux-system
spec:
dependsOn:
- name: infrastructure
interval: 3m
timeout: 15m
path: "./clusters/rke2-home/monitoring"
prune: true
sourceRef:
kind: GitRepository
name: flux-system
wait: true
# File gestiro dal helm controller flux
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: grafana
namespace: monitoring
spec:
interval: 1h
chart:
spec:
chart: grafana
version: ">= 10.5.15"
sourceRef:
kind: HelmRepository
name: grafana
namespace: flux-system
values:
ingress:
enabled: true
ingressClassName: traefik
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: web
hosts:
- test.com
persistence:
enabled: true
storageClassName: local-path-retain
size: 2Gi
# Source chart
apiVersion: source.toolkit.fluxcd.io/v1
kind: HelmRepository
metadata:
name: gitlab
namespace: flux-system
spec:
interval: 1h
url: https://charts.gitlab.io