Freigeben über


Trino-Konfigurationsverwaltung

Wichtig

Azure HDInsight auf AKS wurde am 31. Januar 2025 eingestellt. Erfahren Sie mehr in dieser Ankündigung.

Sie müssen Ihre Workloads zu Microsoft Fabric oder ein gleichwertiges Azure-Produkt migrieren, um eine abrupte Beendigung Ihrer Workloads zu vermeiden.

Wichtig

Dieses Feature befindet sich derzeit in der Vorschau. Die zusätzlichen Nutzungsbedingungen für Microsoft Azure Previews weitere rechtliche Bestimmungen enthalten, die für Azure-Features gelten, die in der Betaversion, in der Vorschau oder auf andere Weise noch nicht in die allgemeine Verfügbarkeit veröffentlicht werden. Informationen zu dieser spezifischen Vorschau finden Sie unter Azure HDInsight auf AKS-Vorschauinformationen. Für Fragen oder Featurevorschläge senden Sie bitte eine Anfrage an AskHDInsight mit den Details und folgen Sie uns, um weitere Updates zu Azure HDInsight Community.

Trino-Cluster mit HDInsight auf AKS kommt mit den meisten der Standardkonfigurationen des Open-Source-Trino. In diesem Artikel wird beschrieben, wie Konfigurationsdateien aktualisiert und dem Cluster eigene zusätzliche Konfigurationsdateien hinzugefügt werden.

Sie können die Konfigurationen auf zwei Arten hinzufügen/aktualisieren:

Anmerkung

Trino mit HDInsight auf AKS erzwingt bestimmte Konfigurationen und verbietet änderungen einiger Dateien und/oder Eigenschaften. Dies geschieht, um eine ordnungsgemäße Sicherheit/Konnektivität über die Konfiguration sicherzustellen. Beispiel für unzulässige Dateien/Eigenschaften beinhaltet, aber nicht darauf beschränkt ist:

  • jvm.config Datei mit Ausnahme der Heap-Größeneinstellungen.
  • Node.properties: node.id, node.data-dir, log.path usw.
  • Config.properties: http-server.authentication.*, http-server.https.* etc.

Verwenden des Azure-Portals

Im Azure-Portal können Sie drei Sätze von Standardkonfigurationen Trino-Konfigurationenändern:

  • log.properties
  • config.properties
  • Knoten.Eigenschaften

Führen Sie die Schritte aus, um die Konfigurationen zu ändern:

  1. Melden Sie sich beim Azure-Portalan.

  2. Geben Sie in der Azure-Portalsuchleiste "HDInsight auf AKS-Clustern" ein, und wählen Sie in der Dropdownliste "Azure HDInsight auf AKS-Clustern" aus.

    Screenshot mit der Suchoption für die ersten Schritte mit HDInsight auf AKS Cluster.

  3. Wählen Sie ihren Clusternamen auf der Listenseite aus.

    Screenshot, der die Auswahl des erforderlichen HDInsight auf dem AKS-Cluster aus der Liste zeigt.

  4. Navigieren Sie zum Blatt "Konfigurationsverwaltung".

    Screenshot der Azure-Portalkonfigurationsverwaltung.

  5. Fügen Sie neue Oder aktualisieren Sie die vorhandenen Schlüsselwertpaare für die Konfigurationen, die Sie ändern möchten. Beispiel: config.properties –> Benutzerdefinierte Konfigurationen –> klicken Sie auf "Hinzufügen", um neue Konfigurationseinstellung hinzuzufügen, und klicken Sie dann auf "OK".

    Screenshot mit benutzerdefinierter Konfiguration.

  6. Klicken Sie auf "Speichern", um die Konfigurationen zu speichern.

    Screenshot, der zeigt, wie die Konfiguration gespeichert wird.

Verwenden der ARM-Vorlage

Voraussetzungen

Clusterverwaltung

Alle Trino-Konfigurationen können in serviceConfigsProfiles.serviceName[“trino”] unter properties.clusterProfileangegeben werden.

Das folgende Beispiel konzentriert sich auf coordinator/worker/miscfiles. Kataloge finden Sie unter Hinzufügen von Katalogen zu einem vorhandenen Cluster:

"serviceConfigsProfiles": [
    {
        "serviceName": "trino",
        "configs": [
            {
                "component": "catalogs",
                "files": [<file-spec>,…]
            },
            {
                "component": "coordinator",
                "files": [<file-spec>,…]
            },
            {
                "component": "worker",
                "files": [<file-spec>,…]
            },
            {
                "component": " miscfiles",
                "files": [<file-spec>,…]
            },
        ]
    }
]

Es gibt mehrere Komponenten, die verschiedene Konfigurationsaspekte steuern:

Komponentenname Erforderliche/zulässige Eigenschaften für jede Dateispezifikation Beschreibung
häufig filename, values Enthält Konfigurationsdateien für Koordinator und Worker.
Koordinator filename, values Enthält Konfigurationsdateien nur für den Koordinator, überschreibt die allgemeinen, falls vorhanden.
Arbeiter filename, values Enthält nur Konfigurationsdateien für Worker, überschreibt gemeinsame Dateien, falls vorhanden.
miscfiles filename, content Enthält verschiedene Konfigurationsdateien, die vom Benutzer für den gesamten Cluster bereitgestellt werden.
kataloge filename, entweder Inhalt oder Werte Enthält Katalogdateien für den gesamten Cluster.

Das folgende Beispiel veranschaulicht:

  • Überschreiben Sie die Standardkonfiguration von node.environment für den Cluster (wird in der Trino-Benutzeroberfläche angezeigt).
  • Setzen Sie die Standardwerte der Datei config.properties für den Coordinator und Worker außer Kraft.
  • Fügen Sie das Beispiel-JSON für Ressourcengruppen hinzu und konfigurieren Sie den Koordinator, damit er es verwendet.
"serviceConfigsProfiles": [
    {
        "serviceName": "trino",
        "configs": [
            {
                "component": "common",
                "files": [
                    {
                        "fileName": "node.properties",
                        "values": {
                            "node.environment": "preview"
                        }
                    },
                    {
                        "fileName": "config.properties",
                        "values": {
                            "join-distribution-type": "AUTOMATIC",
                            "query.max-execution-time": "5d",
                            "shutdown.grace-period": "5m"
                        }
                    }
                ]                
            },
            {
                "component": "coordinator",
                "files": [
                    {
                        "fileName": "resource-groups.properties",
                        "values": {
                            "resource-groups.configuration-manager": "file",
                            "resource-groups.config-file": "${MISC:resource-groups}"
                        }                                            
                    }
                ]
            },
            {
                "component": "miscfiles",
                "files": [
                    {
                        "fileName": "resource-groups",
                        "path": "/customDir/resource-groups.json",
                        "content": "{\"rootGroups\":[{\"name\":\"global\",\"softMemoryLimit\":\"80%\",\"hardConcurrencyLimit\":100,\"maxQueued\":1000,\"schedulingPolicy\":\"weighted\",\"jmxExport\":true,\"subGroups\":[{\"name\":\"data_definition\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":5,\"maxQueued\":100,\"schedulingWeight\":1},{\"name\":\"adhoc\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":50,\"maxQueued\":1,\"schedulingWeight\":10,\"subGroups\":[{\"name\":\"other\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":2,\"maxQueued\":1,\"schedulingWeight\":10,\"schedulingPolicy\":\"weighted_fair\",\"subGroups\":[{\"name\":\"${USER}\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":1,\"maxQueued\":100}]}]}]},{\"name\":\"admin\",\"softMemoryLimit\":\"100%\",\"hardConcurrencyLimit\":50,\"maxQueued\":100,\"schedulingPolicy\":\"query_priority\",\"jmxExport\":true}],\"selectors\":[{\"group\":\"global.adhoc.other.${USER}\"}],\"cpuQuotaPeriod\":\"1h\"}"
                    }
                ]
            }
        ]
    }

Stellen Sie die aktualisierte ARM-Vorlage bereit, um die Änderungen in Ihrem Cluster widerzuspiegeln. Erfahren Sie, wie Sie eine ARM-Vorlagebereitstellen.