Questa pagina è rivolta agli amministratori della piattaforma.
In questa pagina viene descritto come installare Anthos Config Management.
Anthos Config Management ti consente di applicare criteri e configurazione ai tuoi cluster Anthos in modo dichiarativo eseguendo automaticamente il deployment della tua nuova configurazione da un repository Git centrale. Per saperne di più, consulta la documentazione di Anthos Config Management.
Puoi installare Anthos Config Management utilizzando il Centro di gestione o utilizzando kubectl. Devi avere un repository Git prima di installare Anthos Config Management.
Installa dal Centro di gestione
Configura Anthos Config Management sul tuo cluster utente andando alla scheda Config Management e fai clic su Setup. quindi segui le istruzioni visualizzate nella pagina per completare la configurazione.
Puoi anche aggiornare o eseguire l'upgrade di un'installazione esistente di Anthos Config Management. Fai clic sul link nella colonna Versione per modificare la configurazione esistente.
Installa con kubectl
L'installazione di Anthos Config Management con kubectl
è un processo in due passaggi.
Innanzitutto, configura le chiavi SSH in modo che Config Sync possa eseguire l'autenticazione con il tuo repository Git. Quindi installi le risorse Anthos Config Management,
ConfigManagementFeatureSpec
e ConfigManagementBinding
, nel cluster.
Puoi anche utilizzare kubectl
per aggiornare o eseguire l'upgrade di un'installazione di Anthos Config Management esistente.
Configura chiavi SSH
Una coppia di chiavi SSH è composta da due file: una chiave pubblica e una chiave privata. In genere la chiave pubblica ha un'estensione .pub
.
Crea una coppia di chiavi SSH per consentire l'autenticazione di Config Sync nel tuo repository Git. Puoi utilizzare una coppia di chiavi singola per tutti i cluster o una coppia di chiavi per cluster, a seconda dei requisiti di sicurezza e conformità.
Il seguente comando crea una chiave RSA a 4096 bit. I valori più bassi non sono consigliati:
ssh-keygen -t rsa -b 4096 \ -C GIT_REPOSITORY_USERNAME \ -N '' \ -f /path/to/KEYPAIR_FILENAME
Sostituisci quanto segue:
GIT_REPOSITORY_USERNAME
: il nome utente che vuoi che Config Sync utilizzi per l'autenticazione nel repository./path/to/KEYPAIR_FILENAME
: un percorso per l'output della coppia di chiavi.
Configura il tuo repository in modo che riconosca la chiave pubblica appena creata. Consulta la documentazione del provider host Git.
Aggiungi la chiave privata a un nuovo oggetto segreto nel cluster utente:
kubectl create ns config-management-system --kubeconfig=USER_CLUSTER_KUBECONFIG && \ kubectl create secret generic git-creds --kubeconfig=USER_CLUSTER_KUBECONFIG \ --namespace=config-management-system \ --from-file=ssh=/path/to/KEYPAIR_PRIVATE_KEY_FILENAME
Sostituisci quanto segue:
USER_CLUSTER_KUBECONFIG
: il file di configurazione del cluster utente. Puoi richiederlo al Centro gestione./path/to/KEYPAIR_PRIVATE_KEY_FILENAME
: il nome della chiave privata (il file senza il suffisso.pub
).
Elimina la chiave privata dal disco locale o proteggila in altro modo.
Configura ConfigManagementFeatureSpec
e ConfigManagementBinding
A questo punto, crea una risorsa ConfigManagementFeatureSpec
nel tuo cluster:
kubectl apply -f CONFIG_MANAGEMENT_YAML --kubeconfig=ADMIN_OIDC_KUBECONFIG
Sostituisci quanto segue:
- ADMIN_OIDC_KUBECONFIG: credenziali OIDC per il cluster di amministrazione. Per le istruzioni, consulta Accedi con OIDC al server API Kubernetes del cluster di amministrazione .
- CONFIG_MANAGEMENT_YAML: il percorso del file di configurazione per la
risorsa
ConfigManagementFeatureSpec
. Fai riferimento all'esempio seguente:
apiVersion: managementcenter.anthos.cloud.google.com/v1
kind: ConfigManagementFeatureSpec
metadata:
name: config-management-spec-sample
namespace: anthos-management-center
spec:
version: "1.11.1"
git:
syncRepo: "git@GIT_HOST_ADDRESS:REPO_NAME.git"
policyDir: "."
secretType: "ssh"
syncBranch: "master"
syncRev: "HEAD"
syncWait: 15
policyController:
enabled: true
---
apiVersion: managementcenter.anthos.cloud.google.com/v1
kind: ConfigManagementBinding
metadata:
name: config-management-binding-sample
namespace: anthos-management-center
spec:
configs:
- configRef:
name: config-management-spec-sample
namespace: anthos-management-center
placement:
clusterIDs:
- "CLUSTER-NAME"
Sostituisci quanto segue:
GIT_HOST_ADDRESS
: l'indirizzo host del repository Git.REPO_NAME
: il nome del repository Git.CLUSTER-NAME
: il nome del cluster.
Aggiorna ed esegui l'upgrade
Puoi aggiornare o eseguire l'upgrade di Anthos Config Management modificando
l'elemento ConfigManagementFeatureSpec
corrispondente.
Ad esempio, per abilitare la funzionalità
repository non strutturato, aggiorna il ConfigManagementFeatureSpec
:
apiVersion: managementcenter.anthos.cloud.google.com/v1
kind: ConfigManagementFeatureSpec
metadata:
name: config-management-spec-sample
namespace: anthos-management-center
spec:
version: "1.11.1"
sourceFormat: "unstructured"
git:
syncRepo: "git@<YOUR_GIT_HOST_ADDRESS>:<YOUR_UNSTRUCTURED_REPO>.git"
policyDir: "."
secretType: "ssh"
syncBranch: "master"
syncRev: "HEAD"
syncWait: 15
policyController:
enabled: true
Visualizza lo stato di Anthos Config Management
Puoi visualizzare lo stato di Anthos Config Management inviando una query alla risorsa ConfigManagementBinding
.
kubectl get ConfigManagementBinding -o \
jsonpath="{range .items[*].status.bindingItemStatuses[*]}{'\n'}{['clusterID', 'configRef', 'conditions']}" \
--namespace=anthos-management-center \
--kubeconfig=ADMIN_OIDC_KUBECONFIG \
| grep CLUSTER-NAME
Sostituisci quanto segue:
ADMIN_OIDC_KUBECONFIG
: credenziali OIDC per il cluster di amministrazione. Per le istruzioni, consulta Accedi con OIDC al server API Kubernetes del cluster di amministrazione .CLUSTER-NAME
: il nome del cluster.
Ecco un output di esempio con Anthos Config Management in stato di integrità:
target-user-cluster-1 {"name":"new-spec-f75y8","namespace":"anthos-management-center"} [{"lastTransitionTime":"2021-05-27T18:06:27Z","message":"","observedGeneration":1,"reason":"Healthy","status":"True","type":"Ready"}]
Passaggi successivi
- Scopri di più su Anthos Config Management.