Share via


Trino-configuratiebeheer

Belangrijk

Deze functie is momenteel beschikbaar in preview. De aanvullende gebruiksvoorwaarden voor Microsoft Azure Previews bevatten meer juridische voorwaarden die van toepassing zijn op Azure-functies die bèta, in preview of anderszins nog niet beschikbaar zijn in algemene beschikbaarheid. Zie Azure HDInsight op AKS Preview-informatie voor meer informatie over deze specifieke preview. Voor vragen of suggesties voor functies dient u een aanvraag in op AskHDInsight met de details en volgt u ons voor meer updates in de Azure HDInsight-community.

Trino-cluster met HDInsight op AKS wordt geleverd met de meeste standaardconfiguraties van opensource Trino. In dit artikel wordt beschreven hoe u configuratiebestanden bijwerkt en uw eigen aanvullende configuratiebestanden toevoegt aan het cluster.

U kunt de configuraties op twee manieren toevoegen/bijwerken:

Notitie

Trino met HDInsight op AKS dwingt bepaalde configuraties af en verbiedt het wijzigen van sommige bestanden en/of eigenschappen. Dit wordt gedaan om de juiste beveiliging/connectiviteit te garanderen via de configuratie. Voorbeeld van verboden bestanden/eigenschappen omvat, maar is niet beperkt tot:

  • jvm.config-bestand met uitzondering van heap-grootte-instellingen.
  • Node.properties: node.id, node.data-dir, log.path enzovoort.
  • Config.properties: http-server.authentication.*, http-server.https.* etc.

Azure-portal gebruiken

In Azure Portal kunt u drie sets met standaard Trino-configuraties wijzigen:

  • log.properties
  • config.properties
  • node.properties

Volg de stappen om de configuraties te wijzigen:

  1. Meld u aan bij de Azure-portal.

  2. Typ 'HDInsight in AKS-cluster' in de zoekbalk van Azure Portal en selecteer 'Azure HDInsight op AKS-clusters' in de vervolgkeuzelijst.

    Schermopname van de zoekoptie om aan de slag te gaan met HDInsight in een AKS-cluster.

  3. Selecteer de clusternaam op de lijstpagina.

    Schermopname van het selecteren van HDInsight in AKS-cluster dat u nodig hebt in de lijst.

  4. Navigeer naar de blade Configuratiebeheer.

    Schermopname van configuratiebeheer in Azure Portal.

  5. Voeg nieuwe sleutel-waardeparen toe of werk de bestaande sleutelwaardeparen bij voor de configuraties die u wilt wijzigen. Bijvoorbeeld config.properties -> Aangepaste configuraties :> klik op Toevoegen om een nieuwe configuratie-instelling toe te voegen en klik vervolgens op OK.

    Schermopname van aangepaste configuratie.

  6. Klik op Opslaan om de configuraties op te slaan.

    Schermopname die laat zien hoe u de configuratie opslaat.

ARM-sjabloon gebruiken

Vereisten

Clusterbeheer

Alle Trino-configuraties kunnen worden opgegeven onder serviceConfigsProfiles.serviceName[“trino”]properties.clusterProfile.

Het volgende voorbeeld is gericht op coordinator/worker/miscfiles. Zie Catalogi toevoegen aan een bestaand cluster voor catalogi:

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

Er zijn verschillende onderdelen die verschillende configuratieaspecten beheren:

Componentnaam Vereiste/toegestane eigenschappen voor elke bestandsspecificatie Beschrijving
common filename, values Bevat configuratiebestanden voor zowel coördinator als werkrol.
Coördinator filename, values Bevat alleen configuratiebestanden voor coördinator, overschrijft algemene indien aanwezig.
Werknemer filename, values Bevat alleen configuratiebestanden voor werkrollen, overschrijft algemene indien aanwezig.
miscfiles filename, content Bevat diverse configuratiebestanden die door de gebruiker worden geleverd voor het hele cluster.
Catalogi filename, inhoud of waarden Bevat catalogusbestanden voor het hele cluster.

In het volgende voorbeeld ziet u:

  • Overschrijf de standaard node.environment voor het cluster (weergegeven in de Trino-gebruikersinterface).
  • Overschrijf standaardwaarden voor config.properties voor coördinator en werkrol.
  • Voeg json-voorbeeldresourcegroepen toe en configureer coördinator om deze te gebruiken.
"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\"}"
                    }
                ]
            }
        ]
    }

Implementeer de bijgewerkte ARM-sjabloon om de wijzigingen in uw cluster weer te geven. Meer informatie over het implementeren van een ARM-sjabloon.