Teilen über


Clusterkonfiguration verwalten

Wichtig

Diese Funktion steht derzeit als Vorschau zur Verfügung. Die zusätzlichen Nutzungsbedingungen für Microsoft Azure-Vorschauen enthalten weitere rechtliche Bestimmungen, die für Azure-Features in Betaversionen, in Vorschauversionen oder anderen Versionen gelten, die noch nicht allgemein verfügbar gemacht wurden. Informationen zu dieser spezifischen Vorschau finden Sie unter Informationen zur Vorschau von Azure HDInsight on AKS. Bei Fragen oder Funktionsvorschlägen senden Sie eine Anfrage an AskHDInsight mit den entsprechenden Details, und folgen Sie uns für weitere Updates in der Azure HDInsight-Community.

HDInsight on AKS ermöglicht es Ihnen, die Konfigurationseigenschaften zu optimieren, um die Leistung Ihres Clusters mit bestimmten Einstellungen zu verbessern. Beispielsweise Nutzungs- oder Speichereinstellungen. Sie können die folgenden Aktionen ausführen:

  • Aktualisieren Sie die vorhandenen Konfigurationen, oder fügen Sie neue Konfigurationen hinzu.
  • Exportieren Sie die Konfigurationen mithilfe der REST-API.

Anpassen von Konfigurationen

Sie können Konfigurationen mithilfe der folgenden Optionen anpassen:

Über das Azure-Portal

  1. Melden Sie sich beim Azure-Portal an.

  2. Geben Sie in die Suchleiste des Azure-Portals den Suchbegriff „HDInsight on AKS-Cluster“ ein, und wählen Sie in der Dropdownliste „Azure HDInsight on AKS-Cluster“ aus.

    Screenshot: Suchoption für die ersten Schritte mit einem HDInsight on AKS-Cluster

  3. Wählen Sie auf der Seite mit der Liste den Namen Ihres Clusters aus.

    Screenshot: Auswählen des benötigten HDInsight on AKS-Clusters in der Liste

  4. Wechseln Sie im linken Menü zum Blatt „Konfigurationsverwaltung“.

    Screenshot: Registerkarte „Konfigurationsverwaltung“

  5. Je nach Clustertyp werden Konfigurationsdateien aufgelistet. Weitere Informationen finden Sie bei Trino, Flink und Spark Konfigurationen.

  6. Fügen Sie das Schlüsselwert-Paar hinzu, oder aktualisieren Sie es für die Konfigurationen, die Sie ändern möchten.

  7. Wählen Sie OK aus und klicken Sie dann auf Speichern.

Hinweis

Einige Konfigurationsänderungen benötigen möglicherweise einen Neustart des Dienstes, um die Änderungen widerzuspiegeln.

Per ARM-Vorlage

Voraussetzungen

In der ARM-Vorlage können Sie serviceConfigsProfiles bearbeiten und den Namen der OSS-Konfigurationsdatei mit dem Wert angeben, den Sie überschreiben möchten.

Wenn sich die OSS-Konfigurationsdatei im JSON/XML/YAML-Format befindet, können Sie den OSS-Konfigurationsdateinamen über fileName angeben. Geben Sie die Schlüsselwertpaare an, die Sie in „Werte“ überschreiben möchten.

Hier sind einige Beispiele für jede Workload:

Flink-Konfigurationsbeispiel:

 "serviceConfigsProfiles": [
                {
                    "serviceName": "flink-operator",
                    "configs": [
                        {
                            "component": "flink-configs",
                            "files": [
                                {
                                    "fileName": "flink-conf.yaml",
                                    "values": {
                                        "taskmanager.memory.process.size": "4096mb",
                                        "classloader.check-leaked-classloader": "false",
                                        "jobmanager.memory.process.size": "4096mb",
                                        "classloader.parent-first-patterns.additional": "org.apache.parquet"
                                    }
                                }
                            ]
                        }
                    ]
                }
            ]

Spark-Konfigurationsbeispiel:

  "serviceConfigsProfiles": [
                {
                    "serviceName": "spark-service",
                    "configs": [
                        {
                            "component": "livy-config",
                            "files": [
                                {
                                    "fileName": "livy-client.conf",
                                    "values": {
                                        "livy.client.http.connection.timeout": "11s"
                                    }
                                }
                            ]
                        },
                        {
                            "component": "spark-config",
                            "files": [
                                {
                                    "fileName": "spark-env.sh",
                                    "content": "# - SPARK_HISTORY_OPTS, to set config properties only for the history server (e.g. \"-Dx=y\")\nexport HDP_VERSION=3.3.3.5.2-83515052\n"
                                }
                            ]
                        }
                    ]
                }
          ]

Trino-Konfigurationsbeispiel:

 "serviceConfigsProfiles": [
                {
                    "serviceName": "trino",
                    "configs": [
                        {
                            "component": "coordinator",
                            "files": [
                                {
                                    "fileName": "config.properties",
                                    "values": {
                                        "query.cache.enabled": "true",
                                        "query.cache.ttl": "1h",
                                        "query.enable-multi-statement-set-session": "true",
                                        "query.max-memory": "301GB"
                                    }
                                },
                                {
                                    "fileName": "log.properties",
                                    "values": {
                                        "io.trino": "INFO"
                                    }
                                }
                            ]
                        }
          ]

Weitere Informationen zu den Trino-Konfigurationsoptionen finden Sie in den ARM-Beispielvorlagen.

Exportieren Sie die Konfigurationen mithilfe der REST-API

Sie können auch Clusterkonfigurationen exportieren, um die Standardwerte und die aktualisierten Werte zu überprüfen. Derzeit können Sie Konfigurationen nur über die REST-API exportieren.

Clusterkonfigurationen abrufen:

GET Request: /subscriptions/{{USER_SUB}}/resourceGroups/{{USER_RG}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSTERPOOL}}/clusters/{{CLUSTERNAME}}/serviceConfigs?api-version={{HDINSIGHTONAKS_API_VERSION}}

Wenn Sie nicht mit dem Senden eines REST-API-Aufrufs vertraut sind, können Ihnen die folgenden Schritte helfen.

  1. Klicken Sie oben rechts im Azure-Portal auf die folgende Schaltfläche, um Azure Cloud Shell zu starten.

    Screenshot: Cloud Shell-Symbol

  2. Stellen Sie sicher, dass Cloud Shell oben links auf „PowerShell“ gestellt ist. Führen Sie den folgenden Befehl aus, um Token abzurufen und HTTP-Anforderungsheader festzulegen.

    $azContext = Get-AzContext
    $azProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile
    
    $profileClient = New-Object -TypeName Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient -ArgumentList ($azProfile)
    $token = $profileClient.AcquireAccessToken($azContext.Subscription.TenantId)
    $authHeader = @{
        'Content-Type'='application/json'
        'Authorization'='Bearer ' + $token.AccessToken
    }
    
  3. Legen Sie die variable $restUri als Ihre Get-Anfrage-URL fest.

    $restUri = 
    'https://management.azure.com/subscriptions/{{USER_SUB}}/resourceGroups/{{USER_RG}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSTERPOOL}}/clusters/{{CLUSTERNAME}}/serviceConfigs?api-version={{HDINSIGHTONAKS_API_VERSION}}'
    

    Beispiel: $restUri = 'https://management.azure.com/subscriptions/xxx-yyyy-zzz-00000/resourceGroups/contosoRG/providers/Microsoft.HDInsight/clusterpools/contosopool/clusters/contosocluster/serviceConfigs?api-version=2021-09-15-preview

    Hinweis

    Sie können die Ressourcen-ID und die aktuelle API-Version aus der „JSON-Ansicht“ Ihres Clusters im Azure-Portal abrufen.

    Screenshot: Anzeige der Schaltflächen in „JSON-Ansicht“

  4. Senden Sie die GET-Anfrage, indem Sie den folgenden Befehl ausführen.

    Invoke-RestMethod -Uri $restUri -Method Get -Headers $authHeader | ConvertTo-Json -Depth 10