Plug-in Trino - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Plug-in Trino

O Trino (anteriormente PrestoSQL) é um mecanismo de SQL consulta que você pode usar para executar consultas em fontes de dados como armazenamento de objetosHDFS, bancos de dados relacionais e nenhum banco de dados. SQL Ele elimina a necessidade de migrar dados para um local central e permite que você consulte os dados de onde quer que estejam. EMRA Amazon fornece um plug-in Apache Ranger para fornecer controles de acesso refinados para o Trino. O plug-in é compatível com o servidor Apache Ranger Admin de código aberto versão 2.0 e posteriores.

Atributos compatíveis

O plug-in Apache Ranger para Trino na Amazon EMR oferece suporte a todas as funcionalidades do mecanismo de consulta Trino, que é protegido por um controle de acesso refinado. Isso inclui controles de acesso em nível de banco de dados, de tabela e de coluna, filtragem de linhas e mascaramento de dados. As políticas do Apache Ranger podem incluir políticas de concessão e políticas de negação para usuários e grupos. Os eventos de auditoria também são enviados aos CloudWatch registros.

Instalação da configuração de serviço

A instalação da definição de serviço Trino requer que o servidor Ranger Admin esteja configurado. Para configurar o servidor Ranger Admin, consulte Configurar o servidor do Ranger Admin.

Siga estas etapas para instalar a definição de serviço do Trino.

  1. SSHno servidor Apache Ranger Admin.

    ssh ec2-user@ip-xxx-xxx-xxx-xxx.ec2.internal

  2. Desinstale o plug-in do servidor Presto, se houver. Execute o seguinte comando . Se isso ocorrer com o erro “Serviço não encontrado”, significa que o plug-in do servidor Presto não foi instalado no servidor. Prossiga para a próxima etapa.

    curl -f -u *<admin users login>*:*_<_**_password_ **_for_** _ranger admin user_**_>_* -X DELETE -k 'https://*<RANGER SERVER ADDRESS>*:6182/service/public/v2/api/servicedef/name/presto'
  3. Baixe a definição de serviço e o plug-in do servidor Apache Ranger Admin. Em um diretório temporário, baixe a definição de serviço. Essa definição de serviço é compatível com as versões Ranger 2.x.

    wget https://s3.amazonaws.com/elasticmapreduce/ranger/service-definitions/version-2.0/ranger-servicedef-amazon-emr-trino.json
  4. Registre a definição do serviço Apache Trino para a Amazon. EMR

    curl -u *<admin users login>*:*_<_**_password_ **_for_** _ranger admin user_**_>_* -X POST -d @ranger-servicedef-amazon-emr-trino.json \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -k 'https://*<RANGER SERVER ADDRESS>*:6182/service/public/v2/api/servicedef'

    Se esse comando for executado com êxito, você verá um novo serviço na IU do Ranger Admin chamado TRINO, conforme mostrado na imagem.

    O Ranger Admin cria o serviço.
  5. Crie uma instância da aplicação TRINO, inserindo as informações a seguir.

    Nome do serviço: o nome do serviço que você usará. O valor sugerido é amazonemrtrino. Anote esse nome de serviço, pois ele será necessário ao criar uma configuração de EMR segurança da Amazon.

    Nome de exibição: o nome a ser exibido para a instância. O valor sugerido é amazonemrtrino.

    Nome de exibição do Ranger Admin.

    jdbc. driver. ClassName: O nome da JDBC classe para conectividade Trino. Você pode usar o valor padrão.

    jdbc.url: A string de JDBC conexão a ser usada ao se conectar ao coordenador Trino.

    Nome comum para certificado: o campo CN dentro do certificado usado para se conectar ao servidor de administração com base em um plug-in cliente. Esse valor deve corresponder ao campo CN em seu TLS certificado que foi criado para o plug-in.

    Nome comum do Ranger Admin.

    Observe que o TLS certificado desse plug-in deveria ter sido registrado no armazenamento confiável do servidor Ranger Admin. Para obter mais informações, consulte TLScertificados.

Criar políticas do Trino

Ao criar uma nova política, preencha os campos a seguir.

Nome da política: o nome da política.

Rótulo de política: um rótulo que você pode colocar na política.

Catálogo: o catálogo ao qual a política se aplica. O curinga “*” representa todos os catálogos.

Esquema: os esquemas aos quais a política se aplica. O curinga “*” representa todos os esquemas.

Tabela: as tabelas às quais a política se aplica. O caractere curinga “*” representa todas as tabelas.

Coluna: as colunas às quais a política se aplica. O caractere curinga “*” representa todas as colunas.

Descrição: uma descrição da política.

Existem outros tipos de políticas para o usuário Trino (para acesso à representação do usuário), a propriedade do sistema/sessão Trino (para alterar o sistema do mecanismo ou as propriedades da sessão), funções/procedimentos (para permitir chamadas de função ou procedimento) e URL(para conceder acesso de leitura/gravação ao mecanismo em locais de dados).

O Ranger Admin cria detalhes da política.

Para conceder permissões a usuários e grupos específicos, insira os usuários e grupos. Também é possível especificar exclusões para condições de permissão e negação.

Os detalhes da política do Ranger Admin permitem condições de negação.

Após especificar as condições de permitir e negar, escolha Salvar.

Considerações

Ao criar políticas do Trino no Apache Ranger, atente para algumas considerações sobre o uso.

Servidor de metadados Hive

O servidor de metadados Hive só pode ser acessado por mecanismos confiáveis, especificamente o mecanismo Trino, para proteção contra acesso não autorizado. O servidor de metadados Hive também é acessado por todos os nós do cluster. A porta 9083 necessária fornece acesso de todos os nós ao nó principal.

Autenticação

Por padrão, o Trino está configurado para se autenticar usando o Kerberos conforme configurado na configuração de segurança da Amazon. EMR

A criptografia em trânsito é obrigatória

O plug-in Trino exige que você tenha a criptografia em trânsito ativada na configuração de EMR segurança da Amazon. Para ativar a criptografia, consulte Criptografia em trânsito.

Limitações

Estas são as limitações atuais do plug-in Trino:

  • O servidor Ranger Admin não oferece suporte ao preenchimento automático.