Compartir a través de


Administración de configuración de Trino

Nota:

Retiraremos Azure HDInsight en AKS el 31 de enero de 2025. Antes del 31 de enero de 2025, deberá migrar las cargas de trabajo a Microsoft Fabric o un producto equivalente de Azure para evitar la terminación repentina de las cargas de trabajo. Los clústeres restantes de la suscripción se detendrán y quitarán del host.

Solo el soporte técnico básico estará disponible hasta la fecha de retirada.

Importante

Esta funcionalidad actualmente está en su versión preliminar. En Términos de uso complementarios para las versiones preliminares de Microsoft Azure encontrará más términos legales que se aplican a las características de Azure que están en versión beta, en versión preliminar, o que todavía no se han lanzado con disponibilidad general. Para más información sobre esta versión preliminar específica, consulte la Información de Azure HDInsight sobre la versión preliminar de AKS. Para plantear preguntas o sugerencias sobre la característica, envíe una solicitud en AskHDInsight con los detalles y síganos para obtener más actualizaciones sobre Comunidad de Azure HDInsight.

El clúster de Trino con HDInsight en AKS incluye la mayoría de las configuraciones predeterminadas de Trino de código abierto. En este artículo se describe cómo actualizar los archivos de configuración y se agregan sus propios archivos de configuración complementarios al clúster.

Puede agregar o actualizar las configuraciones de dos maneras:

Nota:

Trino con HDInsight en AKS aplica ciertas configuraciones y prohíbe la modificación de algunos archivos o propiedades. Esto se hace para garantizar la seguridad y la conectividad adecuadas a través de la configuración. El ejemplo de archivos o propiedades prohibidos incluye, pero no se limita a:

  • Archivo jvm.config con la excepción de la configuración del tamaño del montón.
  • Node.properties: node.id, node.data-dir, log.path, etc.
  • Config.properties: http-server.authentication.*, http-server.https.* etc.

Mediante Azure Portal

En Azure Portal, puede modificar tres conjuntos de configuraciones de Trino estándares:

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

Siga los pasos para modificar las configuraciones:

  1. Inicie sesión en Azure Portal.

  2. En la barra de búsqueda de Azure Portal, escriba "clúster de HDInsight en AKS" y seleccione "clústeres de Azure HDInsight en AKS" en la lista desplegable.

    Captura de pantalla que muestra la opción de búsqueda para empezar a trabajar con el clúster de HDInsight en AKS.

  3. Seleccione el nombre del clúster en la página de la lista.

    Captura de pantalla que muestra la selección del clúster de HDInsight en AKS que necesita en la lista.

  4. Vaya a la hoja "Administración de configuración".

    Captura de pantalla que muestra la administración de la configuración de Azure Portal.

  5. Agregue nuevos o actualice los pares de valores de clave existentes para las configuraciones que desea modificar. Por ejemplo, config.properties -> Configuraciones personalizadas -> haga clic en "Agregar" para agregar una nueva configuración y, a continuación, haga clic en Aceptar.

    Captura de pantalla que muestra la configuración personalizada.

  6. Haga clic en "Guardar" para guardar las configuraciones.

    Captura de pantalla que muestra cómo guardar la configuración.

Uso de una plantilla de Resource Manager

Requisitos previos

Administración de clústeres

Todas las configuraciones de Trino se pueden especificar en serviceConfigsProfiles.serviceName[“trino”] en properties.clusterProfile.

El ejemplo siguiente se centra en coordinator/worker/miscfiles. Para ver los catálogos, consulte Agregar catálogos a un clúster existente:

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

Hay varios componentes que controlan diferentes aspectos de configuración:

Nombre del componente Propiedades requeridas o permitidas para cada especificación de archivo Descripción
common filename, values Contiene archivos de configuración para el coordinador y el trabajo.
coordinador filename, values Contiene archivos de configuración solo para el coordinador, invalida común si está presente.
Worker filename, values Contiene solo archivos de configuración para los trabajos, invalida común si está presente.
miscfiles filename, content Contiene archivos de configuración varios proporcionados por el usuario para todo el clúster.
catalogs filename, ya sea contenido o valores Contiene archivos de catálogo para todo el clúster.

En el siguiente ejemplo se muestra:

  • Invalide node.environment predeterminado para el clúster (que se muestra en la interfaz de usuario de Trino).
  • Invalide los valores de config.properties predeterminados para el coordinador y el trabajo.
  • Agregue grupos de recursos de ejemplo json y configure el coordinador para usarlo.
"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\"}"
                    }
                ]
            }
        ]
    }

Implemente la plantilla de ARM actualizada para reflejar los cambios en el clúster. Obtenga información sobre cómo implementar una plantilla de ARM.