Guida all'upgrade
Questa guida fornisce indicazioni generali su come eseguire l'upgrade di un'installazione esistente di Manufacturing Data Engine (MDE) utilizzando Terraform.
Se hai modificato gli script Terraform, potrebbero essere necessari passaggi aggiuntivi. Questa è una guida all'upgrade generica, quindi assicurati sempre di leggere anche le note di rilascio complete per la versione specifica che stai implementando, in quanto potrebbero includere informazioni da prendere in considerazione.
Prima di iniziare
Alcuni job Dataflow devono essere interrotti manualmente prima dell'upgrade. Le note di rilascio elencano i job che devi arrestare manualmente per la versione specifica a cui stai eseguendo l'upgrade.
Questa guida richiede i seguenti prerequisiti:
- Stai utilizzando il pacchetto di deployment predefinito.
L'ambiente client dispone degli strumenti CLI richiesti installati nella versione più recente:
Google Cloud CLI con i seguenti componenti aggiuntivi installati:
- kubectl
- cbt
- Interfaccia a riga di comando di Terraform (versione 1.9.x o successive)
- CLI Helm (3.9.x o versioni successive)
Puoi utilizzare qualsiasi ambiente client per eseguire il deployment di MDE, ma puoi risparmiare tempo eseguendo il deployment da Cloud Shell, poiché la maggior parte degli strumenti richiesti è già installata.
Hai accesso completo al progetto MDE Google Cloud e ai file di configurazione utilizzati per il deployment originale:
- File di chiavi JSON del service account:
mde-imgs-service-account-key.json. - Terraform:
input.tfvars. - Terraform:
backend.conf.
Tutti i comandi
gcloudin questa guida presuppongono che il progetto predefinito sia impostato sul progetto di deployment di MDE. Puoi impostare il progetto predefinito utilizzando il seguente comando:gcloud config set project PROJECT_IDSostituisci PROJECT_ID con l'ID progetto di deployment di MDE.
- File di chiavi JSON del service account:
Hai acquisito le credenziali per il cluster MDE GKE. Se non l'hai ancora fatto, utilizza il seguente comando:
export CLUSTER_NAME="mde-gke" export CLUSTER_LOCATION=$(gcloud container clusters list --filter="name:$CLUSTER_NAME" --format="value(LOCATION)" ) # when upgrading to 1.5.2 we need to enable DNS endpoint on GKE cluster to allow Terraform connect to it gcloud container clusters update $CLUSTER_NAME --region $CLUSTER_LOCATION --enable-dns-access export KUBE_CONFIG_PATH=~/.kube/config gcloud container clusters get-credentials $CLUSTER_NAME --region $CLUSTER_LOCATION --dns-endpointSostituisci CLUSTER_NAME con il nome del cluster se hai modificato il nome predefinito (
mde-gke). ModificaKUBE_CONFIG_PATHse il file kubeconfig non si trova nel percorso predefinito.
Esegui l'upgrade
Questa sezione fornisce indicazioni su come eseguire l'upgrade utilizzando Terraform.
Aggiorna le autorizzazioni del account di servizio Terraform per aggiungere le autorizzazioni appena richieste da MDE 1.4.0 e versioni successive. Possono essere aggiunti utilizzando i seguenti comandi:
export PROJECT_ID=$(gcloud config get-value project) export SA_TERRAFORM="mde-tf" gcloud projects add-iam-policy-binding $PROJECT_ID \ --member="serviceAccount:$SA_TERRAFORM@$PROJECT_ID.iam.gserviceaccount.com" \ --role='roles/file.editor'Esegui il backup della vecchia cartella di deployment utilizzando il seguente comando:
cp -r MDE_FOLDER MDE_FOLDER_BACKUPSostituisci MDE_FOLDER e MDE_FOLDER_BACKUP con il nome della cartella MDE e della cartella di backup.
Scarica l'ultimo pacchetto di rilascio della soluzione MDE ed estrailo:
- Scarica il pacchetto della soluzione.
- Estrai il pacchetto nell'ambiente client.
- Sposta nella nuova cartella della release utilizzando il comando
cd.
Se esegui l'upgrade alla versione 1.4.x, copia i seguenti file dal backup alla nuova cartella utilizzando i seguenti comandi (i percorsi dei file potrebbero variare):
cp ../MDE_FOLDER_BACKUP/mde-imgs-service-account-key.json . cd deployment/terraform cp ../../../MDE_FOLDER_BACKUP/deployment/terraform/input.tfvars . cp ../../../MDE_FOLDER_BACKUP/deployment/terraform/backend.conf .Se esegui l'upgrade alla versione 1.5.1, copia solo i seguenti file:
cd deployment/terraform cp ../../../MDE_FOLDER_BACKUP/deployment/terraform/input.tfvars . cp ../../../MDE_FOLDER_BACKUP/deployment/terraform/backend.conf .Sostituisci MDE_FOLDER_BACKUP con il nome della cartella di backup MDE.
Se esegui l'upgrade dalla versione 1.4.x alla versione 1.5.x o dalla versione 1.5.0 alla versione 1.5.1, esegui lo script di pre-upgrade incluso nel pacchetto di rilascio:
# Execute script from the upgrade/1.5 directory and return to the terraform directory cd ../../upgrade/1.5 export BQ_PROJECT_ID=$(gcloud config get-value project) export PUBSUB_PROJECT_ID=$(gcloud config get-value project) sh migrate-metadata-instance-bq-table.sh "$BQ_PROJECT_ID" "$PUBSUB_PROJECT_ID" cd ../../deployment/terraformSe esegui l'upgrade alla versione 1.5.2, devi cambiare i provider Kubernetes per utilizzare il file kubeconfig locale nel file
providers.tfcon il seguente comando:provider "kubernetes" { config_path = "~/.kube/config" # host = "https://${local.gke_host}" # token = data... # cluster_ca_certificate = local.gke_ca_cert } provider "helm" { kubernetes { config_path = "~/.kube/config" # host = "https://${local.gke_host}" # token = data... # cluster_ca_certificate = local.gke_ca_cert } }Ricarica lo stato di Terraform utilizzando il seguente comando:
terraform init -backend-config=backend.conf -reconfigureCrea un piano Terraform.
Una volta pronti i parametri di input, devi creare un piano Terraform utilizzando il seguente comando. Puoi utilizzare il piano per verificare quali artefatti e configurazioni verranno creati nel progetto.
terraform plan -var-file=./input.tfvars -out=./tfplanPuoi sfogliare le modifiche pianificate utilizzando questo comando:
terraform show -no-color ./tfplan > tfplan.txt more tfplan.txtApplica il piano Terraform utilizzando questo comando:
terraform apply ./tfplanVerifica che il deployment sia riuscito.
Al termine dell'esecuzione del comando
terraform apply, dovresti visualizzare un messaggio di esito positivo simile al seguente (il numero effettivo dipenderà dalle opzioni di deployment e dalla versione specifiche):Apply complete! Resources: 1 added, 34 changed, 0 destroyed.
Post-upgrade
Al termine dell'upgrade, devi eseguire uno o più dei seguenti passaggi, a seconda dello stato dell'implementazione precedente di MDE.
Viste BigQuery per i tipi esistenti
Se esegui l'upgrade da una release precedente alla 1.4.x, i tipi creati non
avranno una visualizzazione Analytics creata, in quanto questa funzionalità è stata introdotta nella versione 1.4.0.
Dovrai attivare nuovamente i tipi esistenti per attivare la ricreazione della vista Analytics. Puoi controllare l'endpoint /activate nel kit Postman fornito con la release.
Driver Filestore del cluster GKE
Se riscontri un problema per cui i pod del cluster GKE si avviano o sono bloccati in ContainerCreating, potrebbe essere dovuto al fatto che il driver Filestore non è abilitato. Puoi abilitarlo seguendo i passaggi descritti nella
guida al deployment.