Versionsverwaltung für Managed Service for Apache Spark

Managed Service for Apache Spark verwendet Images, um nützliche Google Cloud Connectors sowie Apache Spark- und Apache Hadoop-Komponenten zu einem Paket zusammenzufassen, das in einem Managed Service for Apache Spark-Cluster bereitgestellt werden kann. Diese Images enthalten das Basis-Betriebssystem (Debian oder Ubuntu) für den Cluster sowie Kernkomponenten und optionale Komponenten , die für die Ausführung von Jobs erforderlich sind, z. B. Spark, Hadoop und Hive. Die Images werden regelmäßig mit neuen Verbesserungen und Funktionen aktualisiert. Mit der Versionsverwaltung von Managed Service for Apache Spark können Sie beim Erstellen von Clustern Sätze von Softwareversionen auswählen.

So funktioniert die Versionierung

Wenn ein Image erstellt wird, erhält es eine Image-Versionsnummer im folgenden Format:

version_major.version_minor.version_sub_minor-os_distribution

Die folgenden Betriebssystem-Distributionen werden gepflegt:

Betriebssystem-Distributionscode Betriebssystem-Distribution
debian12 Debian 12
debian10 Debian 10
debian11 Debian 11
rocky8 Rocky Linux 8
rocky9 Rocky Linux 9
ubuntu18 Ubuntu 18.04 LTS
ubuntu20 Ubuntu 20.04 LTS
ubuntu22 Ubuntu 22.04 LTS

Weitere Informationen zu zuvor unterstützten Betriebssystem Distributionen finden Sie unter Alte Image-Versionen.

Die empfohlene Vorgehensweise besteht darin, die Image-Version major.minor für Produktionsumgebungen oder in dem Fall anzugeben, dass die Kompatibilität mit bestimmten Komponentenversionen wichtig ist. Die Sub-Minor- und Betriebssystem-Distributionen werden automatisch auf die neueste wöchentliche Version eingestellt.

Versionen auswählen

Wenn Sie einen neuen Managed Service for Apache Spark-Cluster erstellen, wird standardmäßig die neueste verfügbare Debian-Image-Version verwendet. Sie können beim Erstellen eines Clusters eine Debian-, Rocky Linux- oder Ubuntu-Image-Version auswählen (siehe die Liste der Managed Service for Apache Spark-Image-Versionen). Bei der Angabe von Debian-basierten Images können Sie das Suffix für den Betriebssystem-Distributionscode weglassen, indem Sie beispielsweise 2.0 angeben, um das 2.0-debian10 Image auszuwählen. Das Betriebssystemsuffix muss dagegen verwendet werden, um ein Rocky Linux- oder Ubuntu-basiertes Image auszuwählen, z. B. durch Angabe von 2.0-ubuntu18.

gcloud-Befehl

Wenn Sie den Befehl gcloud dataproc clusters create verwenden, können Sie mit dem Argument --image-version eine Image-Version für den neuen Cluster angeben.

Beispiel für ein Debian-Image:

gcloud dataproc clusters create CLUSTER_NAME \
    --image-version=2.0 \
    --region=REGION

Beispiel für ein Ubuntu-Image:

gcloud dataproc clusters create CLUSTER_NAME \
    --image-version=2.0-ubuntu18 \
    --region=REGION

Es wird empfohlen, die Sub-Minor-Version wegzulassen, damit die neueste Sub-Minor-Version verwendet wird. Bei Bedarf kann die Sub-Minor-Version jedoch angegeben werden, z. B. 2.0.20.

Sie können Ihre aktuelle Version mit der Google Cloud CLI prüfen.

gcloud dataproc clusters describe CLUSTER_NAME \
    --region=REGION

REST API

Sie können das imageVersion-Feld SoftwareConfig als Teil einer cluster.create-API-Anfrage angeben.

Beispiel

POST /v1/projects/project-id/regions/us-central1/clusters/
{
  "projectId": "project-id",
  "clusterName": "example-cluster",
  "config": {
    "configBucket": "",
    "gceClusterConfig": {
      "subnetworkUri": "default",
      "zoneUri": "us-central1-b"
    },
    "masterConfig": {
      ...
      }
    },
    "workerConfig": {
      ...
      }
    },
    "softwareConfig": {
      "imageVersion": "2.0"
    }
  }
}
  

Console

Öffnen Sie die Seite „Managed Service for Apache Spark Cluster erstellen “. Der Bereich Cluster einrichten ist ausgewählt. Im Bereich Image-Typ und Version wird im Abschnitt Versioning das Image angezeigt, das beim Erstellen des Clusters verwendet wird. Das Veröffentlichungsdatum des Images wird ebenfalls angezeigt. Anfänglich wird das Standard-Image, die neueste verfügbare Debian-Version, angezeigt. Klicken Sie auf Ändern , um eine Liste der verfügbaren Images aufzurufen. Sie können ein Standard- oder benutzerdefiniertes Image für Ihren Cluster auswählen.

Wann neue Versionen erstellt werden

Neue Hauptversionen werden regelmäßig erstellt, um eines oder mehrere der folgenden Elemente einzubinden:

  • Hauptversionen für:
    • Spark, Hadoop und andere Big Data-Komponenten
    • Google Cloud Connectors
  • Größere Änderungen oder Aktualisierungen an der Managed Service for Apache Spark-Funktionalität

Vor der Veröffentlichung einer neuen Hauptversion werden neue Vorabversionen (mit dem Suffix -RC) veröffentlicht:

  • Vorabversionen von Images sind nicht für die Verwendung in Produktionsarbeitslasten vorgesehen.
  • Die Komponentenversionen von Vorabversionen von Images werden möglicherweise in der GA-Image-Version nach der Vorabversion auf die neueste verfügbare Komponentenversion aktualisiert.

Neue Nebenversionen werden regelmäßig erstellt, um eines oder mehrere der folgenden Elemente einzubinden:

  • Nebenversionen und Aktualisierungen für:
    • Spark, Hadoop und andere Big Data-Komponenten
    • Google Cloud Connectors
  • Kleinere Änderungen oder Aktualisierungen an der Managed Service for Apache Spark-Funktionalität

Wenn eine Nebenversion neu erstellt wird, wird deren Debian-Image zum Standard der Hauptversion und stellt den neuesten Release der Hauptversion dar.

Neue Sub-Minor-Versionen werden regelmäßig erstellt, um eines oder mehrere der folgenden Elemente einzubinden:

  • Patches oder Korrekturen für eine Komponente im Image
  • Upgrades der Sub-Minor-Version von Komponenten

Image-Version und Managed Service for Apache Spark-Support

Nebenversionen des Image werden nach dem ersten GA-Release (General Availability, allgemeine Verfügbarkeit) für 24 Monate unterstützt. In diesem Zeitraum haben Cluster, die diese Image-Versionen verwenden, Anspruch auf Support, um Korrekturen zu erhalten und Cluster mit der neuesten unterstützten Sub-Minor-Version des Image neu zu erstellen. Nachdem das Support-Fenster geschlossen wurde, sind Cluster, die diese Image-Versionen verwenden, nicht mehr supportberechtigt.

Alte Image-Versionen

Zuvor unterstützte Betriebssystem-Distributionen

Die folgenden Betriebssystem-Distributionen wurden zuvor unterstützt:

Betriebssystem-Distributionscode Betriebssystem-Distribution Letzter Patch (Ende des Supports)
debian9 Debian 9 10. Juli 2020
deb8 Debian 8 26. Oktober 2018

Image-Versionen ohne explizite Betriebssystem-Distribution

Vor dem 16. August 2018 wurden Image-Versionen mit Debian 8 erstellt und der Betriebssystem-Distributionscode wurde weggelassen. Sie werden in folgendem Format angegeben:

version_major.version_minor.version_sub_minor

Versionen 0.1 und 0.2

Image-Versionen, die vor der allgemeinen Verfügbarkeit von Managed Service for Apache Spark Version 1.0 als Alpha- oder Betaversionen veröffentlicht wurden, unterliegen nicht den Supportrichtlinien von Managed Service for Apache Spark.

Wichtige Hinweise zur Versionsverwaltung

  • Image-Versionen enthalten die folgenden Komponenten:
  • Ihre Managed Service for Apache Spark-Cluster werden nicht automatisch aktualisiert, wenn neue Image-Versionen veröffentlicht werden.
    • Empfehlungen :
    • Führen Sie Cluster mit der neuesten Sub-Minor-Version des Image aus. Die Image-Metadaten enthalten das Label previous-subminor, das auf true gesetzt ist, wenn der Cluster nicht die neueste Sub-Minor-Version des Image verwendet.
      • So rufen Sie Image-Metadaten auf:
        1. Führen Sie den folgenden gcloud compute images list --filter Befehl aus, um den Ressourcennamen eines Managed Service for Apache Spark-Image aufzulisten.
          gcloud compute images list --project=PROJECT_NAME --filter="labels.goog-dataproc-version ~ ^IMAGE_VERSION (such as 2.2.16-debian12)"
          
        2. Führen Sie den folgenden Befehl gcloud compute images describe aus, um Image-Metadaten aufzurufen.
          gcloud compute images describe --project=PROJECT_NAME IMAGE_NAME"
          
    • Testen Sie, ob Ihre Anwendungen in Clustern, die mit neuen Image-Versionen erstellt wurden, erfolgreich ausgeführt werden. Dies gilt insbesondere für neue Hauptversionen von Images.