Questa pagina si applica ad Apigee, ma non ad Apigee hybrid.
Visualizza la documentazione di
Apigee Edge.
Questo documento descrive come ispezionare ed eseguire l'upgrade dei gruppi di istanze gestite di Compute Engine che instradano il traffico verso nord ad Apigee.
Panoramica
Alcuni deployment di Apigee instradano il traffico proxy da un bilanciatore del carico tramite i MIG di Compute Engine eseguiti nel tuo progetto e inoltrano le richieste all'endpoint di runtime Apigee, tra cui il bilanciamento del carico in entrata e i controlli di integrità attivi con Private Service Connect. Apigee non gestisce questi MIG. Come best practice per la sicurezza e l'affidabilità, devi monitorare, gestire ed eseguire l'upgrade di questi MIG e delle relative VM autonomamente per rimanere al passo con il ciclo di vita del sistema operativo Compute Engine.
Quando un sistema operativo raggiunge la fine del ciclo di vita, Compute Engine rimuove l'alias della famiglia di immagini per le nuove VM. Le VM esistenti nel MIG continuano a essere eseguite e sopravvivono agli eventi di manutenzione dell'host live. Tuttavia, se il MIG tenta di creare una nuova VM durante la scalabilità automatica, il ripristino automatico o un aggiornamento in sequenza, la creazione della VM non va a buon fine perché la famiglia di immagini di origine non viene più trovata. Se le VM proxy integre non sono disponibili, il bilanciatore del carico restituisce errori HTTP 502 Bad Gateway e il traffico API si interrompe.
Prima di iniziare
I comandi in questo documento sono esempi. Il tuo deployment potrebbe utilizzare tag di rete, tipi di macchine, dimensioni dei dischi, metadati o conteggi di VM diversi. Controlla prima la configurazione esistente e modifica i flag del comando in modo che corrispondano al tuo ambiente.
Sostituisci i seguenti segnaposto nei comandi di esempio con i valori del tuo ambiente:
-
PROJECT_ID: l'ID progetto Google Cloud in cui sono stati eseguiti i deployment dei MIG e dei template di istanza. -
REGION: la regione Compute Engine del MIG. -
EXISTING_MIG_NAME: il nome del MIG esistente. -
OLD_TEMPLATE_NAME: il nome del template di istanza collegato aEXISTING_MIG_NAME. -
NEW_TEMPLATE_NAME: il nome del nuovo template di istanza che crei. -
VPC_NAME: il nome della rete VPC utilizzata dal tuo MIG. -
VPC_SUBNET: il nome della subnet VPC inREGIONutilizzata dal MIG. -
IMAGE_FAMILY: una famiglia di immagini sistema operativo supportata dai dettagli del sistema operativo di Compute Engine. -
IMAGE_PROJECT: il progetto di immagini che contieneIMAGE_FAMILY. -
APIGEE_ENDPOINT: l'indirizzo IP di destinazione configurato nei metadatiENDPOINTdel template di istanza esistente. -
STARTUP_SCRIPT_URL: l'URL di Cloud Storage configurato neistartup-script-urlmetadati del modello di istanza esistente.
Ispeziona i MIG e i template di istanza
I MIG di routing Apigee in genere utilizzano il tag apigee-mig-proxy e i metadati ENDPOINT. Completa i seguenti passaggi per ispezionare i MIG e i template di istanza:
-
Elenca i MIG nel tuo progetto e identifica i template di istanza collegati:
gcloud compute instance-groups managed list --project=PROJECT_ID \ --format="table(name,region.basename(),zone.basename(),instanceTemplate.basename())"
-
Controlla l'immagine sistema operativo di origine del template di istanza esistente. Aggiungi
--region=REGIONse il template è regionale:gcloud compute instance-templates describe OLD_TEMPLATE_NAME \ --project=PROJECT_ID \ --format="value(properties.disks[0].initializeParams.sourceImage)"
-
Esamina il tipo di macchina, la configurazione del disco, la rete, la subnet, i tag e i metadati di
OLD_TEMPLATE_NAMEin modo da poter abbinare queste impostazioni durante la creazione del nuovo template. Aggiungi--region=REGIONse il template è regionale:gcloud compute instance-templates describe OLD_TEMPLATE_NAME \ --project=PROJECT_ID \ --format="yaml(properties.machineType,properties.disks,properties.networkInterfaces,properties.tags,properties.metadata)"
Crea un nuovo template di istanza ed esegui un aggiornamento in sequenza
Crea un nuovo template di istanza con una famiglia di immagini sistema operativo supportata e avvia un aggiornamento in sequenza sul MIG. L'utilizzo di --max-surge con --max-unavailable=0 esegue il provisioning e la verifica delle nuove VM prima di svuotare e rimuovere le istanze precedenti, il che impedisce l'interruzione del traffico anche se le nuove VM non si avviano a causa di un esaurimento delle risorse o di un errore di configurazione.
-
Crea un nuovo template di istanza. Il seguente comando è un esempio; regola la rete, la subnet, i tag, il tipo di macchina, le dimensioni del disco e i metadati in modo che corrispondano alla configurazione del template esistente:
gcloud compute instance-templates create NEW_TEMPLATE_NAME \ --project=PROJECT_ID \ --region=REGION \ --network=VPC_NAME \ --subnet=VPC_SUBNET \ --tags=https-server,apigee-mig-proxy,gke-apigee-proxy \ --machine-type=e2-medium \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --boot-disk-size=20GB \ --no-address \ --metadata=ENDPOINT=APIGEE_ENDPOINT,startup-script-url=STARTUP_SCRIPT_URL
Questo comando crea un template di istanza globale in
projects/PROJECT_ID/global/instanceTemplates/NEW_TEMPLATE_NAME. Se preferisci creare un template di istanza regionale, aggiungi--instance-template-region=REGIONe utilizzaprojects/PROJECT_ID/regions/REGION/instanceTemplates/NEW_TEMPLATE_NAMEnel passaggio successivo. -
Avvia un aggiornamento in sequenza sul MIG. Se necessario, modifica
--max-surgein base alle dimensioni e alla quota del MIG:gcloud compute instance-groups managed rolling-action start-update EXISTING_MIG_NAME \ --project=PROJECT_ID \ --region=REGION \ --version=template=projects/PROJECT_ID/global/instanceTemplates/NEW_TEMPLATE_NAME \ --max-surge=3 \ --max-unavailable=0
-
Verifica che tutte le VM nel MIG eseguano
NEW_TEMPLATE_NAMEe segnalino uno statoRUNNING:gcloud compute instance-groups managed list-instances EXISTING_MIG_NAME \ --project=PROJECT_ID \ --region=REGION
Passaggi successivi
- Esegui la migrazione del routing in entrata a Private Service Connect
- Configura il controllo di integrità attivo per il failover regionale con Private Service Connect
- Implementa gli aggiornamenti ai MIG
- Ciclo di vita dei sistemi operativi di Compute Engine
- Dettagli del sistema operativo di Compute Engine