Anthos Service Mesh è un framework compatibile con IBM per la connessione, il monitoraggio e la protezione dei servizi in esecuzione su Google Kubernetes Engine (GKE) e GKE su VMware. Consente di creare una rete di servizi di cui è stato eseguito il deployment con bilanciamento del carico, autenticazione tra servizi, monitoraggio e altro ancora, senza richiedere alcuna modifica al codice dei servizi. Anthos Service Mesh inserisce automaticamente un proxy sidecar per ognuno dei pod delle tue applicazioni. Il proxy sidecar intercetta tutto il traffico di rete da e verso i pod. Anthos Service Mesh configura inoltre un gateway in entrata per gestire il traffico in entrata verso il mesh. Puoi usare le API Istio open source per configurare i criteri applicati su sidecar e gateway.
Questa guida spiega come installare la versione di Anthos Service Mesh 1.5.10 su un nuovo cluster Google Cloud GKE. L'installazione abilita le seguenti funzionalità:
- Telemetria mesh.
- Sicurezza mesh, inclusa l'autorità di certificazione Anthos Service Mesh (Mesh CA).
- Le funzionalità predefinite supportate elencate nella pagina Funzionalità supportate.
Questa guida spiega anche come registrare il tuo cluster nel parco risorse che si trova nello stesso progetto Google Cloud del cluster. Un parco risorse consente di organizzare i cluster per semplificare la gestione multi-cluster. Registrando i cluster in un parco risorse, puoi raggruppare servizi e altre infrastrutture in base alle esigenze per applicare criteri coerenti.
Prima di iniziare
Questa guida presuppone che tu abbia già:
Prima di iniziare l'installazione:
- Configura l'ambiente. A partire dal giorno 1.5.10-asm.2, l'installazione richiede
kpt
. - Esamina i requisiti e le limitazioni che seguono.
Requisiti
Devi disporre di una licenza di prova o di un abbonamento GKE Enterprise. Per maggiori dettagli, consulta la guida ai prezzi di GKE Enterprise.
Il cluster GKE deve soddisfare i seguenti requisiti:
- Almeno quattro nodi.
- Il tipo di macchina minimo è
e2-standard-4
, con quattro vCPU. - Utilizza un canale di rilascio anziché una versione statica di GKE
Per essere incluse nel mesh di servizi, è necessario assegnare un nome alle porte di servizio, che deve includere il protocollo della porta nella seguente sintassi:
name: protocol[-suffix]
dove le parentesi quadre indicano un suffisso facoltativo che deve iniziare con un trattino. Per saperne di più, vedi Denominazione delle porte dei servizi.Se stai installando Anthos Service Mesh su un cluster privato, devi aggiungere una regola firewall per aprire la porta 15017 se vuoi utilizzare l'inserimento automatico di sidecar. Se non aggiungi la regola firewall e l'inserimento automatico di sidecar è abilitato, ricevi un errore quando esegui il deployment dei carichi di lavoro. Per maggiori dettagli sull'aggiunta di una regola firewall, consulta Aggiunta di regole firewall per casi d'uso specifici.
Se hai creato un perimetro di servizio nell'organizzazione, potrebbe essere necessario aggiungere il servizio Mesh CA al perimetro. Per ulteriori informazioni, consulta Aggiunta di Mesh CA a un perimetro di servizio.
Limitazioni
È supportata una sola installazione di Anthos Service Mesh per progetto Google Cloud. Non sono supportati più deployment mesh in un singolo progetto.
Dati del certificato
I certificati di Mesh CA includono i seguenti dati sui servizi dell'applicazione:
- ID progetto Google Cloud
- Lo spazio dei nomi GKE
- Il nome dell'account di servizio GKE
Configurazione del progetto in corso…
-
Ottieni l'ID del progetto in cui verrà creato il cluster:
gcloud
gcloud projects list
Console
- Nella console Google Cloud, vai alla pagina Dashboard:
-
Fai clic sull'elenco a discesa Seleziona da nella parte superiore della pagina. Nella finestra Seleziona da visualizzata, scegli il tuo progetto.
L'ID progetto viene visualizzato nella scheda Informazioni sul progetto della dashboard del progetto.
- Crea una variabile di ambiente per l'ID progetto:
export PROJECT_ID=YOUR_PROJECT_ID
-
Imposta l'ID progetto predefinito per lo strumento a riga di comando
gcloud
:gcloud config set project ${PROJECT_ID}
- Crea una variabile di ambiente per il numero di progetto:
export PROJECT_NUMBER=$(gcloud projects describe ${PROJECT_ID} --format="value(projectNumber)")
-
Imposta i ruoli IAM (Identity and Access Management) richiesti. Se sei un proprietario di progetto, disponi di tutte le autorizzazioni necessarie per completare l'installazione e registrare il cluster nell'environ.
Se non sei un proprietario del progetto, devi avere qualcuno che ti conceda i ruoli IAM specifici seguenti. Nel comando seguente, modifica
GCP_EMAIL_ADDRESS
nell'account che utilizzi per accedere a Google Cloud.gcloud projects add-iam-policy-binding ${PROJECT_ID} \ --member user:GCP_EMAIL_ADDRESS \ --role=roles/editor \ --role=roles/compute.admin \ --role=roles/container.admin \ --role=roles/resourcemanager.projectIamAdmin \ --role=roles/iam.serviceAccountAdmin \ --role=roles/iam.serviceAccountKeyAdmin \ --role=roles/gkehub.admin
Per saperne di più su come concedere i ruoli IAM, consulta Concessione, modifica e revoca dell'accesso alle risorse. Per una descrizione di questi ruoli, vedi Autorizzazioni richieste per installare Anthos Service Mesh
- Abilita le seguenti API:
gcloud services enable \ container.googleapis.com \ compute.googleapis.com \ monitoring.googleapis.com \ logging.googleapis.com \ cloudtrace.googleapis.com \ meshca.googleapis.com \ meshtelemetry.googleapis.com \ meshconfig.googleapis.com \ iamcredentials.googleapis.com \ anthos.googleapis.com \ gkeconnect.googleapis.com \ gkehub.googleapis.com \ cloudresourcemanager.googleapis.com
L'abilitazione delle API può richiedere un minuto o più. Quando le API sono abilitate, vedrai un output simile al seguente:
Operation "operations/acf.601db672-88e6-4f98-8ceb-aa3b5725533c" finished successfully.
Configurazione di un nuovo cluster GKE
Questa sezione illustra le nozioni di base sulla creazione di un cluster GKE con le opzioni necessarie per Anthos Service Mesh. Per ulteriori informazioni, consulta Creazione di un cluster.
Per configurare un nuovo cluster:
Seleziona una zona o regione, un tipo di macchina e un canale di rilascio di GKE per il nuovo cluster. Il tipo di macchina minimo richiesto da Anthos Service Mesh è e2-standard-4. Puoi usare qualsiasi opzione del canale di rilascio.
Se intendi creare un cluster a zona singola, esegui questo comando per ottenere un elenco delle zone Google Cloud disponibili:
gcloud compute zones list
Se intendi creare un cluster a livello di regione, esegui questo comando per ottenere un elenco delle regioni disponibili:
gcloud compute regions list
Per ottenere un elenco dei tipi di macchina:
gcloud compute machine-types list | more
Crea le seguenti variabili di ambiente:
Imposta il nome del cluster:
export CLUSTER_NAME=YOUR_CLUSTER_NAME
Il nome del cluster deve contenere solo caratteri alfanumerici minuscoli e "-", deve iniziare con una lettera, terminare con un carattere alfanumerico e non deve superare i 40 caratteri.
Imposta
CLUSTER_LOCATION
sulla zona o sulla regione del cluster:export CLUSTER_LOCATION=YOUR_ZONE_OR_REGION
Imposta il pool di carichi di lavoro:
export WORKLOAD_POOL=${PROJECT_ID}.svc.id.goog
Imposta l'ID mesh:
export MESH_ID="proj-${PROJECT_NUMBER}"
Imposta il canale di rilascio. Sostituisci
YOUR_CHANNEL
con uno dei seguenti:regular
,stable
orapid
.export CHANNEL=YOUR_CHANNEL
Per una descrizione di ciascun canale, consulta l'articolo Quali canali sono disponibili.
Imposta la zona o la regione predefinita per Google Cloud CLI.
Per un cluster a zona singola, imposta la zona predefinita:
gcloud config set compute/zone ${CLUSTER_LOCATION}
Per un cluster a livello di regione, imposta la regione predefinita:
gcloud config set compute/region ${CLUSTER_LOCATION}
Suggerimento: per semplificare la configurazione dell'ambiente shell in futuro, puoi copiare e incollare le istruzioni
export
per ogni variabile di ambiente in un semplice script shell chesource
quando avvii una nuova shell. Puoi anche aggiungere i comandigcloud
che impostano i valori predefiniti allo script. In alternativa, puoi utilizzaregcloud init
per creare e attivare una configurazionegcloud
denominata.Crea il cluster con le opzioni richieste da Anthos Service Mesh. Il seguente comando crea un cluster contenente 4 nodi di tipo di macchina e2-standard-4, con 4 vCPU. Questo è il tipo di macchina e il numero di nodi minimi richiesti per Anthos Service Mesh. Puoi specificare un altro tipo di macchina a condizione che abbia almeno 4 vCPU e puoi aumentare il numero di nodi secondo necessità per i tuoi requisiti di sistema.
gcloud beta container clusters create ${CLUSTER_NAME} \ --machine-type=e2-standard-4 \ --num-nodes=4 \ --workload-pool=${WORKLOAD_POOL} \ --enable-stackdriver-kubernetes \ --subnetwork=default \ --labels=mesh_id=${MESH_ID} \ --release-channel=${CHANNEL}
Il comando
clusters create
include:workload-pool=${WORKLOAD_POOL}
: abilita Workload Identity, che rappresenta il metodo consigliato per accedere in sicurezza ai servizi Google Cloud dalle applicazioni GKE.enable-stackdriver-kubernetes
: abilita Cloud Monitoring e Cloud Logging su GKE.subnetwork=default
: crea una sottorete predefinita.labels mesh_id=${MESH_ID}
: imposta l'etichettamesh_id
sul cluster, necessaria per visualizzare le metriche nelle pagine Anthos Service Mesh nella console Google Cloud.release-channel ${CHANNEL}
: registra il cluster nel canale di rilascio specificato.
Impostazione di credenziali e autorizzazioni
Prima di continuare, assicurati di aver abilitato tutte le API richieste. Se hai dei dubbi, non fa male a eseguire di nuovo il comando gcloudservicesenable.
- Inizializza il progetto per prepararlo per l'installazione. Tra le altre cose, questo comando crea un account di servizio per consentire ai componenti Istio, come il proxy sidecar, di accedere in modo sicuro ai dati e alle risorse del tuo progetto:
curl --request POST \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --data '' \ https://meshconfig.googleapis.com/v1alpha1/projects/${PROJECT_ID}:initialize
Il comando risponde con parentesi graffe vuote:
{}
Se in futuro installerai una nuova versione di Anthos Service Mesh su questo cluster, non è necessario eseguire di nuovo il comando, ma l'esecuzione del comando non influisce sull'installazione.
-
Ottieni le
credenziali di autenticazione per interagire con il cluster:
gcloud container clusters get-credentials ${CLUSTER_NAME}
-
Concedi all'utente corrente le autorizzazioni di amministratore del cluster. Devi disporre delle seguenti autorizzazioni per creare le regole di controllo dell'accesso basato sui ruoli (RBAC) necessarie per Anthos Service Mesh:
kubectl create clusterrolebinding cluster-admin-binding \ --clusterrole=cluster-admin \ --user="$(gcloud config get-value core/account)"
Se viene visualizzato l'errore
"cluster-admin-binding" already exists
, puoi tranquillamente ignorarlo e continuare con l'associazione cluster-admin-binding esistente.
Registrazione del cluster in corso
Devi registrare il tuo cluster con il parco risorse del progetto per ottenere l'accesso all'interfaccia utente unificata nella console Google Cloud. Un parco risorse offre un modo unificato per visualizzare e gestire i cluster e i relativi carichi di lavoro, inclusi i cluster esterni a Google Cloud.
Crea un account di servizio e un file di chiavi Google Cloud
Per registrare un cluster è necessario un file JSON contenente le credenziali dell'account di servizio. Per seguire il principio del privilegio minimo, ti consigliamo di creare un account di servizio distinto per ogni cluster registrato.
Per creare un account di servizio e un file della chiave:
Seleziona un nome per l'account di servizio e crea una variabile di ambiente:
export SERVICE_ACCOUNT_NAME=SERVICE_ACCOUNT_NAME
Crea l'account di servizio:
gcloud iam service-accounts create ${SERVICE_ACCOUNT_NAME}
Elenca tutti gli account di servizio di un progetto per confermare che l'account di servizio sia stato creato:
gcloud iam service-accounts list
Associa il ruolo IAM gkehub.connect all'account di servizio:
gcloud projects add-iam-policy-binding ${PROJECT_ID} \ --member="serviceAccount:${SERVICE_ACCOUNT_NAME}@${PROJECT_ID}.iam.gserviceaccount.com" \ --role="roles/gkehub.connect"
Crea una variabile di ambiente per il percorso file locale in cui vuoi salvare il file JSON. Ti consigliamo di assegnare un nome al file utilizzando il nome dell'account di servizio e l'ID progetto, ad esempio:
/tmp/creds/${SERVICE_ACCOUNT_NAME}-${PROJECT_ID}.json
export SERVICE_ACCOUNT_KEY_PATH=LOCAL_KEY_PATH
Scarica il file JSON della chiave privata dell'account di servizio:
gcloud iam service-accounts keys create ${SERVICE_ACCOUNT_KEY_PATH} \ --iam-account=${SERVICE_ACCOUNT_NAME}@${PROJECT_ID}.iam.gserviceaccount.com
Registra il cluster
Nel comando seguente, sostituisci MEMBERSHIP_NAME
con un nome che rappresenta in modo univoco il cluster registrato nell'hub.
gcloud container hub memberships register MEMBERSHIP_NAME \ --gke-cluster=${CLUSTER_LOCATION}/${CLUSTER_NAME} \ --service-account-key-file=${SERVICE_ACCOUNT_KEY_PATH}
Il comando risponde con un output simile al seguente:
kubeconfig entry generated for CLUSTER_NAME. Waiting for membership to be created...done. Created a new membership [projects/PROJECT_ID/locations/global/memberships/MEMBERSHIP_NAME] for the cluster [MEMBERSHIP_NAME] Generating the Connect Agent manifest... Deploying the Connect Agent on cluster [MEMBERSHIP_NAME] in namespace [gke-connect]... Deployed the Connect Agent on cluster [MEMBERSHIP_NAME] in namespace [gke-connect]. Finished registering the cluster [MEMBERSHIP_NAME] with the Hub.
Questa chiave dell'account di servizio è archiviata come secret denominato creds-gcp
nello
spazio dei nomi gke-connect
.
Per ulteriori informazioni sulla registrazione del cluster, consulta Registrazione di un cluster nella documentazione di Connect.
Download del file di installazione in corso...
Prima di continuare, verifica che l'account di servizio del piano dati mesh di ASM sia un membro del progetto:
gcloud projects get-iam-policy ${PROJECT_ID} | grep -B 1 'roles/meshdataplane.serviceAgent'
Se il comando precedente non restituisce alcun risultato, torna alla sezione Imposta credenziali e autorizzazioni ed esegui il comando curl
.
-
Scarica il file di installazione di Anthos Service Mesh nella directory di lavoro attuale:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-linux.tar.gz
-
Scarica il file della firma e utilizza
openssl
per verificare la firma:curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-linux.tar.gz.1.sig openssl dgst -verify - -signature istio-1.5.10-asm.2-linux.tar.gz.1.sig istio-1.5.10-asm.2-linux.tar.gz <<'EOF' -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw== -----END PUBLIC KEY----- EOF
L'output previsto è:
Verified OK
-
Estrai i contenuti del file in qualsiasi posizione nel file system. Ad esempio, per estrarre i contenuti nella directory di lavoro corrente:
tar xzf istio-1.5.10-asm.2-linux.tar.gz
Il comando crea una directory di installazione nella directory di lavoro attuale denominata
istio-1.5.10-asm.2
che contiene:- Applicazioni di esempio in
samples
- I seguenti strumenti nella directory
bin
:istioctl
: utilizziistioctl
per installare Anthos Service Mesh.asmctl
: utilizziasmctl
per convalidare la configurazione di sicurezza dopo l'installazione di Anthos Service Mesh. (Attualmente,asmctl
non è supportato su GKE su VMware).
- Applicazioni di esempio in
-
Scarica il file di installazione di Anthos Service Mesh nella directory di lavoro attuale:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-osx.tar.gz
-
Scarica il file della firma e utilizza
openssl
per verificare la firma:curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-osx.tar.gz.1.sig openssl dgst -sha256 -verify /dev/stdin -signature istio-1.5.10-asm.2-osx.tar.gz.1.sig istio-1.5.10-asm.2-osx.tar.gz <<'EOF' -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw== -----END PUBLIC KEY----- EOF
L'output previsto è:
Verified OK
-
Estrai i contenuti del file in qualsiasi posizione nel file system. Ad esempio, per estrarre i contenuti nella directory di lavoro corrente:
tar xzf istio-1.5.10-asm.2-osx.tar.gz
Il comando crea una directory di installazione nella directory di lavoro attuale denominata
istio-1.5.10-asm.2
che contiene:- Applicazioni di esempio in
samples
- I seguenti strumenti nella directory
bin
:istioctl
: utilizziistioctl
per installare Anthos Service Mesh.asmctl
: utilizziasmctl
per convalidare la configurazione di sicurezza dopo l'installazione di Anthos Service Mesh. (Attualmente,asmctl
non è supportato su GKE su VMware).
- Applicazioni di esempio in
-
Scarica il file di installazione di Anthos Service Mesh nella directory di lavoro attuale:
curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-win.zip
-
Scarica il file della firma e utilizza
openssl
per verificare la firma:curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.5.10-asm.2-win.zip.1.sig openssl dgst -verify - -signature istio-1.5.10-asm.2-win.zip.1.sig istio-1.5.10-asm.2-win.zip <<'EOF' -----BEGIN PUBLIC KEY----- MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw== -----END PUBLIC KEY----- EOF
L'output previsto è:
Verified OK
-
Estrai i contenuti del file in qualsiasi posizione nel file system. Ad esempio, per estrarre i contenuti nella directory di lavoro corrente:
tar xzf istio-1.5.10-asm.2-win.zip
Il comando crea una directory di installazione nella directory di lavoro attuale denominata
istio-1.5.10-asm.2
che contiene:- Applicazioni di esempio in
samples
- I seguenti strumenti nella directory
bin
:istioctl
: utilizziistioctl
per installare Anthos Service Mesh.asmctl
: utilizziasmctl
per convalidare la configurazione di sicurezza dopo l'installazione di Anthos Service Mesh. (Attualmente,asmctl
non è supportato su GKE su VMware).
- Applicazioni di esempio in
-
Assicurati di essere nella directory principale dell'installazione di Anthos Service Mesh.
cd istio-1.5.10-asm.2
-
Per praticità, aggiungi gli strumenti nella directory
/bin
al tuo PERCORSO:export PATH=$PWD/bin:$PATH
Linux
Mac OS
Windows
Preparazione dei file di configurazione delle risorse
Quando esegui istioctl apply command
per installare Anthos Service Mesh, devi specificare -f istio-operator.yaml
nella riga di comando. Questo file contiene informazioni sul progetto e sul cluster necessarie per abilitare le funzionalità di sicurezza mesh e di telemetria mesh. Devi scaricare i file di configurazione istio-operator.yaml
e di altre risorse e impostare le informazioni sul progetto e sul cluster.
Per preparare i file di configurazione delle risorse:
Se non l'hai ancora fatto, installa
kpt
:gcloud components install kpt
Facoltativamente, crea una nuova directory per i file di configurazione delle risorse del pacchetto Anthos Service Mesh. Se prevedi di configurare più cluster, potresti voler utilizzare il nome del cluster come nome della directory.
Passa alla directory in cui vuoi scaricare il pacchetto Anthos Service Mesh.
Scarica il pacchetto Anthos Service Mesh nella directory di lavoro attuale:
kpt pkg get \ https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@release-1.5-asm .
Imposta il nome del cluster:
kpt cfg set asm gcloud.container.cluster ${CLUSTER_NAME}
Facoltativamente, personalizza i file di configurazione delle risorse utilizzando i setter di
kpt
. Per impostazione predefinita, questi setter utilizzano i valori predefiniti pergcloud config
. Se imposti i valori predefiniti digcloud config
o se vuoi modificare i valori, esegui i seguenti setter:Imposta l'ID progetto:
kpt cfg set asm gcloud.core.project ${PROJECT_ID}
Imposta la zona o la regione predefinita:
kpt cfg set asm gcloud.compute.location ${CLUSTER_LOCATION}
Facoltativamente, puoi registrare i file di configurazione delle risorse nel tuo sistema di controllo del codice sorgente, ad esempio Cloud Source Repositories, in modo da poter tenere traccia delle modifiche ai file.
Installazione di Anthos Service Mesh
Questa sezione spiega come installare Anthos Service Mesh e abilitare:
- Le funzionalità predefinite supportate elencate nella pagina Funzionalità supportate.
- Autorità di certificazione Anthos Service Mesh (Mesh CA).
- La pipeline di dati di telemetria su cui si basano le dashboard di Anthos Service Mesh nella console Google Cloud.
Per informazioni sull'abilitazione delle funzionalità facoltative supportate, consulta Attivazione delle funzionalità facoltative.
Per installare Anthos Service Mesh:
Scegli uno dei seguenti comandi per configurare Anthos Service Mesh in modalità di autenticazione
PERMISSIVE
mTLS (mutual TLS)
o STRICT
in modalità mTLS.
mTLS PERMISSIVO
istioctl manifest apply --set profile=asm \ -f asm/cluster/istio-operator.yaml
mTLS STRETTA
istioctl manifest apply --set profile=asm \ -f asm/cluster/istio-operator.yaml \ --set values.global.mtls.enabled=true
Convalida dell'installazione in corso...
Ti consigliamo di utilizzare lo strumento di analisi asmctl
per convalidare la configurazione di base del progetto, del cluster e dei carichi di lavoro. Se un test asmctl
non va a buon fine, asmctl
consiglia le soluzioni, se possibile. Il comando asmctl validate
esegue test di base che verificano:
- Che le API richieste da Anthos Service Mesh siano abilitate nel progetto.
- Che Istio-Ingressgateway sia configurato correttamente per le chiamate alla CA mesh.
- Stato generale di Istiod e Istio-Ingressgateway.
Se esegui il comando asmctl validate
con il flag facoltativo --with-testing-workloads
, oltre ai test di base, asmctl
esegue test di sicurezza che controllano:
- La comunicazione TLS reciproca (mTLS) sia configurata correttamente.
- Mesh CA può emettere certificati.
Per eseguire i test di sicurezza, asmctl
esegue il deployment dei carichi di lavoro sul tuo cluster in uno spazio dei nomi di test, esegue i test di comunicazione mTLS, restituisce i risultati ed elimina lo spazio dei nomi di test.
Per eseguire asmctl
:
Assicurati che le credenziali gcloud application-default siano impostate:
gcloud auth application-default login
Se non l'hai ancora fatto, ottieni credenziali di autenticazione per interagire con il cluster:
gcloud container clusters get-credentials ${CLUSTER_NAME}
Per eseguire sia il test di base che quello di sicurezza (supponendo che
istio-1.5.10-asm.2/bin
) sia nel tuoPATH
:asmctl validate --with-testing-workloads
In caso di esito positivo, il comando risponde con un output simile al seguente:
[asmctl version 0.3.0] Using Kubernetes context: example-project_us-central1-example-cluster To change the context, use the --context flag Validating enabled APIs OK Validating ingressgateway configuration OK Validating istio system OK Validating sample traffic Launching example services... Sent traffic to example service http code: 200 verified mTLS configuration OK Validating issued certs OK
Inserimento di proxy sidecar
Anthos Service Mesh utilizza i 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.
Prima di eseguire il deployment dei carichi di lavoro, assicurati di configurare l'inserimento del proxy sidecar in modo che Anthos Service Mesh possa monitorare e proteggere il traffico.Puoi abilitare l'inserimento automatico di sidecar con un solo comando, ad esempio:
kubectl label namespace NAMESPACE istio-injection=enabled --overwrite
dove NAMESPACE
è il nome dello spazio dei nomi per i servizi della tua applicazione oppure default
se non hai creato esplicitamente uno spazio dei nomi.
Per maggiori informazioni, consulta Inserimento di proxy sidecar.
Visualizzazione delle dashboard di Anthos Service Mesh
Dopo aver eseguito il deployment dei carichi di lavoro nel tuo cluster con i proxy sidecar inseriti, puoi esplorare le pagine Anthos Service Mesh nella console Google Cloud per vedere tutte le funzionalità di osservabilità offerte da Anthos Service Mesh. Tieni presente che sono necessari circa uno o due minuti per la visualizzazione dei dati di telemetria nella console Google Cloud dopo il deployment dei carichi di lavoro.
L'accesso ad Anthos Service Mesh nella console Google Cloud è controllato da Identity and Access Management (IAM). Per accedere alle pagine di Anthos Service Mesh, un Proprietario progetto deve concedere agli utenti il ruolo Editor di progetto o Visualizzatore oppure i ruoli più restrittivi descritti in Controllare l'accesso ad Anthos Service Mesh nella console Google Cloud.
Nella console Google Cloud, vai ad Anthos Service Mesh.
Seleziona il progetto Google Cloud dall'elenco a discesa nella barra dei menu.
Se disponi di più mesh di servizi, selezionalo dall'elenco a discesa Mesh di servizi.
Per scoprire di più, consulta Esplorazione di Anthos Service Mesh nella console Google Cloud.
Oltre alle pagine Anthos Service Mesh, le metriche relative ai tuoi servizi (ad esempio il numero di richieste ricevute da un determinato servizio) vengono inviate a Cloud Monitoring, dove vengono visualizzate in Metrics Explorer.
Per visualizzare le metriche:
Nella console Google Cloud, vai alla pagina Monitoring:
Seleziona Risorse > Metrics Explorer.
Per un elenco completo delle metriche, consulta la pagina relativa alle metriche Istio nella documentazione di Cloud Monitoring.