Dataproc-Image-Version in Cloud Data Fusion ändern

Auf dieser Seite wird beschrieben, wie Sie die Dataproc-Image-Version ändern, die von Ihrer Cloud Data Fusion-Instanz verwendet wird. Sie können das Bild auf Instanz-, Namespace- oder Pipelineebene ändern.

Hinweise

Beenden Sie alle Echtzeit-Pipelines und Replikationsjobs im Cloud Data Fusion-Instanz. Wenn eine Echtzeit-Pipeline oder -Replikation ausgeführt wird, während Sie die Dataproc-Imageversion ändern, werden die Änderungen nicht auf die Pipelineausführung angewendet.

Wenn für Echtzeitpipelines die Prüfpunktausführung aktiviert ist, wird die keine Datenverluste verursachen. Für Replikationsjobs: da die Datenbanklogs verfügbar sind, wird die Replikationsjob verursacht keinen Datenverlust.

Console

  1. Rufen Sie die Cloud Data Fusion-Seite Instanzen auf. Klicken Sie dazu in CDAP auf View Instances) (Instanzen ansehen) und öffnen Sie die Instanz, in der Sie eine zu erstellen.

    Zur Seite „VM-Instanzen“

  2. Öffnen Sie jede Echtzeit-Pipeline in Pipeline Studio und klicken Sie auf Anhalten.

  3. Öffnen Sie jeden Replikationsjob auf der Seite Replizieren und Klicken Sie auf Beenden.

REST API

  • Verwenden Sie den folgenden REST API-Aufruf, um alle Pipelines abzurufen:

    GET -H "Authorization: Bearer ${AUTH_TOKEN}" \
    "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps"
    

    Ersetzen Sie NAMESPACE_ID durch den Namen Ihres Namespace.

  • Verwenden Sie den folgenden REST API-Aufruf, um eine Echtzeitpipeline zu beenden:

    POST -H "Authorization: Bearer ${AUTH_TOKEN}" \
    "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps/PIPELINE_NAME/spark/DataStreamsSparkStreaming/stop"
    

    Ersetzen Sie NAMESPACE_ID durch den Namen Ihres Namespace und PIPELINE_NAME durch den Namen der Echtzeit-Pipeline.

  • Verwenden Sie den folgenden REST API-Aufruf, um einen Replikationsjob anzuhalten:

    POST -H "Authorization: Bearer ${AUTH_TOKEN}" \
    "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps/REPLICATION_JOB_NAME/workers/DeltaWorker/stop"
    

    Ersetzen Sie NAMESPACE_ID durch den Namen Ihres Namespace und REPLICATION_JOB_NAME mit dem Namen des Replikationsjobs.

    Weitere Informationen finden Sie unter Echtzeitpipelines beenden. und Beenden von Replikationsjobs.

Standardversion von Dataproc in Cloud Data Fusion prüfen und überschreiben

  1. Zur Weboberfläche von Cloud Data Fusion

  2. Klicken Sie auf Systemadministrator > Konfiguration > Systemeinstellungen.

    Systemeinstellungen bearbeiten

  3. Wenn in den Systemeinstellungen kein Dataproc-Image angegeben ist, oder klicken Sie auf Systemeinstellungen bearbeiten, um die Einstellung zu ändern.

    1. Geben Sie in das Feld Schlüssel den folgenden Text ein:

      system.profile.properties.imageVersion

    2. Geben Sie das ausgewählte Dataproc-Image in das Feld Wert ein. wie z. B. 2.1.

    3. Klicken Sie auf Speichern & schließen.

Einstellungen für das System festlegen

Diese Änderung betrifft die gesamte Cloud Data Fusion-Instanz, einschließlich aller Die zugehörigen Namespaces und Pipeline-Ausführungen, es sei denn, das Image-Versionsattribut lautet in einem Namespace, einer Pipeline oder einem Laufzeitargument in Ihrer Instanz überschrieben wurde.

Dataproc-Image-Version ändern

Die Image-Version kann in der Weboberfläche von Cloud Data Fusion in der Compute-Konfigurationen, Namespace-Einstellungen oder Pipeline-Laufzeitargumente.

Das Bild in den Namespace-Einstellungen ändern

Wenn Sie die Image-Version in Ihren Namespace-Attributen überschrieben haben, führen Sie folgende Schritte aus:

  1. Zur Weboberfläche von Cloud Data Fusion

  2. Klicken Sie auf Systemadministrator > Konfiguration > Namespaces.

  3. Öffnen Sie jeden Namespace und klicken Sie auf Einstellungen.

    1. Achten Sie darauf, dass der Schlüssel nicht überschrieben wird system.profile.properties.imageVersion mit falschem Bild Versionswert

    2. Klicken Sie auf Beenden.

Image in System Compute-Profilen ändern

  1. Zur Weboberfläche von Cloud Data Fusion

  2. Klicken Sie auf Systemadministrator > Konfiguration.

  3. Klicken Sie auf das System Compute-Profile > Neues Profil erstellen.

  4. Wählen Sie den Dataproc-Bereitsteller aus.

    Bereitsteller auswählen

  5. Erstellen Sie das Profil für Dataproc. In der Image-Version eine Dataproc-Image-Version ein.

    Feld „Image-Version“

  6. Wählen Sie dieses Compute-Profil aus, während Sie die Pipeline in Studio ausführen Seite. Klicken Sie auf der Seite „Pipelineausführung“ auf Konfigurieren > Compute config und wählen Sie dieses Profil aus.

  7. Wählen Sie das Dataproc-Profil aus und klicken Sie auf Speichern.

  8. Klicken Sie auf Beenden.

Bild in Pipelinelaufzeitargumenten ändern

Wenn Sie die Image-Version mit einer Eigenschaft in der Laufzeit überschrieben haben Führen Sie für Argumente Ihrer Pipeline die folgenden Schritte aus:

  1. Zur Weboberfläche von Cloud Data Fusion

  2. Klicken Sie auf das Menü > Liste.

  3. Wählen Sie auf der Seite List (Liste) die Pipeline aus, die Sie aktualisieren möchten.

    Die Pipeline wird auf der Seite Studio geöffnet.

  4. Klicken Sie zum Maximieren der Optionen unter Ausführen auf den Erweiterungspfeil .

    Das Fenster Laufzeitargumente wird geöffnet.

  5. Prüfen Sie, ob es keine Überschreibung mit dem Schlüssel system.profile.properties.imageVersion mit einer falschen Bildversion als Wert gibt.

  6. Klicken Sie auf Speichern.

    Pipeline-Laufzeitargument festlegen

Statische Dataproc-Cluster, die von Cloud Data Fusion verwendet werden, mit der ausgewählten Image-Version neu erstellen

Wenn Sie vorhandene Dataproc-Cluster mit Cloud Data Fusion verwenden, folgen Sie dem Dataproc-Leitfaden, um die Cluster mit der ausgewählten Dataproc-Image-Version für Ihre Cloud Data Fusion-Version neu zu erstellen.

Alternativ können Sie einen neuen Dataproc-Cluster mit der ausgewählten Dataproc-Imageversion erstellen und das Compute-Profil in Cloud Data Fusion mit demselben Namen des Compute-Profils und dem aktualisierten Namen des Dataproc-Clusters löschen und neu erstellen. So können laufende Batch-Pipelines auf dem vorhandenen Cluster abgeschlossen werden und nachfolgende Pipelineausführungen finden auf dem neuen Dataproc-Cluster statt. Sie können den alten Dataproc-Cluster löschen, nachdem Sie bestätigt haben, dass alle Pipelineausführungen abgeschlossen sind.

Prüfen, ob die Dataproc-Image-Version aktualisiert wurde

Console

  1. Rufen Sie in der Google Cloud Console die Seite Dataproc-Cluster auf.

    Zu den Clustern

  2. Öffnen Sie die Seite Clusterdetails für den neuen Cluster, der in Cloud Data Fusion erstellt wurde, als Sie die neue Version angegeben haben.

    Das Feld Image version (Bildversion) enthält den neuen Wert, den Sie in Cloud Data Fusion angegeben haben.

REST API

  1. Rufen Sie die Liste der Cluster mit ihren Metadaten ab:

    GET -H "Authorization: Bearer ${AUTH_TOKEN}" \
    https://dataproc.googleapis.com/v1/projects/PROJECT_ID/regions/REGION_ID/clusters
    

    Ersetzen Sie Folgendes:

    • Ersetzen Sie PROJECT_ID durch den Namen Ihres Namespace.
    • REGION_ID durch den Namen der Region, in der befinden sich Ihre Cluster
  2. Suchen Sie nach dem Namen Ihrer Pipeline (Clustername).

  3. Sehen Sie sich unter diesem JSON-Objekt das Bild in config > softwareConfig > imageVersion an.

Dataproc-Image in Version 2.1 ändern

Cloud Data Fusion-Versionen 6.9.1 und höher unterstützen die Dataproc-Image 2.1 Compute Engine, das in Java 11 ausgeführt wird. In den Versionen 6.10.0 und höher ist Image 2.1 die Standardeinstellung.

Wenn Sie für Ihre Batchpipelines zu Image 2.1 wechseln, Replikationsjobs, die JDBC-Treiber, die die Datenbank die in diesen Fällen verwendet werden, müssen mit Java 11 kompatibel sein.

Für Dataproc-Image 2.1 gelten die folgenden Einschränkungen in Cloud Data Fusion:

  • Die JDBC-Treiber von IBM Netezza und DB2 11 werden nicht unterstützt.
  • Image 2.1 funktioniert nicht mit MapReduce-Jobs.
  • Die in den Datenbank-Plug-ins Ihrer Instanz verwendeten JDBC-Treiberversionen müssen um Java 11 zu unterstützen. Siehe folgende Tabelle für Treiber Versionen, die mit Dataproc 2.1 und Java 11 funktionieren:
JDBC-Treiber Frühere Versionen wurden aus Cloud Data Fusion 6.9.1 entfernt Von Java 8 und Java 11 unterstützte Versionen, die mit Dataproc 2.0 oder 2.1 funktionieren
JDBC-Treiber für Cloud SQL for MySQL - 1.0.16
JDBC-Treiber für Cloud SQL for PostgreSQL - 1.0.16
DB2 11 JDBC-Treiber - -
Microsoft SQL Server JDBC-Treiber Microsoft JDBC-Treiber 6.0 Microsoft JDBC-Treiber 9.4
MySQL JDBC-Treiber 5.0.8, 5.1.39 8.0.25
IBM Netezza JDBC-Treiber - -
PostgreSQL-JDBC-Treiber 9.4.1211.jre7, 9.4.1211.jre8 42.6.0.jre8
Oracle JDBC-Treiber ojdbc7 ojdbc8 (12c und höher)

Arbeitsspeichernutzung bei Verwendung von Dataproc 2.1

Bei Pipelines, die Dataproc 2.1-Cluster verwenden, kann die Arbeitsspeichernutzung steigen. Wenn Sie ein Upgrade Ihrer Instanz auf Version 6.10.0 oder höher durchführen und aufgrund von Speicherproblemen ausfallen, sollten Sie Executor-Arbeitsspeicher in der Resources-Konfiguration für den zu erstellen. Konfigurieren Sie die Ressourcen.

Alternativ können Sie die Dataproc-Version überschreiben, indem Sie Folgendes festlegen: Das Laufzeitargument system.profile.properties.imageVersion für 2.0-debian10.