Compartilhar via


Gerenciamento de configuração do Trino

Importante

O Azure HDInsight no AKS se aposentou em 31 de janeiro de 2025. Saiba mais com este comunicado.

Você precisa migrar suas cargas de trabalho para microsoft fabric ou um produto equivalente do Azure para evitar o encerramento abrupto de suas cargas de trabalho.

Importante

Esse recurso está atualmente em versão prévia. Os termos de uso complementares para o Microsoft Azure Previews incluem mais termos legais que se aplicam aos recursos do Azure que estão em versão beta, em versão prévia ou ainda não lançados em disponibilidade geral. Para obter informações sobre essa versão prévia específica, consulte Azure HDInsight em informações de visualização do AKS. Para perguntas ou sugestões de recursos, envie uma solicitação no AskHDInsight com os detalhes e siga-nos para mais atualizações na Comunidade do Azure HDInsight .

O cluster Trino com HDInsight no AKS vem com a maioria das configurações padrão do Trino de software livre. Este artigo descreve como atualizar arquivos de configuração e adiciona seus próprios arquivos de configuração complementares ao cluster.

Você pode adicionar/atualizar as configurações de duas maneiras:

Nota

O Trino com HDInsight no AKS impõe determinadas configurações e proíbe a modificação de alguns arquivos e/ou propriedades. Isso é feito para garantir a segurança/conectividade adequada por meio da configuração. O exemplo de arquivos/propriedades proibidos inclui, mas não se limita a:

  • arquivo jvm.config, exceto pelas configurações de tamanho do heap.
  • Node.properties: node.id, node.data-dir, log.path etc.
  • Config.properties: http-server.authentication.*, http-server.https.* etc.

Usando o portal do Azure

No portal do Azure, você pode modificar três conjuntos de configurações padrão do Trino:

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

Siga as etapas para modificar as configurações:

  1. Faça login no portal do Azure.

  2. Na barra de pesquisa do portal do Azure, digite "HDInsight no cluster do AKS" e selecione "Azure HDInsight em clusters AKS" na lista suspensa.

    Captura de tela mostrando a opção de pesquisa para começar a usar o HDInsight no cluster do AKS.

  3. Selecione o nome do cluster na página de lista.

    Captura de tela mostrando a seleção do HDInsight no cluster do AKS que você requer na lista.

  4. Navegue até a folha "Gerenciamento de Configuração".

    Captura de tela mostrando o gerenciamento de configuração do portal do Azure.

  5. Adicione novos ou atualize os pares de valores de chave existentes para as configurações que você deseja modificar. Por exemplo, config.properties -> Configurações personalizadas -> clique em "Adicionar" para adicionar nova configuração e clique em Ok.

    Captura de tela mostrando a configuração personalizada.

  6. Clique em "Salvar" para salvar as configurações.

    Captura de tela mostrando como salvar a configuração.

Usando o modelo do ARM

Pré-requisitos

  • Um cluster operacional do Trino com HDInsight no AKS.
  • Crie modelo do ARM para seu cluster.
  • Revise o exemplo completo de template ARM do cluster .
  • Familiaridade com de criação e implantação de modelo do ARM.

Gerenciamento de cluster

Todas as configurações do Trino podem ser especificadas em serviceConfigsProfiles.serviceName[“trino”] sob properties.clusterProfile.

O exemplo a seguir se concentra em coordinator/worker/miscfiles. Para catálogos, consulte Adicionar catálogos a um cluster 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>,…]
            },
        ]
    }
]

Há vários componentes que controlam diferentes aspectos de configuração:

Nome do componente Propriedades necessárias/permitidas para cada especificação de arquivo Descrição
comum filename, values Contém arquivos de configuração para o coordenador e o trabalhador.
Coordenador filename, values Contém arquivos de configuração somente para o coordenador, os quais substituem os comuns, se estes estiverem presentes.
trabalhador filename, values Contém arquivos de configuração somente para trabalhadores, substitui o comum se presente.
miscfiles filename, content Contém diversos arquivos de configuração fornecidos pelo usuário para todo o cluster.
Catálogos filename, conteúdo ou valores Contém arquivos de catálogo para todo o cluster.

O exemplo a seguir demonstra:

  • Substitua o node.environment padrão do cluster (exibido na UI do Trino).
  • Substitua os valores padrão de config.properties para coordenador e trabalhador.
  • Adicione um exemplo de grupos de recursos no JSON e configure o coordenador para usá-lo.
"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\"}"
                    }
                ]
            }
        ]
    }

Implante o modelo do ARM atualizado para refletir as alterações em seu cluster. Saiba como implantar um template ARM.