Trino-konfigurationshantering
Viktig
Azure HDInsight på AKS drogs tillbaka den 31 januari 2025. Läs mer med det här meddelandet.
Du måste migrera dina arbetsbelastningar till Microsoft Fabric- eller en motsvarande Azure-produkt för att undvika plötsliga uppsägningar av dina arbetsbelastningar.
Viktig
Den här funktionen är för närvarande i förhandsversion. De kompletterande användningsvillkoren för Förhandsversioner av Microsoft Azure innehåller fler juridiska villkor som gäller för Azure-funktioner som är i beta, förhandsgranskning eller annars ännu inte är tillgängliga i allmän tillgänglighet. Information om den här specifika förhandsversionen finns i Azure HDInsight på AKS-förhandsversionsinformation. Om du har frågor eller funktionsförslag skickar du en begäran om AskHDInsight- med informationen och följ oss för fler uppdateringar om Azure HDInsight Community.
Trino-kluster med HDInsight på AKS levereras med de flesta standardkonfigurationerna för Trino med öppen källkod. Den här artikeln beskriver hur du uppdaterar konfigurationsfiler och lägger till dina egna kompletterande konfigurationsfiler i klustret.
Du kan lägga till/uppdatera konfigurationerna på två sätt:
Not
Trino med HDInsight på AKS framtvingar vissa konfigurationer och förbjuder ändring av vissa filer och/eller egenskaper. Detta görs för att säkerställa korrekt säkerhet/anslutning via konfiguration. Exempel på förbjudna filer/egenskaper omfattar, men är inte begränsat till:
- jvm.config fil med undantag för inställningar för Heap-storlek.
- Node.properties: node.id, node.data-dir, log.path osv.
Config.properties: http-server.authentication.*, http-server.https.* etc.
Använda Azure-portalen
I Azure-portalen kan du ändra tre uppsättningar standardkonfigurationer Trino:
- log.properties
- config.properties
- node.properties
Följ stegen för att ändra konfigurationerna:
Logga in på Azure-portalen.
I sökfältet i Azure-portalen skriver du "HDInsight på AKS-kluster" och väljer "Azure HDInsight på AKS-kluster" i listrutan.
Välj klusternamnet på listsidan.
Gå till bladet Konfigurationshantering.
Lägg till nya eller uppdatera de befintliga nyckelvärdeparen för de konfigurationer som du vill ändra. Till exempel config.properties –> Anpassade konfigurationer –> klicka på Lägg till för att lägga till ny konfigurationsinställning och klicka sedan på Ok.
Klicka på Spara för att spara konfigurationerna.
Använda ARM-mall
Förutsättningar
- Ett fungerande Trino-kluster med HDInsight på AKS.
- Skapa ARM-mall för klustret.
- Granska det fullständiga exemplet på kluster ARM-mall.
- Kunskaper om ARM-mallredigering och distribution.
Klusterhantering
Alla Trino-konfigurationer kan anges i serviceConfigsProfiles.serviceName[“trino”]
under properties.clusterProfile
.
Följande exempel fokuserar på coordinator/worker/miscfiles
. För kataloger, se Lägga till kataloger i ett befintligt kluster:
"serviceConfigsProfiles": [
{
"serviceName": "trino",
"configs": [
{
"component": "catalogs",
"files": [<file-spec>,…]
},
{
"component": "coordinator",
"files": [<file-spec>,…]
},
{
"component": "worker",
"files": [<file-spec>,…]
},
{
"component": " miscfiles",
"files": [<file-spec>,…]
},
]
}
]
Det finns flera komponenter som styr olika konfigurationsaspekter:
Komponentnamn | Obligatoriska/tillåtna egenskaper för varje filspecifikation | Beskrivning |
---|---|---|
vanlig |
filename , values |
Innehåller konfigurationsfiler för både koordinator och arbetare. |
samordnare |
filename , values |
Innehåller endast konfigurationsfiler för koordinatorer, åsidosätter vanliga om de finns. |
arbetare |
filename , values |
Innehåller endast konfigurationsfiler för arbetare, åsidosättningar som är vanliga om de finns. |
miscfiles |
filename , content |
Innehåller diverse konfigurationsfiler som tillhandahålls av användaren för hela klustret. |
Kataloger |
filename , antingen innehåll eller värden |
Innehåller katalogfiler för hela klustret. |
Följande exempel visar:
- Åsidosätt standardnodens miljö för kluster (visas i Trino UI).
- Åsidosätt standardvärdena config.properties för koordinator och arbetare.
- Lägg till exempel resursgrupper json och konfigurera koordinatorn för att använda den.
"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\"}"
}
]
}
]
}
Distribuera den uppdaterade ARM-mallen för att återspegla ändringarna i klustret. Lär dig hur du distribuera en ARM-mall.