Installa strumenti dipendenti e verifica il cluster
Questa pagina mostra come preparare l'ambiente e il cluster per installare Anthos Service Mesh.
Installa gli strumenti richiesti
Puoi eseguire asmcli
su Cloud Shell o sulla tua macchina locale che esegue Linux. Cloud Shell preinstalla tutti gli strumenti necessari.
Se esegui asmcli
a livello locale, assicurati di avere installato i seguenti strumenti:
- L'interfaccia a riga di comando di Google Cloud
- Gli strumenti a riga di comando standard:
awk
,curl
,grep
,sed
etr
git
kubectl
jq
- (Facoltativo, per testare la connettività) netcat (
nc
)
Configura gcloud
Segui questi passaggi anche se utilizzi Cloud Shell.
Esegui l'autenticazione con Google Cloud CLI:
gcloud auth login --project PROJECT_ID
Aggiorna i componenti:
gcloud components update
Se installi Anthos Service Mesh su un cluster GKE, configura
kubectl
in modo che punti al cluster.gcloud container clusters get-credentials CLUSTER_NAME \ --zone CLUSTER_LOCATION \ --project PROJECT_ID
Scarica asmcli
Questa sezione descrive come scaricare il asmcli
.
Scarica la versione che installa Anthos Service Mesh 1.15.4 nella directory di lavoro corrente:
curl https://storage.googleapis.com/csm-artifacts/asm/asmcli_1.15 > asmcli
Output previsto:
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 167k 100 167k 0 0 701k 0 --:--:-- --:--:-- --:--:-- 701k
Rendi lo script eseguibile:
chmod +x asmcli
Concedere autorizzazioni di amministratore cluster
Assicurati di aver impostato il contesto nel cluster utente:
kubectl config use-context CONTEXT
Concedi le autorizzazioni di amministratore del cluster al tuo account utente (il tuo indirizzo email di accesso a Google Cloud). Sono necessarie queste autorizzazioni per creare le regole necessarie per il controllo dell'accesso basato sui ruoli (RBAC) per Anthos Service Mesh:
kubectl create clusterrolebinding cluster-admin-binding \ --clusterrole=cluster-admin \ --user=USER_ACCOUNT
Convalida progetto e cluster
Puoi eseguire asmcli validate
per assicurarti che il tuo progetto e il cluster siano configurati come richiesto per installare Anthos Service Mesh. Con questa opzione, asmcli
non apporta modifiche al progetto o al cluster e non installa Anthos Service Mesh.
asmcli
verifica che:
Nel tuo ambiente sono disponibili gli strumenti necessari.
Il cluster soddisfa i requisiti minimi.
Hai le autorizzazioni richieste per il progetto specificato.
Il progetto ha tutte le API di Google richieste abilitate.
Per impostazione predefinita, asmcli
scarica ed estrae il file di installazione e scarica il pacchetto di configurazione asm
da GitHub in una directory temporanea. Prima di uscire, asmcli
restituisce un messaggio che fornisce il nome della directory temporanea.
Ti consigliamo di specificare una directory per i download tramite l'opzione --output_dir DIR_PATH
. L'opzione --output_dir
consente di utilizzare facilmente lo strumento a riga di comando istioctl
. Potrebbe
essere necessario istioctl
per
risolvere i problemi di configurazione
o
configurare un mesh multi-cluster su cluster GKE privati.
Inoltre, i file di configurazione per attivare le funzionalità facoltative con asmcli
sono inclusi nella directory di asm/istio/options
.
Esegui questo comando per convalidare la configurazione e scaricare il file di installazione e il pacchetto asm
nella directory OUTPUT_DIR
.
GKE
./asmcli validate \
--project_id PROJECT_ID \
--cluster_name CLUSTER_NAME \
--cluster_location CLUSTER_LOCATION \
--fleet_id FLEET_PROJECT_ID \
--output_dir DIR_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 l'area geografica del cluster.--fleet_id
L'ID del progetto host del parco risorse.asmcli validate
verifica che il cluster sia registrato nel parco risorse specificato.--output_dir
includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoasm
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.
Al di fuori di Google Cloud
Utilizza il comando seguente per eseguire asmcli validate
sulle seguenti piattaforme:
Cluster Anthos su VMware, Anthos su Bare Metal, cluster Anthos su AWS,
Amazon EKS e Microsoft AKS.
Imposta il contesto corrente sul tuo cluster utente:
kubectl config use-context CLUSTER_NAME
Esegui questo comando per convalidare la configurazione e scaricare il file di installazione e il pacchetto
asm
nella directoryOUTPUT_DIR
:./asmcli validate \ --kubeconfig KUBECONFIG_FILE \ --fleet_id FLEET_PROJECT_ID \ --output_dir DIR_PATH \ --platform multicloud
--kubeconfig
Il percorso dellakubeconfig
Puoi specificare un percorso relativo o completo. La variabile di ambiente$PWD
non funziona qui.--fleet_id
L'ID del progetto host del parco risorse.asmcli validate
verifica che il cluster sia registrato nel parco risorse specificato.--output_dir
includi questa opzione per specificare una directory in cuiasmcli
scarica il pacchettoasm
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.
Se l'operazione ha esito positivo, asmcli
restituisce quanto segue:
asmcli: Setting up necessary files... asmcli: Using asm_kubeconfig as the kubeconfig... asmcli: Checking installation tool dependencies... asmcli: Fetching/writing GCP credentials to kubeconfig file... asmcli: Verifying connectivity (10s)... asmcli: kubeconfig set to asm_kubeconfig asmcli: using context gke_example-project-12345_us-central1_cluster-2 asmcli: Getting account information... asmcli: Downloading ASM.. asmcli: Downloading ASM kpt package... fetching package "/asm" from "https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages" to "asm" asmcli: Checking required APIs... asmcli: Checking for project example-project-12345... asmcli: Reading labels for us-central1/cluster-2... asmcli: Checking for istio-system namespace... asmcli: Confirming node pool requirements for example-project-12345/us-central1/cluster-2... asmcli: Checking Istio installations... asmcli: [WARNING]: There is no way to validate that the meshconfig API has been initialized. asmcli: [WARNING]: This needs to happen once per GCP project. If the API has not been initialized asmcli: [WARNING]: for example-project-12345, please re-run this tool with the --enable_gcp_components asmcli: [WARNING]: flag. Otherwise, installation will succeed but Anthos Service Mesh asmcli: [WARNING]: will not function correctly. asmcli: Successfully validated all requirements to install ASM.
Se uno dei test non supera la convalida, asmcli
genera un messaggio di errore.
Ad esempio, se nel progetto non sono abilitate tutte le API di Google richieste, viene visualizzato il seguente errore:
ERROR: One or more APIs are not enabled. Please enable them and retry, or run `asmcli` with the '--enable_gcp_apis' flag to allow `asmcli` to enable them on your behalf.
Se hai ricevuto un messaggio di errore relativo alla necessità di eseguire asmcli
con un
flag di abilitazione,
hai le seguenti opzioni:
Includi il flag specifico presente nel messaggio di errore o il flag
--enable_all
quando eseguiasmcli
per eseguire l'installazione effettiva.Se preferisci, puoi aggiornare il progetto e il cluster autonomamente prima di eseguire
asmcli
, come descritto in Configurare il progetto e il cluster GKE autonomamente.
Tieni presente che asmcli validate
non consente flag di abilitazione perché convalida solo che il progetto e il cluster sono pronti per l'installazione.
Ispeziona i requisiti di installazione e upgrade del cluster
Prima di eseguire l'upgrade, verifica che la tua configurazione sia compatibile con la nuova versione di Anthos Service Mesh.
Passa alla directory specificata in
--output_dir
.Esegui il comando seguente per ispezionare il cluster Kubernetes per individuare i requisiti di installazione e upgrade. Assicurati di utilizzare la versione di
istioctl
distribuita con la nuova versione di Anthos Service Mesh.istioctl experimental precheck