Installazione di Anthos Service Mesh
Questa pagina spiega come installare Anthos Service Mesh su GKE e piattaforme on-premise:
- Esegui
asmcli
per eseguire una nuova installazione di Anthos Service Mesh 1.23.3-asm.2. - Facoltativamente, esegui il deployment di un gateway in entrata.
- Esegui il deployment o riesegui il deployment dei carichi di lavoro per inserire proxy sidecar.
Limitazioni
Nota. Vi sono delle limitazioni:
Per poter utilizzare Anthos Service Mesh, tutti i cluster Anthos Service Mesh per un mesh devono essere sempre registrati nello stesso parco risorse. Gli altri cluster nel progetto di un cluster Anthos Service Mesh non devono essere registrati in un parco risorse diverso.
Lo strumento
asmcli
deve avere accesso all'endpoint di Google Kubernetes Engine (GKE). Puoi configurare l'accesso tramite un server "jump", ad esempio una VM Compute Engine all'interno del Virtual Private Cloud (VPC) che concede l'accesso specifico.
Prima di iniziare
Prima di iniziare, assicurati di:
- Esamina i prerequisiti.
- Consulta le informazioni riportate in Pianificare l'installazione.
- Installa gli strumenti necessari.
- Scarica
asmcli
. - Concedi le autorizzazioni di amministratore del cluster.
- Convalida progetto e cluster.
Installazione di Anthos Service Mesh
Di seguito viene descritto come installare Anthos Service Mesh:
Esegui
asmcli install
per installare il piano di controllo nel cluster su un cluster singolo. Consulta le sezioni seguenti per alcuni esempi di riga di comando. Gli esempi contengono sia argomenti obbligatori sia argomenti facoltativi che potresti trovare utili. Ti consigliamo di specificare sempre l'argomentooutput_dir
in modo da poter individuare facilmente gateway e strumenti di esempio comeistioctl
. Consulta la barra di navigazione a destra per un elenco di esempi.I cluster GKE privati richiedono un passaggio di configurazione del firewall aggiuntivo per consentire il traffico verso
istiod
.Facoltativamente, installa un gateway in entrata. Per impostazione predefinita,
asmcli
non installaistio-ingressgateway
. Ti consigliamo di eseguire il deployment del piano di controllo e dei gateway e di gestirlo separatamente. Se devi installareistio-ingressgateway
predefinito con il piano di controllo nel cluster, includi l'argomento--option legacy-default-ingressgateway
.Per completare la configurazione di Anthos Service Mesh, devi abilitare l'iniezione automatica dei file collaterali e il deployment o rideployment dei carichi di lavoro.
Se stai installando Anthos Service Mesh su più di un cluster, esegui
asmcli install
su ciascun cluster. Quando eseguiasmcli install
, assicurati di utilizzare lo stessoFLEET_PROJECT_ID
per ogni cluster. Dopo aver installato Anthos Service Mesh, consulta le istruzioni per configurare un mesh multi-cluster su GKE o da Google Cloud.Se i cluster si trovano su reti diverse (perché sono in modalità isola), devi passare un nome di rete univoco a
asmcli
utilizzando il flag--network_id
.
Installa le funzionalità predefinite e Mesh CA
Questa sezione mostra come eseguire asmcli
per installare Anthos Service Mesh con le funzionalità supportate predefinite per la tua piattaforma e come abilitare l'autorità di certificazione Anthos Service Mesh (Mesh CA) come autorità di certificazione.
GKE
Esegui questo comando per installare il piano di controllo con funzionalità predefinite e Mesh CA. Inserisci i valori nei segnaposto forniti.
./asmcli install \
--project_id PROJECT_ID \
--cluster_name CLUSTER_NAME \
--cluster_location CLUSTER_LOCATION \
--fleet_id FLEET_PROJECT_ID \
--output_dir DIR_PATH \
--enable_all \
--ca mesh_ca
--project_id
,--cluster_name
e--cluster_location
Specifica l'ID progetto in cui si trova il cluster, il nome del cluster e la zona o la regione del cluster.--fleet_id
L'ID del progetto host del parco risorse. Se non includi questa opzione,asmcli
utilizza il progetto in cui è stato creato il cluster durante la registrazione del cluster.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--ca mesh_ca
Utilizza Mesh CA come autorità di certificazione.asmcli
configura la rete mesh per utilizzare l'identità del carico di lavoro del parco risorse
On-premise
Esegui i comandi seguenti su GKE on VMware o su Google Distributed Cloud Virtual for Bare Metal per installare il piano di controllo con funzionalità predefinite e Mesh CA. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca mesh_ca
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--ca mesh_ca
Utilizza Mesh CA come autorità di certificazione.asmcli
configura la rete mesh per utilizzare l'identità del carico di lavoro del parco risorse
Per visualizzare gli SLO e le metriche dell'infrastruttura nella UI di Anthos Service Mesh, devi anche eseguire i primi tre passaggi in Abilitare il logging e il monitoraggio delle applicazioni. Se il logging e il monitoraggio non sono abilitati e non ricevi log e metriche personalizzati, la dashboard di Anthos Service Mesh non mostrerà gli SLO, i log degli errori o le metriche di CPU e memoria.
AWS
Esegui i comandi seguenti su GKE su AWS per installare il piano di controllo con funzionalità predefinite e Mesh CA. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca mesh_ca
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--ca mesh_ca
Utilizza Mesh CA come autorità di certificazione.asmcli
configura la rete mesh per utilizzare l'identità del carico di lavoro del parco risorse.
Per visualizzare gli SLO e le metriche dell'infrastruttura nella UI di Anthos Service Mesh, devi anche eseguire i primi tre passaggi in Abilitare il logging e il monitoraggio delle applicazioni. Se il logging e il monitoraggio non sono abilitati e non ricevi log e metriche personalizzati, la dashboard di Anthos Service Mesh non mostrerà gli SLO, i log degli errori o le metriche di CPU e memoria.
Azure
Esegui i comandi seguenti su GKE su Azure (anteprima) per installare il piano di controllo con funzionalità predefinite e Mesh CA. Inserisci i valori negli appositi segnaposto.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca mesh_ca
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--ca mesh_ca
Utilizza Mesh CA come autorità di certificazione.asmcli
configura la rete mesh per utilizzare l'identità del carico di lavoro del parco risorse.
Per visualizzare gli SLO e le metriche dell'infrastruttura nella UI di Anthos Service Mesh, devi anche eseguire i primi tre passaggi in Abilitare il logging e il monitoraggio delle applicazioni. Se il logging e il monitoraggio non sono abilitati e non ricevi log e metriche personalizzati, la dashboard di Anthos Service Mesh non mostrerà gli SLO, i log degli errori o le metriche di CPU e memoria.
Amazon EKS
Esegui i seguenti comandi su Amazon EKS per installare il piano di controllo con funzionalità predefinite e Mesh CA. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --option attached-cluster \ --network_id default \ --ca mesh_ca
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--option attached-cluster
Modifica l'utilità di firma predefinita in istiod.--network_id
Se stai configurando un mesh di più reti, imposta il--network_id
su un valore univoco per ogni cluster nel mesh.--ca mesh_ca
Utilizza Mesh CA come autorità di certificazione.asmcli
configura la rete mesh per utilizzare l'identità del carico di lavoro del parco risorse.
Per visualizzare gli SLO e le metriche dell'infrastruttura nella UI di Anthos Service Mesh, devi anche eseguire i primi tre passaggi in Abilitare il logging e il monitoraggio delle applicazioni. Se il logging e il monitoraggio non sono abilitati e non ricevi log e metriche personalizzati, la dashboard di Anthos Service Mesh non mostrerà gli SLO, i log degli errori o le metriche di CPU e memoria.
Microsoft AKS
Esegui i comandi seguenti su Microsoft AKS per installare il piano di controllo con funzionalità predefinite e Mesh CA. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer ./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --option attached-cluster \ --network_id default \ --ca mesh_ca
HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer
Consente la registrazione con GKE Hub.--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--option attached-cluster
Modifica l'utilità di firma predefinita in istiod.--network_id
Se stai configurando un mesh di più reti, imposta il--network_id
su un valore univoco per ogni cluster nel mesh.--ca mesh_ca
Utilizza Mesh CA come autorità di certificazione.asmcli
configura la rete mesh per utilizzare l'identità del carico di lavoro del parco risorse.
Per visualizzare gli SLO e le metriche dell'infrastruttura nella UI di Anthos Service Mesh, devi anche eseguire i primi tre passaggi in Abilitare il logging e il monitoraggio delle applicazioni. Se il logging e il monitoraggio non sono abilitati e non ricevi log e metriche personalizzati, la dashboard di Anthos Service Mesh non mostrerà gli SLO, i log degli errori o le metriche di CPU e memoria.
Installa le funzionalità predefinite e il servizio dell'autorità di certificazione (CA)
Questa sezione mostra come eseguire asmcli
per installare Anthos Service Mesh con le funzionalità supportate predefinite per la tua piattaforma e abilitare il servizio CA come autorità di certificazione.
Oltre a Mesh CA, puoi configurare Anthos Service Mesh per l'utilizzo di Certificate Authority Service. Questa guida offre l'opportunità di eseguire l'integrazione con CA Service, consigliata per i seguenti casi d'uso:
- Se sono necessarie autorità di certificazione diverse per firmare certificati dei carichi di lavoro su cluster diversi.
- Se vuoi utilizzare
istiod
certificati plug-in CA personalizzati. - Se devi eseguire il backup delle chiavi di firma in un HSM gestito.
- Se operi in un settore altamente regolamentato e sei soggetto a conformità.
- Se vuoi collegare la tua CA di Anthos Service Mesh a un certificato radice aziendale personalizzato per firmare i certificati dei carichi di lavoro.
Il costo di Mesh CA è incluso nei prezzi di Anthos Service Mesh. Il servizio CA non è incluso nel prezzo base di Anthos Service Mesh e viene addebitato separatamente. Inoltre, il servizio CA è dotato di uno SLA esplicito, al contrario della CA Mesh.
Per questa integrazione, a tutti i carichi di lavoro in Anthos Service Mesh vengono concessi i ruoli IAM:
privateca.workloadCertificateRequester
privateca.auditor
privateca.template
(obbligatorio se utilizzi un modello di certificato)
Configura CA Service
- Crea il pool di CA nel livello
DevOps
e nella stessa regione del cluster che gestisce per evitare problemi di latenza eccessivi o potenziali interruzioni tra regioni. Per ulteriori informazioni, vedi Livelli ottimizzati per il carico di lavoro. - Crea la CA per avere almeno un'autorità di certificazione attiva nel pool di CA nello stesso progetto del cluster GKE. Usa CA subordinate per firmare i certificati dei carichi di lavoro Anthos Service Mesh. Prendi nota del pool di CA corrispondente alla CA subordinata.
Se vuoi utilizzare solo certificati di servizio per i carichi di lavoro Anthos Service Mesh, configura il seguente criterio di emissione per il pool di CA:
policy.yaml
baselineValues: keyUsage: baseKeyUsage: digitalSignature: true keyEncipherment: true extendedKeyUsage: serverAuth: true clientAuth: true caOptions: isCa: false identityConstraints: allowSubjectPassthrough: false allowSubjectAltNamesPassthrough: true celExpression: expression: subject_alt_names.all(san, san.type == URI && san.value.startsWith("spiffe://PROJECT_ID.svc.id.goog/ns/") )
Per aggiornare il criterio di emissione del pool di CA, utilizza il seguente comando:
gcloud privateca pools update CA_POOL --location ca_region --issuance-policy policy.yaml
Per informazioni sull'impostazione di un criterio su un pool, consulta Utilizzo di un criterio di emissione dei certificati.
Se utilizzi un modello di certificato, configuralo ora. Per ulteriori informazioni, segui la guida di CA Service per i certificati di Workload Identity. Assicurati che il modello di certificato sia creato nella stessa regione del pool di CA. Se sono presenti più regioni per i pool di CA, crea un modello di certificato per ogni regione.
Configura Anthos Service Mesh per utilizzare CA Service
GKE
Installa il piano di controllo Anthos Service Mesh che utilizza Certificate Authority Service come CA:
./asmcli install \ --project_id PROJECT_ID \ --cluster_name CLUSTER_NAME \ --cluster_location CLUSTER_LOCATION \ --enable_all \ --ca gcp_cas \ --ca_pool projects/CA_POOL_PROJECT_ID/locations/ca_region/caPools/CA_POOL
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--ca gcp_cas
Utilizza Certificate Authority Service come autorità di certificazione. La modifica delle autorità di certificazione durante un upgrade causa tempi di inattività.asmcli
configura Certificate Authority Service per utilizzare l'identità del carico di lavoro del parco risorse--ca_pool
L'identificatore completo per il pool di CA di Certificate Authority Service. Se viene utilizzato il modello di certificato, aggiungi l'ID del modello separato da:
.--ca_pool projects/CA_POOL_PROJECT_ID/locations/ca_region/caPools/CA_POOL:projects/CA_POOL_PROJECT_ID/locations/ca_region/certificateTemplates/CERT_TEMPLATE_ID
Installa un gateway in entrata per ricevere connessioni HTTP/TCP in entrata o in uscita. Per maggiori dettagli, vedi Installare i gateway.
Completa l'installazione di Anthos Service Mesh per abilitare l'iniezione automatica di proxy sidecar sui tuoi carichi di lavoro. Per maggiori dettagli, consulta Eseguire il deployment e rieseguire il deployment dei carichi di lavoro.
On-premise
Esegui i comandi seguenti su GKE on VMware o su Google Distributed Cloud Virtual for Bare Metal per installare il piano di controllo con funzionalità predefinite e Certificate Authority Service. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --kubeconfig KUBECONFIG_FILE \ --fleet_id FLEET_PROJECT_ID \ --output_dir DIR_PATH \ --enable_all \ --ca gcp_cas \ --platform multicloud \ --ca_pool projects/CA_POOL_PROJECT_ID/locations/ca_region/caPools/CA_POOL
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--ca gcp_cas
Utilizza Certificate Authority Service come autorità di certificazione. La modifica delle autorità di certificazione durante un upgrade causa tempi di inattività.asmcli
configura Certificate Authority Service per utilizzare l'identità del carico di lavoro del parco risorse--ca_pool
L'identificatore completo per il pool di CA di Certificate Authority Service. Se utilizzi un modello di certificato, aggiungi l'ID del modello separato da:
. Ad esempio:--ca_pool projects/CA_POOL_PROJECT_ID/locations/ca_region/caPools/CA_POOL:projects/CA_POOL_PROJECT_ID/locations/ca_region/certificateTemplates/CERT_TEMPLATE_ID
Per visualizzare gli SLO e le metriche dell'infrastruttura nella UI di Anthos Service Mesh, devi anche eseguire i primi tre passaggi in Abilitare il logging e il monitoraggio delle applicazioni. Se il logging e il monitoraggio non sono abilitati e non ricevi log e metriche personalizzati, la dashboard di Anthos Service Mesh non mostrerà gli SLO, i log degli errori o le metriche di CPU e memoria.
Installa le funzionalità predefinite con Istio CA
In questa sezione viene spiegato come:
- Genera certificati e chiavi per la CA Istio che Anthos Service Mesh utilizza per firmare i tuoi carichi di lavoro.
- Esegui
asmcli
per installare Anthos Service Mesh con le funzionalità predefinite e abilitare Istio CA.
Per impostazione predefinita, gli ambienti che installano Anthos Service Mesh con Istio CA segnalano le metriche a Prometheus. Se vuoi utilizzare le dashboard di Anthos Service Mesh, devi abilitare Stackdriver. Per maggiori informazioni, vedi Installazione con funzionalità facoltative.
Per la migliore sicurezza, consigliamo vivamente di mantenere una CA radice offline e di utilizzare le CA subordinate per emettere certificati per ciascun cluster. Per ulteriori informazioni, consulta la sezione Collegare i certificati CA. In questa configurazione, tutti i carichi di lavoro nel mesh di servizi utilizzano la stessa autorità di certificazione (CA) radice. Ogni CA di Anthos Service Mesh utilizza una chiave di firma e un certificato CA intermedi, firmati dalla CA radice. Se all'interno di un mesh esistono più CA, questo stabilisce una gerarchia di attendibilità tra le CA. Puoi ripetere questi passaggi per eseguire il provisioning di certificati e chiavi per un numero qualsiasi di autorità di certificazione.
Il Makefile per generare i certificati si trova nella sottodirectory istio-1.23.3-asm.1
della directory --output_dir
specificata nel comando asmcli validate
. Se non hai eseguito asmcli validate
o se non hai la directory scaricata in locale, puoi recuperare il Makefile
scaricando il file di installazione di Anthos Service Mesh
ed estraendo i contenuti.
Passa alla directory
istio-1.23.3-asm.1
.Crea una directory per i certificati e le chiavi:
mkdir -p certs && \ pushd certs
Genera un certificato radice e una chiave:
make -f ../tools/certs/Makefile.selfsigned.mk root-ca
In questo modo vengono generati i seguenti file:
- root-cert.pem: il certificato radice
- root-key.pem: la chiave radice
- root-ca.conf: la configurazione di Opensl per generare il certificato radice
- root-cert.csr: la richiesta di firma del certificato per il certificato radice.
Genera un certificato e una chiave intermedi:
make -f ../tools/certs/Makefile.selfsigned.mk cluster1-cacerts
Questa operazione genera i seguenti file in una directory denominata
cluster1
:- ca-cert.pem: i certificati intermedi
- ca-key.pem: la chiave intermedia
- cert-chain.pem: la catena di certificati utilizzata da
istiod
- root-cert.pem: il certificato radice
Se esegui questi passaggi utilizzando un computer offline, copia la directory generata su un computer con accesso ai cluster.
Torna alla directory precedente:
popd
Esegui
asmcli
per installare un mesh utilizzando Istio CA:GKE
Esegui questo comando per installare il piano di controllo con le funzionalità predefinite e Istio CA. Inserisci i valori negli appositi segnaposto.
./asmcli install \ --project_id PROJECT_ID \ --cluster_name CLUSTER_NAME \ --cluster_location CLUSTER_LOCATION \ --fleet_id FLEET_PROJECT_ID \ --output_dir DIR_PATH \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
--project_id
,--cluster_name
e--cluster_location
Specifica l'ID progetto in cui si trova il cluster, il nome del cluster e la zona o la regione del cluster.--fleet_id
L'ID del progetto host del parco risorse. Se non includi questa opzione,asmcli
utilizza il progetto in cui è stato creato il cluster durante la registrazione del cluster.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio--ca_key
La chiave per il certificato intermedio--root_cert
Il certificato radice--cert_chain
La catena di certificati
On-premise
Esegui i comandi seguenti su GKE su VMware o Google Distributed Cloud Virtual for Bare Metal per installare il piano di controllo con funzionalità predefinite e Istio CA. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio--ca_key
La chiave per il certificato intermedio--root_cert
Il certificato radice--cert_chain
La catena di certificati
AWS
Esegui i comandi seguenti su GKE su AWS per installare il piano di controllo con le funzionalità predefinite e Istio CA. Inserisci i valori nei segnaposto forniti. Puoi scegliere di abilitare Ingress per la subnet pubblica o la subnet privata.
Pubblico
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio.--ca_key
La chiave per il certificato intermedio.--root_cert
Il certificato radice.--cert_chain
La catena di certificati.
Privata
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Salva il seguente YAML in un file denominato
istio-operator-internal-lb.yaml
:apiVersion: install.istio.io/v1alpha1 kind: IstioOperator spec: components: ingressGateways: - enabled: true k8s: serviceAnnotations: service.beta.kubernetes.io/aws-load-balancer-internal: "true" name: istio-ingressgateway
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert FILE_PATH \ --ca_key FILE_PATH \ --root_cert FILE_PATH \ --cert_chain FILE_PATH \ --custom_overlay istio-operator-internal-lb.yaml
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio.--ca_key
La chiave per il certificato intermedio.--root_cert
Il certificato radice.--cert_chain
La catena di certificati.--custom_overlay
Il nome del file dell'overlay creato. Per ulteriori informazioni sui file di overlay, consulta Abilitazione di funzionalità facoltative nel piano di controllo nel cluster
Azure
Esegui i comandi seguenti su GKE su Azure (anteprima) per installare il piano di controllo con funzionalità predefinite e Istio CA. Inserisci i valori nei segnaposto forniti. Puoi scegliere di abilitare Ingress per la subnet pubblica o la subnet privata.
Pubblico
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --option attached-cluster \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--option attached-cluster
Modifica l'utilità di firma predefinita in istiod.-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio.--ca_key
La chiave per il certificato intermedio.--root_cert
Il certificato radice.--cert_chain
La catena di certificati.
Privata
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Salva il seguente YAML in un file denominato
istio-operator-internal-lb.yaml
:apiVersion: install.istio.io/v1alpha1 kind: IstioOperator spec: components: ingressGateways: - enabled: true k8s: serviceAnnotations: service.beta.kubernetes.io/aws-load-balancer-internal: "true" name: istio-ingressgateway
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --option attached-cluster \ --ca citadel \ --ca_cert FILE_PATH \ --ca_key FILE_PATH \ --root_cert FILE_PATH \ --cert_chain FILE_PATH \ --custom_overlay istio-operator-internal-lb.yaml
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--option attached-cluster
Modifica l'utilità di firma predefinita in istiod.-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio.--ca_key
La chiave per il certificato intermedio.--root_cert
Il certificato radice.--cert_chain
La catena di certificati.--custom_overlay
Il nome del file dell'overlay creato. Per ulteriori informazioni sui file di overlay, consulta Abilitazione di funzionalità facoltative nel piano di controllo nel cluster
Amazon EKS
Esegui i seguenti comandi su Amazon EKS per installare il piano di controllo con le funzionalità predefinite e Istio CA. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --option attached-cluster \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH \ --network_id default
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--option attached-cluster
Modifica l'utilità di firma predefinita in istiod.-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio--ca_key
La chiave per il certificato intermedio--root_cert
Il certificato radice--cert_chain
La catena di certificati--network_id
Se stai configurando una rete di più reti, imposta--network_id
su un valore univoco per ogni cluster nel mesh.
Microsoft AKS
Esegui i seguenti comandi su Microsoft AKS per installare il piano di controllo con funzionalità predefinite e Istio CA. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer ./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --option attached-cluster \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH \ --network_id default
HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer
Consente la registrazione con GKE Hub.--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--option attached-cluster
Modifica l'utilità di firma predefinita in istiod.-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio--ca_key
La chiave per il certificato intermedio--root_cert
Il certificato radice--cert_chain
La catena di certificati--network_id
Se stai configurando una rete di più reti, imposta--network_id
su un valore univoco per ogni cluster nel mesh.
Installa con Istio CA con Google Cloud Observability abilitato
Per utilizzare le dashboard di Anthos Service Mesh, devi abilitare Stackdriver.
GKE
Esegui questo comando per installare il piano di controllo con le funzionalità predefinite e Istio CA. Inserisci i valori negli appositi segnaposto.
./asmcli install \
--project_id PROJECT_ID \
--cluster_name CLUSTER_NAME \
--cluster_location CLUSTER_LOCATION \
--fleet_id FLEET_PROJECT_ID \
--output_dir DIR_PATH \
--enable_all \
--ca citadel \
--ca_cert CA_CERT_FILE_PATH \
--ca_key CA_KEY_FILE_PATH \
--root_cert ROOT_CERT_FILE_PATH \
--cert_chain CERT_CHAIN_FILE_PATH
--project_id
,--cluster_name
e--cluster_location
Specifica l'ID progetto in cui si trova il cluster, il nome del cluster e la zona o la regione del cluster.--fleet_id
L'ID del progetto host del parco risorse. Se non includi questa opzione,asmcli
utilizza il progetto in cui è stato creato il cluster durante la registrazione del cluster.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio--ca_key
La chiave per il certificato intermedio--root_cert
Il certificato radice--cert_chain
La catena di certificati--option stackdriver
Abilita l'opzione Stackdriver. Tieni presente che puoi anche abilitare sia Stackdriver che Prometheus utilizzando--option prometheus-and-stackdriver
.
On-premise
Esegui i comandi seguenti su GKE su VMware o su Google Distributed Cloud Virtual for Bare Metal per installare il piano di controllo con Stackdriver, altre funzionalità facoltative e CA Istio. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio--ca_key
La chiave per il certificato intermedio--root_cert
Il certificato radice--cert_chain
La catena di certificati--option stackdriver
Abilita l'opzione Stackdriver. Tieni presente che puoi anche abilitare sia Stackdriver che Prometheus utilizzando--option prometheus-and-stackdriver
.
Per visualizzare gli SLO e le metriche dell'infrastruttura nella UI di Anthos Service Mesh, devi anche eseguire i primi tre passaggi in Abilitare il logging e il monitoraggio delle applicazioni. Se il logging e il monitoraggio non sono abilitati e non ricevi log e metriche personalizzati, la dashboard di Anthos Service Mesh non mostrerà gli SLO, i log degli errori o le metriche di CPU e memoria.
AWS
Esegui i comandi seguenti su GKE su AWS per installare il piano di controllo con Stackdriver, altre funzionalità facoltative e la CA di Istio. Inserisci i valori nei segnaposto forniti. Puoi scegliere di abilitare Ingress per la subnet pubblica o la subnet privata.
Pubblico
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH \ --option stackdriver
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio.--ca_key
La chiave per il certificato intermedio.--root_cert
Il certificato radice.--cert_chain
La catena di certificati.--option stackdriver
Abilita l'opzione Stackdriver. Tieni presente che puoi anche abilitare sia Stackdriver che Prometheus utilizzando--option prometheus-and-stackdriver
.
Privata
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Salva il seguente YAML in un file denominato
istio-operator-internal-lb.yaml
:apiVersion: install.istio.io/v1alpha1 kind: IstioOperator spec: components: ingressGateways: - enabled: true k8s: serviceAnnotations: service.beta.kubernetes.io/aws-load-balancer-internal: "true" name: istio-ingressgateway
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert FILE_PATH \ --ca_key FILE_PATH \ --root_cert FILE_PATH \ --cert_chain FILE_PATH --custom_overlay istio-operator-internal-lb.yaml \ --option stackdriver
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio.--ca_key
La chiave per il certificato intermedio.--root_cert
Il certificato radice.--cert_chain
La catena di certificati.--custom_overlay
Il nome del file dell'overlay creato. Per saperne di più sui file di overlay, consulta Abilitazione di funzionalità facoltative nel piano di controllo nel cluster--option stackdriver
Abilita l'opzione Stackdriver. Tieni presente che puoi anche abilitare sia Stackdriver che Prometheus utilizzando--option prometheus-and-stackdriver
. In alternativa, puoi abilitare Stackdriver utilizzando--custom_overlay stackdriver.yaml
. Devi Scaricare il pacchetto anthos-service-mesh-package o crearestackdriver.yaml
dal file manifest fornito.
Azure
Esegui i comandi seguenti su GKE su Azure (anteprima) per installare il piano di controllo con Stackdriver e altre funzionalità facoltative e CA di Istio. Inserisci i valori negli appositi segnaposto. Puoi scegliere di abilitare Ingress per la subnet pubblica o la subnet privata.
Pubblico
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH \ --option stackdriver
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio.--ca_key
La chiave per il certificato intermedio.--root_cert
Il certificato radice.--cert_chain
La catena di certificati.--option stackdriver
Abilita l'opzione Stackdriver. Tieni presente che puoi anche abilitare sia Stackdriver che Prometheus utilizzando--option prometheus-and-stackdriver
.
Privata
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Salva il seguente YAML in un file denominato
istio-operator-internal-lb.yaml
:apiVersion: install.istio.io/v1alpha1 kind: IstioOperator spec: components: ingressGateways: - enabled: true k8s: serviceAnnotations: service.beta.kubernetes.io/aws-load-balancer-internal: "true" name: istio-ingressgateway
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert FILE_PATH \ --ca_key FILE_PATH \ --root_cert FILE_PATH \ --cert_chain FILE_PATH --custom_overlay istio-operator-internal-lb.yaml \ --option stackdriver
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio.--ca_key
La chiave per il certificato intermedio.--root_cert
Il certificato radice.--cert_chain
La catena di certificati.--custom_overlay
Il nome del file dell'overlay creato. Per saperne di più sui file di overlay, consulta Abilitazione di funzionalità facoltative nel piano di controllo nel cluster--option stackdriver
Abilita l'opzione Stackdriver. Tieni presente che puoi anche abilitare sia Stackdriver che Prometheus utilizzando--option prometheus-and-stackdriver
. In alternativa, puoi abilitare Stackdriver utilizzando--custom_overlay stackdriver.yaml
. Devi Scaricare il pacchetto anthos-service-mesh-package o crearestackdriver.yaml
dal file manifest fornito.
Amazon EKS
Esegui i seguenti comandi su Amazon EKS per installare il piano di controllo con Stackdriver e altre funzionalità facoltative e Istio CA. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH \ --option stackdriver \ --option attached-cluster
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio--ca_key
La chiave per il certificato intermedio--root_cert
Il certificato radice--cert_chain
La catena di certificati--option stackdriver
Abilita l'opzione Stackdriver. Tieni presente che puoi anche abilitare sia Stackdriver che Prometheus utilizzando--option prometheus-and-stackdriver
.--option stackdriver
Modifica l'utilità di firma predefinita inistiod
.
Microsoft AKS
Esegui i seguenti comandi su Microsoft AKS per installare il piano di controllo con funzionalità predefinite e Istio CA. Inserisci i valori nei segnaposto forniti.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Corsa di
asmcli install
:HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer ./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca citadel \ --ca_cert CA_CERT_FILE_PATH \ --ca_key CA_KEY_FILE_PATH \ --root_cert ROOT_CERT_FILE_PATH \ --cert_chain CERT_CHAIN_FILE_PATH \ --option stackdriver \ --option attached-cluster
HUB_REGISTRATION_EXTRA_FLAGS=--has-private-issuer
Consente la registrazione con GKE Hub.--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
-ca citadel
Utilizza Istio CA come autorità di certificazione.--ca_cert
Il certificato intermedio--ca_key
La chiave per il certificato intermedio--root_cert
Il certificato radice--cert_chain
La catena di certificati--option stackdriver
Abilita l'opzione Stackdriver. Tieni presente che puoi anche abilitare sia Stackdriver che Prometheus utilizzando--option prometheus-and-stackdriver
.--option stackdriver
Modifica l'utilità di firma predefinita inistiod
.
Installazione con funzionalità facoltative
Un file overlay è un file YAML contenente una risorsa personalizzata (RP) IstioOperator
che passi a asmcli
per configurare il piano di controllo. Puoi eseguire l'override della configurazione predefinita del piano di controllo e abilitare una funzionalità facoltativa passando il file YAML a asmcli
. Puoi sovrapporre altri overlay e ogni file
di overlay sostituisce la configurazione sui livelli precedenti. Come best practice, ti consigliamo di salvare i file di overlay nel tuo sistema di controllo della versione.
Esistono due opzioni per attivare le funzionalità facoltative:
--option
e
--custom_overlay
.
Utilizza --option
se non devi modificare il file
dell'overlay. Con questo metodo, asmcli
recupera il file dal repository GitHub.
Utilizza --custom_overlay
quando devi personalizzare il file dell'overlay.
Per maggiori informazioni, consulta Abilitazione di funzionalità facoltative nel piano di controllo nel cluster.
GKE
Esegui questo comando per installare il piano di controllo con una funzionalità facoltativa. Per aggiungere più file, specifica --custom_overlay
e il nome del file,
ad esempio: --custom_overlay overlay_file1.yaml
--custom_overlay overlay_file2.yaml --custom_overlay overlay_file3.yaml
Inserisci i valori nei segnaposto forniti.
./asmcli install \
--project_id PROJECT_ID \
--cluster_name CLUSTER_NAME \
--cluster_location CLUSTER_LOCATION \
--fleet_id FLEET_PROJECT_ID \
--output_dir DIR_PATH \
--enable_all \
--ca mesh_ca \
--custom_overlay OVERLAY_FILE
--project_id
,--cluster_name
e--cluster_location
Specifica l'ID progetto in cui si trova il cluster, il nome del cluster e la zona o la regione del cluster.--fleet_id
L'ID del progetto host del parco risorse. Se non includi questa opzione,asmcli
utilizza il progetto in cui è stato creato il cluster durante la registrazione del cluster.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--ca mesh_ca
Utilizza Mesh CA come autorità di certificazione. Tieni presente cheasmcli
configura Mesh CA per utilizzare l'identità del carico di lavoro del parco risorse--custom_overlay
Specifica il nome del file dell'overlay.
Al di fuori di Google Cloud
Esegui i comandi seguenti su GKE su VMware, Google Distributed Cloud Virtual for Bare Metal, GKE su AWS, Amazon EKS o Microsoft AKS. Inserisci i valori negli appositi segnaposto.
Imposta il contesto attuale sul cluster utente:
kubectl config use-context CLUSTER_NAME
Esegui
asmcli install
per installare il piano di controllo con una funzionalità facoltativa. Per aggiungere più file, specifica--custom_overlay
e il nome del file, ad esempio:--custom_overlayoverlay_file1.yaml --custom_overlay overlay_file2.yaml --custom_overlay overlay_file3.yaml
./asmcli install \ --fleet_id FLEET_PROJECT_ID \ --kubeconfig KUBECONFIG_FILE \ --output_dir DIR_PATH \ --platform multicloud \ --enable_all \ --ca mesh_ca \ --custom_overlay OVERLAY_FILE
--fleet_id
L'ID del progetto host del parco risorse.--kubeconfig
Il percorso completo del filekubeconfig
. La variabile di ambiente$PWD
non funziona qui. Inoltre, le posizioni relative dei filekubeconfig
che utilizzano "~" non funzioneranno.--output_dir
Includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoanthos-service-mesh
ed estrae il file di installazione, che contieneistioctl
, esempi e manifest. In caso contrario,asmcli
scarica i file in una directorytmp
. Puoi specificare un percorso relativo o un percorso completo. La variabile di ambiente$PWD
non funziona qui.--platform multicloud
Specifica che la piattaforma è diversa da Google Cloud, ad esempio on-premise o multi-cloud.-
--enable_all
Consente allo script di:- Concedi le autorizzazioni IAM richieste.
- Abilita le API di Google richieste.
- Imposta un'etichetta sul cluster che identifichi il mesh.
- Registra il cluster nel parco risorse, se non è già registrato.
--ca mesh_ca
Utilizza Mesh CA come autorità di certificazione. Tieni presente cheasmcli
configura Mesh CA per utilizzare l'identità del carico di lavoro del parco risorse--custom_overlay
Specifica il nome del file dell'overlay.
Installa gateway
Anthos Service Mesh ti offre la possibilità di eseguire il deployment e gestire i gateway come parte del tuo mesh di servizi. Un gateway descrive un bilanciatore del carico che opera sul perimetro della rete mesh che riceve connessioni HTTP/TCP in entrata o in uscita. I gateway sono proxy Envoy che forniscono un controllo granulare sul traffico che entra e esce dal mesh.
Crea uno spazio dei nomi per il gateway in entrata, se non ne hai già uno. I gateway sono carichi di lavoro utente e, come best practice, non devono essere distribuiti nello spazio dei nomi del piano di controllo. Sostituisci
GATEWAY_NAMESPACE
con il nome del tuo spazio dei nomi.kubectl create namespace GATEWAY_NAMESPACE
Output previsto:
namespace/GATEWAY_NAMESPACE created
Abilita l'inserimento automatico nel gateway. I passaggi richiesti variano a seconda che tu voglia utilizzare le etichette di inserimento predefinite (ad esempio
istio-injection=enabled
) o l'etichetta di revisione nello spazio dei nomi del gateway. Il tag di revisione predefinito e l'etichetta di revisione vengono utilizzati dal webhook di aggiunta di un sidecar per associare i proxy inseriti a una determinata revisione del piano di controllo.Etichette di inserimento predefinite
Applica le etichette di inserimento predefinite allo spazio dei nomi.
kubectl label namespace GATEWAY_NAMESPACE istio-injection=enabled istio.io/rev-
Etichetta di revisione
Usa questo comando per individuare l'etichetta di revisione su
istiod
:kubectl get deploy -n istio-system -l app=istiod -o \ "jsonpath={.items[*].metadata.labels['istio\.io/rev']}{'\n'}"
Il comando restituisce l'etichetta di revisione che corrisponde alla versione di Anthos Service Mesh, ad esempio:
asm-1233-2
Applica l'etichetta di revisione allo spazio dei nomi. Nel comando seguente,
REVISION
è il valore dell'etichetta di revisioneistiod
che hai annotato nel passaggio precedente.kubectl label namespace GATEWAY_NAMESPACE \ istio.io/rev=REVISION --overwrite
Output previsto:
namespace/GATEWAY_NAMESPACE labeled
Puoi ignorare il messaggio
"istio.io/rev" not found
nell'output. Ciò significa che in precedenza lo spazio dei nomi non aveva l'etichettaistio.io/rev
, come previsto nelle nuove installazioni di Anthos Service Mesh o nei nuovi deployment. Poiché l'inserimento automatico non va a buon fine se uno spazio dei nomi ha sia l'etichettaistio.io/rev
sia l'etichettaistio-injection
, tutti i comandikubectl label
nella documentazione di Anthos Service Mesh specificano in modo esplicito entrambe le etichette.Se lo spazio dei nomi del gateway non è etichettato, i pod
istio-ingressgateway
avranno esito negativo con un erroreImagePullBackOff
quando il gateway tenta di eseguire il pull e l'immagineauto
. Questa immagine deve essere sostituita dal webhook.Scarica il file di configurazione .yaml del gateway in entrata di esempio dal repository
anthos-service-mesh-packages
.Applica la configurazione .yaml del gateway in entrata di esempio così com'è o modificala in base alle esigenze.
kubectl apply -n GATEWAY_NAMESPACE \ -f CONFIG_PATH/istio-ingressgateway
Output previsto:
deployment.apps/istio-ingressgateway created poddisruptionbudget.policy/istio-ingressgateway created horizontalpodautoscaler.autoscaling/istio-ingressgateway created role.rbac.authorization.k8s.io/istio-ingressgateway created rolebinding.rbac.authorization.k8s.io/istio-ingressgateway created service/istio-ingressgateway created serviceaccount/istio-ingressgateway created
Scopri di più sulle best practice per i gateway.
Eseguire il deployment e rieseguire il deployment dei carichi di lavoro
Anthos Service Mesh utilizza proxy sidecar per migliorare la sicurezza, l'affidabilità e l'osservabilità della rete. Con Anthos Service Mesh, queste funzioni vengono astratte dal container principale dell'applicazione e implementate in un proxy out-of-process comune fornito come container separato nello stesso pod.
L'installazione non è completa finché non abiliti l'iniezione automatica di proxy sidecar (iniezione automatica) e riavvii i pod per tutti i carichi di lavoro in esecuzione sul cluster prima dell'installazione di Anthos Service Mesh.
Per abilitare l'inserimento automatico, etichetta gli spazi dei nomi con le etichette di inserimento predefinite, se è stato configurato il tag predefinito, oppure con un'etichetta di revisione impostata su istiod
quando hai installato Anthos Service Mesh. Il tag di revisione
e l'etichetta di revisione predefiniti vengono utilizzati dal webhook dell'iniettore sidecar per associare
i file collaterali inseriti a una revisione istiod
. Dopo aver aggiunto l'etichetta, tutti i pod esistenti nello spazio dei nomi devono essere riavviati per poter inserire i file collaterali.
Prima di eseguire il deployment di nuovi carichi di lavoro in un nuovo spazio dei nomi, assicurati di configurare l'inserimento automatico in modo che Anthos Service Mesh possa monitorare e proteggere il traffico.
I passaggi necessari per abilitare l'inserimento automatico variano a seconda che tu voglia utilizzare le etichette di inserimento predefinite o l'etichetta di revisione:
Etichette di inserimento predefinite
Nel comando seguente,
NAMESPACE
è il nome dello spazio dei nomi in cui vuoi abilitare l'inserimento automatico.kubectl label namespace NAMESPACE istio-injection=enabled istio.io/rev-
Poiché le etichette di inserimento predefinite inseriscono la revisione a cui rimanda il tag predefinito, non è necessario rietichettare gli spazi dei nomi.
Etichetta di revisione
Usa questo comando per individuare l'etichetta di revisione su
istiod
:kubectl -n istio-system get pods -l app=istiod --show-labels
L'output è simile al seguente:
NAME READY STATUS RESTARTS AGE LABELS istiod-asm-1233-2-5788d57586-bljj4 1/1 Running 0 23h app=istiod,istio.io/rev=asm-1233-2,istio=istiod,pod-template-hash=5788d57586 istiod-asm-1233-2-5788d57586-vsklm 1/1 Running 1 23h app=istiod,istio.io/rev=asm-1233-2,istio=istiod,pod-template-hash=5788d57586
Nell'output, sotto la colonna
LABELS
, prendi nota del valore dell'etichetta di revisioneistiod
, che segue il prefissoistio.io/rev=
. In questo esempio, il valore èasm-1233-2
.Applica l'etichetta di revisione e rimuovi l'etichetta
istio-injection
se esistente. Nel comando seguente,NAMESPACE
è il nome dello spazio dei nomi in cui vuoi abilitare l'inserimento automatico, mentreREVISION
è l'etichetta di revisione che hai annotato nel passaggio precedente.kubectl label namespace NAMESPACE istio-injection- istio.io/rev=REVISION --overwrite
Puoi ignorare il messaggio
"istio-injection not found"
nell'output. Ciò significa che in precedenza lo spazio dei nomi non aveva l'etichettaistio-injection
, come previsto nelle nuove installazioni di Anthos Service Mesh o nei nuovi deployment. Poiché il comportamento dell'inserimento automatico non è definito quando uno spazio dei nomi ha siaistio-injection
sia l'etichetta di revisione, tutti i comandikubectl label
nella documentazione di Anthos Service Mesh assicurano esplicitamente che ne sia impostata una sola.
Se sul cluster erano in esecuzione carichi di lavoro prima dell'installazione di Anthos Service Mesh, riavvia i pod per attivare il reinjection.
Il modo in cui riavvii i pod dipende dall'applicazione e dall'ambiente in cui si trova il cluster. Ad esempio, nell'ambiente di gestione temporanea, potresti semplicemente eliminare tutti i pod, determinandone il riavvio. Tuttavia, nel tuo ambiente di produzione, potresti avere un processo che implementa un deployment blu/verde in modo da poter riavviare in sicurezza i pod per evitare interruzioni del traffico.
Puoi utilizzare
kubectl
per eseguire un riavvio in sequenza:kubectl rollout restart deployment -n NAMESPACE
Che cosa succede dopo?
Scopri di più sulla configurazione di un mesh multi-cluster:
Se il mesh è costituito interamente da cluster GKE, consulta Configurare un mesh multi-cluster su GKE.
Se il mesh è costituito da cluster esterni a Google Cloud, consulta Configurare un mesh multi-cluster all'esterno di Google Cloud.
Esegui il deployment dell'applicazione di esempio Online Boutique.