riferimento asmcli
Panoramica
asmcli
è uno strumento fornito da Google che puoi utilizzare per installare
eseguire l'upgrade di Cloud Service Mesh. Se lo consenti, asmcli
configurerà
progetto e cluster nel modo seguente:
- Concederti le autorizzazioni IAM (Identity and Access Management) necessarie per i tuoi progetto Google Cloud.
- Abilita le API di Google richieste nel tuo progetto Google Cloud.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Creare un account di servizio che consenta ai componenti del piano dati di eseguire il piano dati, come proxy sidecar, puoi accedere in modo sicuro ai dati e alle risorse del progetto.
- Registra il cluster al parco risorse, se non è già registrato.
Includi il flag --enable_all
quando esegui asmcli
per consentire la configurazione
del progetto e del cluster. Per ulteriori informazioni sulle opzioni e sui flag relativi a asmcli
,
consulta il riferimento asmcli
.
Successivamente, asmcli
configura i file YAML con le informazioni sul tuo progetto e sul cluster.
Questi file di configurazione sono necessari per installare Cloud Service Mesh
dal piano di controllo.
Se non hai mai utilizzato Cloud Service Mesh e Istio, passa direttamente al Piattaforme supportate. La prossima sezione intende per facilitare l'upgrade dell'attuale Cloud Service Mesh a 1.21.
Transizione a asmcli
in corso...
asmcli
prende il posto di istioctl install
e install_asm
. Sebbene
puoi continuare a utilizzare gli strumenti legacy in Cloud Service Mesh 1.11, ritireremo
e non saranno più supportati in Cloud Service Mesh 1.12 e versioni successive.
Aggiorna gli script e gli strumenti per utilizzare asmcli
.
Tutti i cluster devono essere registrati in un flotta. Consulta Requisiti del parco risorse per maggiori dettagli.
Transizione da install_asm
in corso...
Se conosci install_asm
, asmcli
è simile ma con
alcune differenze significative:
Utilizzi
asmcli install
per le nuove installazioni e gli upgrade. Non esiste un Opzione--mode
come coninstall_asm
. Quando eseguiasmcli install
, controlla se esiste già un piano di controllo sul cluster. Se non esiste una dal piano di controllo,asmcli
installa Cloud Service Mesh. Se il cluster ha un piano di controllo esistente (un piano di controllo Cloud Service Mesh o un piano di controllo Istio):Se l'etichetta di revisione sull'attuale non corrisponde all'etichetta di revisione del nuovo piano di controllo,
asmcli
esegue una upgrade canary.Se le etichette di revisione del piano di controllo sono identiche,
asmcli
esegue una upgrade in loco.
La maggior parte delle
asmcli
opzioni e flag si comportano allo stesso modo come quelli diinstall_asm
.
Transizione da istioctl install
in corso...
Se conosci istioctl install
, se di solito superi un
IstioOperator
tramite l'argomento della riga di comando -f
per configurare
dal piano di controllo, puoi passare il file a asmcli
utilizzando --custom_overlay
. Nella documentazione di Cloud Service Mesh, utilizziamo questi file come
file di overlay.
Piattaforme supportate
Installazioni Cloud Service Mesh nell'elenco delle
È possibile configurare le piattaforme supportate
o se è stato eseguito l'upgrade da asmcli
.
Tuttavia, non tutte le funzionalità sono disponibili sulle piattaforme al di fuori di Google Cloud. Per maggiori dettagli, vedi Funzionalità supportate dal piano di controllo in-cluster.
Riferimento asmcli
Questa sezione descrive gli argomenti disponibili per asmcli
.
Opzioni
Identifica il cluster Per identificare il cluster, hai a disposizione le seguenti opzioni:
Solo GKE
-p|--project_id CLUSTER_PROJECT_ID
- L'ID del progetto in cui è stato creato il cluster.
-n|--cluster_name CLUSTER_NAME
- Il nome del cluster.
-l|--cluster_location CLUSTER_LOCATION
- La zona (per i cluster a zona singola) o la regione (per i cluster a livello di regione cluster) in cui è stato creato il cluster.
Tutte le piattaforme
--kubeconfig KUBECONFIG_FILE
Il percorso completo del file kubeconfig. Ambiente
la variabile $PWD
non funziona qui.
--ctx|--context KUBE_CONTEXT
Il kubeconfig context da utilizzare. Se non specificato,
asmcli
utilizza il contesto predefinito.
-c|--ca {mesh_ca|gcp_cas|citadel}
L'autorità di certificazione (CA) da utilizzare per la gestione TLS reciproci. Specifica
mesh_ca
per utilizzare l'autorità di certificazione Cloud Service Mesh (autorità di certificazione Cloud Service Mesh),gcp_cas
per utilizzare Certificate Authority Service oppurecitadel
per utilizzare la CA Istio. Managed Cloud Service Mesh non supporta Istio Canada. Per ulteriori informazioni, vedi quanto segue:--channel CLOUD_SERVICE_MESH_CHANNEL
Utilizza
--channel
con una specifica Canale di rilascio di Cloud Service Mesh per eseguire il provisioning della revisione del piano di controllo associata a quel canale di rilascio. Ad esempio,--channel rapid
,--channel regular
e--channel stable
. Questo flag è obbligatorio durante la configurazione di alcune funzionalità di Cloud Service Mesh su GKE Autopilot.
L'opzione --channel
non è più supportata per Managed Cloud Service Mesh come
menzionate nelle note di rilascio di CSM.
Il canale di rilascio viene determinato in base al canale di rilascio del cluster GKE.
Per ulteriori informazioni, consulta Canali di rilascio di Managed Cloud Service Mesh.
--co|--custom_overlay OVERLAY_FILE
- Utilizza
--custom_overly
con il nome di un file YAML (chiamato file overlay) contenente la risorsa personalizzataIstioOperator
da configurare per il piano di controllo nel cluster. Puoi specificare un file di overlay su attivare una funzionalità che non è abilitato per impostazione predefinita. Managed Cloud Service Mesh non supporta APIIstioOperator
, quindi non puoi usare--custom_overlay
per configurare completamente gestito di Google Cloud.asmcli
deve essere in grado di individuare il file dell'overlay, deve trovarsi nella stessa directory diasmcli
oppure puoi specificare un relativo. Per aggiungere più file, specifica--co|--custom_overlay
e il nome del file, ad esempio:--co overlay_file1.yaml --co overlay_file2.yaml --co overlay_file3.yaml
--hub-registration-extra-flags HUB_REGISTRATION_EXTRA_FLAGS
- Se utilizzi cluster Amazon EKS collegati, usa
--hub-registration-extra-flags
per registrare il cluster nel parco risorse, se non è già registrato. -k|--key_file FILE_PATH
- Il file della chiave per un account di servizio. Ometti questa opzione se non utilizzi un account di servizio.
--network_id NETWORK_ID
- Utilizza
--network_id
per impostare l'etichettatopology.istio.io/network
applicata allaistio-system
. Per GKE, il valore predefinito di--network_id
di rete per il cluster. Per gli altri ambienti, verrà utilizzatodefault
. -o|--option OVERLAY_FILE
Il nome del file di overlay (senza l'estensione
.yaml
) cheasmcli
scarica da repositoryanthos-service-mesh
per abilitare funzionalità facoltativa. È necessaria una connessione a internet per poter usare--option
. La Le opzioni--option
e--custom_overlay
sono simili, ma presentano leggermente un comportamento diverso:Usa
--custom_overlay
quando devi modificare le impostazioni nell'overlay .Utilizza
--option
per attivare una funzionalità che non richiede modifiche alla un file di overlay, ad esempio configurare i criteri di controllo per i servizi.
Per aggiungere più file, specifica
-o|--option
e i nome file, ad esempio:-o option_file1 -o option_file2 -o option_file3
-D|--output_dir DIR_PATH
Se non specificato,
asmcli
crea una directory temporanea in cui scarica i file e le configurazioni necessari per installare Cloud Service Mesh. Specifica il flag--output-dir
per specificare un percorso relativo di una directory da utilizzare . Al termine, la directory specificata contiene iasm
e nelle sottodirectoryistio-1.21.4-asm.5
. La directoryasm
contiene la configurazione dell'installazione. La La directoryistio-1.21.4-asm.5
contiene i contenuti estratti di contenenteistioctl
, esempi e manifest. Se specificare--output-dir
e la directory contiene già file,asmcli
utilizza questi file anziché scaricarli di nuovo.--platform PLATFORM {gcp|multicloud}
La piattaforma o il provider del cluster Kubernetes. Il valore predefinito è
gcp
(per i cluster GKE). Per tutti gli altri piattaforme utilizzate,multicloud
.-r|--revision_name REVISION NAME
Un'etichetta di revisione è una coppia chiave-valore che è impostata sul piano di controllo. La chiave dell'etichetta di revisione è sempre
istio.io/rev
. Di Per impostazione predefinita,asmcli
imposta il valore dell'etichetta di revisione in base al Versione di Cloud Service Mesh, ad esempio:asm-1214-5
. Includi questo se vuoi eseguire l'override del valore predefinito e specificarne uno personalizzato. La L'argomentoREVISION NAME
deve essere un Etichetta DNS-1035. Ciò significa che il nome deve:- Deve contenere al massimo 63 caratteri
- contenere solo caratteri alfanumerici minuscoli o "-"
- iniziano con un carattere alfabetico
- terminare con un carattere alfanumerico
L'espressione regolare utilizzata per la convalida è: '[a-z]([-a-z0-9]*[a-z0-9])?'
-s|--service_account ACCOUNT
- Il nome di un account di servizio utilizzato per installare Cloud Service Mesh. In caso contrario
specificato, l'account utente attivo nell'attuale configurazione di
gcloud
è in uso. Se devi modificare l'account utente attivo, esegui gcloud auth login.
Opzioni per il certificato personalizzato CA Istio
Se hai specificato --ca citadel
e utilizzi una CA personalizzata, includi il parametro
le seguenti opzioni:
--ca_cert FILE_PATH
: il certificato intermedio--ca_key FILE_PATH
: la chiave per il certificato intermedio--root_cert FILE_PATH
: il certificato radice--cert_chain FILE_PATH
: la catena di certificati
Per ulteriori informazioni, vedi Collegamento dei certificati CA esistenti.
Flag di abilitazione
I flag che iniziano con --enable
consentono a asmcli
di attivare la richiesta Google
API
autorizzazioni IAM (Identity and Access Management) richieste,
e aggiornare il cluster. Se preferisci,
aggiornare progetto e cluster autonomamente
prima di eseguire asmcli
. Tutti i flag di abilitazione non sono compatibili con
asmcli validate
. Se specifichi un flag di abilitazione quando esegui
asmcli validate
, il comando termina con un errore.
-e|--enable_all
- Consenti a
asmcli
di eseguire tutte le singole azioni di attivazione descritte qui sotto. --enable_cluster_roles
- Consenti a
asmcli
di tentare di associare l'utente o il servizio Google Cloud che esegueasmcli
cluster-admin
nel tuo cluster.asmcli
determina l'account utente dalgcloud config get core/account
. Se eseguiasmcli
in locale con un account utente, assicurati che che chiamigcloud auth login
prima di eseguireasmcli
. Per cambiare l'account utente, eseguigcloud config set core/account GCP_EMAIL_ADDRESS
dove GCP_EMAIL_ADDRESS è l'account che utilizzi per accedere a Google Cloud. --enable_cluster_labels
- Consenti l'impostazione obbligatoria di
asmcli
etichette del cluster. --enable_gcp_components
Consenti a
asmcli
di abilitare le seguenti opzioni gestite da Google Cloud e componenti di sicurezza:Identità carico di lavoro che consente alle applicazioni GKE di accedere in sicurezza a Google Cloud i servizi di machine learning.
--enable_gcp_apis
Consenti a
asmcli
di attivare tutte API di Google richieste.--enable_gcp_iam_roles
Consenti a
asmcli
di impostare il campo obbligatorio Autorizzazioni IAM.--enable_meshconfig_init
Consenti allo script di inizializzare l'endpoint meshconfig per tuo conto. Implicito di
--enable_gcp_components
e--managed
.--enable_namespace_creation
Consenti a
asmcli
di creare lo spazio dei nomi principaleistio-system
.--enable_registration
Consenti a
asmcli
di registrare il cluster nel progetto a cui appartiene il cluster in. Se non includi questo flag, segui la procedura descritta in Registrazione di un cluster per registrare manualmente il cluster. Tieni presente che, a differenza degli altri flag di abilitazione,--enable_registration
è incluso in--enable_all
solo se specifichi un'opzione (ad esempio--option hub-meshca
) che richiede la registrazione del cluster. In caso contrario, dovrai specificare questo flag separatamente.
Altri flag
--dry_run
- Stampa i comandi, ma non eseguirli.
--fleet_id
- Registra un cluster in un parco risorse utilizzando l'ID progetto host del parco risorse. Questo flag è
per i cluster non Google Cloud. Se non viene specificato
Google Cloud, utilizza per impostazione predefinita l'ID progetto del cluster. Puoi
eseguire
asmcli install
insieme a--fleet_id
prima dell'installazione oppure come parte dell'installazione superando i--enable-registration
e--fleet-id
e i flag facoltativi. Una volta configurata, questa impostazione non può essere modificata. --managed
- Esegui il provisioning di un piano di controllo gestito remoto invece di installarne uno nel cluster.
--offline
- Esegui un'installazione offline utilizzando il pacchetto prescaricato nella directory di output. Se la directory è non specificato o non contiene i file richiesti, lo script verrà chiuso con errori.
--only_enable
- Esegui i passaggi specificati per configurare l'utente/cluster attuale, ma non installare qualsiasi cosa.
--only_validate
- Esegui la convalida, ma non aggiornare il progetto o il cluster e non installare
Cloud Service Mesh. Questo flag non è compatibile con
flag di abilitazione.
asmcli
termina con un errore se specifichi--only_validate
con un flag di abilitazione. --print_config
- Invece di installare Cloud Service Mesh, stampa tutti i file YAML compilati
come output standard (stdout). Tutti gli altri output vengono scritti come errori standard
(stderr), anche se normalmente passasse a stdout.
asmcli
ignora tutti le convalide e la configurazione quando specifichi questo flag. --disable_canonical_service
- Per impostazione predefinita,
asmcli
esegue il deployment Controller del servizio canonico nel cluster. Se non vuoi cheasmcli
esegua il deployment del controller, specificare--disable_canonical_service
. Per ulteriori informazioni, consulta Attivazione e disattivazione del controller del servizio canonico. -h|--help
- Mostra un messaggio della guida che descrive le opzioni, i flag e l'uscita.
--use_managed_cni
- Utilizzare la CNI gestita. Se questo flag è
non superato,
asmcli
applicherà i manifest CNI statici. --use_vpcsc
- Se la tua organizzazione applica le norme
Controlli di servizio VPC per il progetto, devi
configurare Cloud Service Mesh gestito con il flag
--use_vpcsc
. In caso contrario, l'installazione non supererà i controlli di sicurezza. -v|--verbose
- Man mano che
asmcli
viene eseguito, stampa il comando che eseguirà successivamente. Con--verbose
,asmcli
stampa il comando anche dopo l'esecuzione. --version
- Stampa la versione di
asmcli
ed esci. Se non hai l'impostazione più recente version, puoi eseguire scarica la versione più recente diasmcli_1.21
.