Questa pagina spiega come configurare Config Sync utilizzando i comandi kubectl
dopo che hai
ha installato Config Sync utilizzando la console Google Cloud o Google Cloud CLI.
Sebbene sia possibile apportare molte modifiche alla configurazione utilizzando la console o l'interfaccia a riga di comando,
devi usare i comandi kubectl
per
sostituire alcune impostazioni predefinite di Config Sync per controllare il certificato SSL
verifica e di utilizzare un'autorità di certificazione.
Creare e modificare il file di configurazione RootSync
Per configurare Config Sync utilizzando i comandi kubectl
, devi modificare un
oggetto RootSync mediante la creazione
un file YAML.
Quando installi Config Sync utilizzando la console Google Cloud oppure
Google Cloud CLI, Config Sync crea automaticamente un oggetto RootSync denominato
root-sync
. Questo oggetto contiene le informazioni di configurazione più recenti per
Config Sync. Ogni volta che apporti una modifica nella console Google Cloud
Google Cloud CLI, root-sync
è aggiornato.
Scopri di più sui campi che puoi modificare utilizzando kubectl
Puoi apportare modifiche avanzate a root-sync
utilizzando i comandi kubectl
per
campi non supportati nella console Google Cloud o in Google Cloud CLI. Se vuoi
crea e aggiorna gli oggetti RootSync o RepoSync direttamente utilizzando kubectl
vedi i comandi
Campi RootSync e RepoSync.
Prima di apportare modifiche al file YAML che crei nel seguente , familiarizza con la seguente tabella. In questa tabella sono elencate le campi che puoi modificare e aggiungere. Se modifichi i campi non elencati in questa tabella, Config Sync ripristina automaticamente le modifiche ai valori impostati configurato l'ultima volta Config Sync nella console Google Cloud o in Google Cloud CLI.
Chiave | Descrizione |
---|---|
spec.git.noSSLVerify |
noSSLVerify specifica se attivare o disattivare il certificato SSL
verifica. Valore predefinito: false .Se noSSLVerify è impostato su true , indica a Git di saltare il certificato SSL
verifica. |
spec.git.caCertSecretRef.name |
Il nome del secret contenente l'autorità di certificazione (CA) certificato. Se questo campo viene fornito, il server Git deve utilizzare un'istanza emesso da questa CA. Il certificato CA deve essere archiviato nella Secret in una chiave denominata "cert". |
spec.override.resources |
L'elenco delle richieste di risorse del container e degli override dei limiti. Facoltativo. Ogni elemento dell'elenco contiene tre campi:
Quando non viene fornito un valore di override per una richiesta o un limite della risorsa, viene utilizzato il valore di risorsa predefinito per la richiesta o il limite. |
spec.override.gitSyncDepth |
gitSyncDepth consente di eseguire l'override del numero di commit Git da recuperare.Non deve essere inferiore a 0. Config Sync esegue un clone completo se il campo è impostato su 0 e un clone superficiale se questo campo è maggiore di 0. Se questo campo non viene fornito, Config Sync lo configura automaticamente. |
spec.override.statusMode |
statusMode consente di abilitare o disabilitare l'acquisizione della risorsa
livello di accesso.Il valore predefinito è enabled .Per disabilitare l'acquisizione dello stato a livello di risorsa, imposta questo campo su disabled .
|
spec.override.reconcileTimeout |
reconcileTimeout ti consente di ignorare la soglia per quanto tempo
di attendere le risorse in un
applica gruppo
conciliare prima di rinunciare. Tutte le risorse di un commit possono trovarsi
applicare più gruppi in base
dipendenze.Il timeout predefinito è 5m .Utilizza la stringa per specificare questo valore del campo, ad esempio 30s ,
5m .
|
spec.override.enableShellInRendering |
enableShellInRendering consente di specificare se attivare o disattivare
l'accesso alla shell nel processo di rendering. Le basi remote Kustomize richiedono
e l'accesso alla shell. L'impostazione di questo campo su true consente l'accesso alla shell
nel processo di rendering e supporta il pull delle basi remote dai
repository.Il valore predefinito è false . |
Crea il file
Per creare e modificare un file di configurazione per root-sync
, completa la
seguenti passaggi:
Per assicurarti di recuperare le informazioni di configurazione per cluster corretto, configura l'accesso
kubectl
da riga di comando:gcloud container clusters get-credentials CLUSTER_NAME \ --zone ZONE \ --project PROJECT_ID
Sostituisci quanto segue:
CLUSTER_NAME
: il nome del cluster con la configurazione di Config Sync che vuoi modificareZONE
: la zona in cui hai creato il clusterPROJECT_ID
: il tuo ID progetto
Copia le informazioni di configurazione dall'oggetto RootSync che Config Sync creato in un file YAML:
kubectl get rootsync root-sync -n config-management-system -o yaml > FILE_NAME.yaml
Sostituisci
FILE_NAME
con un nome per la tua configurazione .Apri il file YAML che hai creato e crea la configurazione richiesta modifiche. Ad esempio, per eseguire l'override del limite di memoria di
git-sync
del container, aggiungi i seguenti campi in grassetto:apiVersion: v1 items: - apiVersion: configsync.gke.io/v1beta1 kind: RootSync metadata: annotations: configmanagement.gke.io/managed-by-hub: "true" configmanagement.gke.io/update-time: "1644945169" creationTimestamp: "2022-02-15T17:12:52Z" generation: 1 name: root-sync namespace: config-management-system resourceVersion: "211980457" uid: aa30a94b-2825-4590-ad30-5af848403502 spec: git: auth: none branch: main dir: /quickstart/config-sync period: 15s repo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples revision: HEAD secretRef: {} override: resources: - containerName: "git-sync" memoryLimit: "400Mi" sourceFormat: unstructured # Remainder of RootSync omitted
Applica le modifiche al file YAML:
kubectl apply -f FILE_NAME.yaml
Per verificare che Config Sync abbia applicato le modifiche, visualizza RootSync :
kubectl describe rootsync root-sync -n config-management-system
Per verificare che le modifiche non abbiano introdotto errori, utilizza Comando
nomos status
:nomos status
Rimuovi l'oggetto RootSync
Per eliminare root-sync
, esegui questo comando:
kubectl delete -f FILE_NAME
Sostituisci FILE_NAME
con il nome del tuo sistema RootSync
di configurazione del deployment. Ad esempio, root-sync.yaml
.
L'eliminazione di un oggetto RootSync o RepoSync non elimina Config Sync annotazioni ed etichette. Per pulire le risorse gestite, esegui la sincronizzazione da un o la directory Git.
Passaggi successivi
- Scopri di più sulle Campi RootSync e RepoSync.
- Scopri come Monitorare gli oggetti RootSync e RepoSync.