gitops
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
# gitops-repo - esempio completo (3 namespace, Fleet su RKE2)
|
||||
|
||||
Repo di esempio pronto da usare come base: GitOps limitato a
|
||||
namespace-A, namespace-B, namespace-C, con Fleet come motore di sync.
|
||||
|
||||
## Struttura
|
||||
|
||||
```
|
||||
.
|
||||
├── bootstrap/ <- file legacy Argo CD (non usati con Fleet)
|
||||
│ ├── 00-namespace.yaml
|
||||
│ ├── 01-appproject.yaml
|
||||
│ └── 02-root.yaml
|
||||
│
|
||||
└── clusters/
|
||||
└── idc/ <- nome cluster/repository scope attuale
|
||||
├── namespace-A/
|
||||
│ ├── application.yaml <- da migrare a Fleet GitRepo
|
||||
│ └── manifests/
|
||||
│ └── deployment.yaml
|
||||
├── namespace-B/
|
||||
│ ├── application.yaml <- da migrare a Fleet GitRepo
|
||||
│ └── manifests/
|
||||
│ └── deployment.yaml
|
||||
└── namespace-C/
|
||||
├── application.yaml <- gia convertito a Fleet GitRepo
|
||||
└── manifests/
|
||||
└── deployment.yaml
|
||||
```
|
||||
|
||||
## Cosa applichi a mano con Fleet
|
||||
|
||||
- Applichi a mano i manifest Fleet di tipo GitRepo (uno per namespace o uno aggregato).
|
||||
- I file in clusters/idc/namespace-*/manifests vengono sincronizzati automaticamente da Fleet.
|
||||
- I file in bootstrap sono legacy Argo CD: con Fleet installato, non sono necessari.
|
||||
|
||||
## Bootstrap Fleet - passo per passo
|
||||
|
||||
### 1. Verifica Fleet
|
||||
|
||||
```bash
|
||||
kubectl -n cattle-fleet-system get pods
|
||||
kubectl get crd gitrepos.fleet.cattle.io
|
||||
```
|
||||
|
||||
### 2. Applica il GitRepo
|
||||
|
||||
Esempio con namespace-C:
|
||||
|
||||
```bash
|
||||
kubectl apply -f clusters/idc/namespace-C/application.yaml
|
||||
```
|
||||
|
||||
### 3. Verifica stato Fleet
|
||||
|
||||
```bash
|
||||
kubectl -n fleet-local get gitrepo
|
||||
kubectl -n cattle-fleet-system get bundles
|
||||
kubectl -n cattle-fleet-system get bundledeployments
|
||||
```
|
||||
|
||||
## Repo privato GitHub
|
||||
|
||||
Se il repo e privato, configura le credenziali per Fleet (Secret nel namespace Fleet usato, tipicamente fleet-local o fleet-default).
|
||||
|
||||
## Prima di usare questo repo
|
||||
|
||||
Sostituisci ovunque compare:
|
||||
- <tua-org> -> org/utente reale del tuo repo Git
|
||||
- i deployment di esempio -> i tuoi manifest reali
|
||||
|
||||
## Migrazione consigliata (A e B)
|
||||
|
||||
Attualmente solo namespace-C e gia in formato Fleet.
|
||||
Per allineare tutto:
|
||||
|
||||
1. Converti clusters/idc/namespace-A/application.yaml in GitRepo Fleet.
|
||||
2. Converti clusters/idc/namespace-B/application.yaml in GitRepo Fleet.
|
||||
3. Applica i due manifest e verifica bundle/bundledeployments.
|
||||
|
||||
## Estendere a un quarto namespace in futuro
|
||||
|
||||
1. Crea clusters/idc/namespace-D/manifests con i tuoi YAML.
|
||||
2. Crea clusters/idc/namespace-D/application.yaml in formato Fleet GitRepo.
|
||||
3. Applica il manifest e verifica la generazione dei bundle.
|
||||
Reference in New Issue
Block a user