Upgrade-Leitfaden
In dieser Anleitung finden Sie allgemeine Informationen zum Aktualisieren einer vorhandenen Manufacturing Data Engine-Installation (MDE) mit Terraform.
Wenn Sie Terraform-Skripts geändert haben, sind möglicherweise zusätzliche Schritte erforderlich. Dies ist eine allgemeine Upgradeanleitung. Lesen Sie daher immer auch die vollständigen Versionshinweise für die spezifische Version, die Sie bereitstellen, da diese Informationen enthalten können, die Sie berücksichtigen müssen.
Hinweise
Einige Dataflow-Jobs müssen vor dem Upgrade manuell beendet werden. In den Versionshinweisen sind die Jobs aufgeführt, die Sie für die jeweilige Version, auf die Sie aktualisieren, manuell beenden müssen.
Für diesen Leitfaden gelten die folgenden Voraussetzungen:
- Sie verwenden das Standardbereitstellungspaket.
In Ihrer Clientumgebung sind die erforderlichen CLI-Tools in der neuesten Version installiert:
Google Cloud CLI mit den folgenden zusätzlichen Komponenten:
- kubectl
- cbt
- Terraform-Befehlszeile (1.9.x oder höher)
- Helm-Befehlszeile (3.9.x oder höher)
Sie können MDE in jeder Clientumgebung bereitstellen. Wenn Sie die Bereitstellung jedoch über Cloud Shell vornehmen, können Sie Zeit sparen, da die meisten erforderlichen Tools dort bereits installiert sind.
Sie haben vollen Zugriff auf das MDE Google Cloud -Projekt und auf die Konfigurationsdateien, die für das ursprüngliche Deployment verwendet wurden:
- JSON-Schlüsseldatei des Dienstkontos:
mde-imgs-service-account-key.json. - Terraform:
input.tfvars. - Terraform:
backend.conf.
Bei allen
gcloud-Befehlen in dieser Anleitung wird davon ausgegangen, dass das Standardprojekt auf das MDE-Bereitstellungsprojekt festgelegt ist. Mit dem folgenden Befehl können Sie das Standardprojekt festlegen:gcloud config set project PROJECT_IDErsetzen Sie PROJECT_ID durch die Projekt-ID des MDE-Bereitstellungsprojekts.
- JSON-Schlüsseldatei des Dienstkontos:
Sie haben die Anmeldedaten für den MDE-GKE-Cluster abgerufen. Verwenden Sie den folgenden Befehl, falls noch nicht geschehen:
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-endpointErsetzen Sie CLUSTER_NAME durch den Namen des Clusters, wenn Sie den Standardnamen (
mde-gke) geändert haben. Ändern SieKUBE_CONFIG_PATH, wenn sich Ihre kubeconfig nicht im Standardpfad befindet.
Upgrade
In diesem Abschnitt finden Sie eine Anleitung zum Ausführen des Upgrades mit Terraform.
Aktualisieren Sie die Berechtigungen des Terraform-Dienstkontos, um die neu erforderlichen Berechtigungen ab MDE 1.4.0 hinzuzufügen. Sie können mit den folgenden Befehlen hinzugefügt werden:
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'Sichern Sie den alten Bereitstellungsordner mit dem folgenden Befehl:
cp -r MDE_FOLDER MDE_FOLDER_BACKUPErsetzen Sie MDE_FOLDER und MDE_FOLDER_BACKUP durch die Namen des MDE-Ordners und des Sicherungsordners.
Laden Sie das aktuelle Release-Paket für die MDE-Lösung herunter und extrahieren Sie es:
- Laden Sie das Lösungspaket herunter.
- Entpacken Sie das Paket in Ihrer Clientumgebung.
- Wechseln Sie mit dem Befehl
cdin den neuen Release-Ordner.
Wenn Sie ein Upgrade auf Version 1.4.x durchführen, kopieren Sie die folgenden Dateien aus der Sicherung in den neuen Ordner. Verwenden Sie dazu die folgenden Befehle (Dateipfade können abweichen):
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 .Wenn Sie auf Version 1.5.1 aktualisieren, kopieren Sie nur die folgenden Dateien:
cd deployment/terraform cp ../../../MDE_FOLDER_BACKUP/deployment/terraform/input.tfvars . cp ../../../MDE_FOLDER_BACKUP/deployment/terraform/backend.conf .Ersetzen Sie MDE_FOLDER_BACKUP durch den Namen des MDE-Sicherungsordners.
Wenn Sie ein Upgrade von Version 1.4.x auf Version 1.5.x oder von Version 1.5.0 auf Version 1.5.1 durchführen, führen Sie das im Releasepaket enthaltene Pre-Upgrade-Script aus:
# 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/terraformWenn Sie ein Upgrade auf Version 1.5.2 durchführen, müssen Sie die Kubernetes-Anbieter so umstellen, dass die lokale kubeconfig in der Datei
providers.tfverwendet wird. Verwenden Sie dazu den folgenden Befehl: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 } }Laden Sie den Terraform-Status mit dem folgenden Befehl neu:
terraform init -backend-config=backend.conf -reconfigureErstellen Sie einen Terraform-Plan.
Sobald die Eingabeparameter bereit sind, müssen Sie mit dem folgenden Befehl einen Terraform-Plan erstellen. Mithilfe des Plans können Sie prüfen, welche Artefakte und Konfigurationen im Projekt erstellt werden.
terraform plan -var-file=./input.tfvars -out=./tfplanMit diesem Befehl können Sie sich die geplanten Änderungen ansehen:
terraform show -no-color ./tfplan > tfplan.txt more tfplan.txtWenden Sie den Terraform-Plan mit dem folgenden Befehl an:
terraform apply ./tfplanPrüfen Sie, ob die Bereitstellung erfolgreich war.
Nachdem der Befehl
terraform applyausgeführt wurde, sollte eine Erfolgsmeldung wie die folgende angezeigt werden (die tatsächliche Zahl hängt von den jeweiligen Bereitstellungsoptionen und der Version ab):Apply complete! Resources: 1 added, 34 changed, 0 destroyed.
Nach dem Upgrade
Nach Abschluss des Upgrades müssen Sie je nach Status der vorherigen MDE-Bereitstellung einen oder mehrere der folgenden Schritte ausführen.
BigQuery-Ansichten für vorhandene Typen
Wenn Sie ein Upgrade von einer Version vor 1.4.x durchführen, wird für die erstellten Typen keine Analytics-Ansicht erstellt, da diese Funktion erst in Version 1.4.0 eingeführt wurde.
Sie müssen die vorhandenen Typen noch einmal aktivieren, damit die Analyseansicht neu erstellt wird. Sie können den /activate-Endpunkt im Postman-Kit prüfen, das mit dem Release ausgeliefert wird.
Filestore-Treiber für GKE-Cluster
Wenn Sie ein Problem haben, bei dem die GKE-Cluster-Pods in ContainerCreating starten oder darin hängen bleiben, kann das daran liegen, dass der Filestore-Treiber nicht aktiviert ist. Sie können die Funktion aktivieren, indem Sie der Bereitstellungsanleitung folgen.