Omitir para ir al contenido principal
  • Hacer pedidos rápida y fácilmente
  • Ver pedidos y realizar seguimiento al estado del envío
  • Cree y acceda a una lista de sus productos
  • Administre sus sitios, productos y contactos de nivel de producto de Dell EMC con Administración de la empresa.

Isilon: Configuração automatizada do Kerberos no Ambari com Isilon

Resumen: Este artigo orienta você sobre como configurar a segurança do Kerberos com um cluster do Hadoop gerenciado pelo Ambari.

Es posible que este artículo se traduzca automáticamente. Si tiene comentarios sobre su calidad, háganoslo saber mediante el formulario en la parte inferior de esta página.

Contenido del artículo


Síntomas

n/d

Causa

n/d

Resolución

Nota: Este tópico faz parte do Using Hadoop with OneFS - Isilon Info Hub.

Este artigo descreve como configurar a segurança do Kerberos com um cluster do Hadoop gerenciado pelo Ambari.

O Kerberos é central para autenticação e criptografia sólidas para Hadoop, mas pode ser um desafio para configurar e administrar. O Ambari 2.0 introduziu a configuração automatizada do Kerberos orientada por assistente, o que torna o processo muito mais rápido e menos propenso a erros. A partir do OneFS 8.0.0.1, os clientes do Dell EMC Isilon podem aproveitar esse excelente recurso.


Pré-requisitos

  • OneFS 8.0.0.1 ou superior.
  • Ambari 2.0 ou superior.
  • KDC do MIT em execução (não há suporte para heimdal). Siga as etapas aqui para configurar sua infraestrutura Kerberos.
  • Avançar e inverter o DNS entre todos os hosts.
  • Todos os serviços estão em execução (verde) no painel de controle do Ambari.

Habilitar Kerberos

Pré-configuração

Antes de iniciar o assistente, você deve definir duas configurações e reiniciar todos os serviços.
  • No HDFS - Definição> personalizada do core-site "hadoop.security.token.service.use_ip" para "false"
  • No MapReduce2 —> o mapred-site avançado adiciona "'hadoop classpath':" ao início de "mapreduce.application.classpath". Observe os dois pontos e os backticks (mas não copie as aspas).

Introdução

Navegue até Admin -> Kerberos e pressione o botão "Enable Kerberos". Os títulos desta seção referem-se aos títulos das páginas do assistente Kerberos.

SLN319432_en_US__1i_isilon-1-habilitada

Selecione "Existing MIT KDC", certifique-se de que os pré-requisitos sejam atendidos e, em seguida, clique em "Next". Observe que o Isilon não usa Java e não precisa do JCE.

Configurar o client Kerberos/Instalar e testar o Kerberos

Preencha todas as informações do KDC e do servidor administrador. Na etapa 3 (Instalar e testar o client Kerberos), o servidor Ambari fará um teste de fumaça para garantir que você configurou o Kerberos corretamente.


SLN319432_en_US__2i_isilon-2-instalar


Configurar identidades/confirmar configuração

 a) UpNs (User Principals, principais de usuário) do Ambari

O Ambari cria os principais do usuário no formato $ -$ @$ e, em seguida, usa hadoop.security.auth_to_local em core-site.xml para mapear os principais em apenas $ no file system.

O Isilon não cumpre as regras de mapeamento, portanto, você deve remover o -$ de todos os principais na seção "Ambari Principals". O Isilon removerá o @$ , portanto, nenhum alias será necessário. Em um cluster do Ambari 2.2.1 que executa HDFS, YARN, MapReduce2, Tez, Hive, HBase, Pig, Sqoop, Oozie, Zookeeper, Falcon, Storm, Flume, Accumulo, Métricas do Ambari, Kafka, Park, Out, Slider e Spark, faça as seguintes modificações na guia "Geral":
  • Nome principal do Smokeuser: ${cluster-env/smokeuser}-$ @$ => ${cluster-env/smokeuser}@$
  • spark.history.kerberos.principal: ${spark-env/spark_user}-$ @$ => ${spark-env/spark_user}-@$
  • Nome principal do Storm: ${storm-env/storm_user}-$ @$ => ${storm-env/storm_user}-@$
  • Principal do usuário do HBase: ${hbase-env/hbase_user}-$ @$ => ${hbase-env/hbase_user}@$
  • Principal do usuário do HDFS: ${hadoop-env/hdfs_user}-$ @$ => ${hadoop-env/hdfs_user}@$
  • accumulo_principal_name: ${accumulo-env/accumulo_user}-$ @$ => ${accumulo-env/accumulo_user}@$
  • trace.user: tracer-$ @$ => tracer@$

SLN319432_en_US__3i_isilon-3 identidades

b) SpNs (Service Principals, principais de serviço)

O Ambari cria principais de serviço, alguns dos quais são diferentes dos nomes de usuário do UNIX. Novamente, como o Isilon não cumpre as regras de mapeamento, você deve modificar os nomes de principal para corresponder aos nomes de usuário do UNIX. No cluster do Ambari 2.2.1, faça as seguintes modificações na guia "Avançado":
  • HDFS -> dfs.namenode.kerberos.principal: nn/_HOST@$ => hdfs/_HOST@$
  • YARN -> yarn.resourcemanager.principal: rm/_HOST@$ => yarn/_HOST@$
  • YARN -> yarn.nodemanager.principal: nm/_HOST@$ => yarn/_HOST@$
  • MapReduce2 -> mapreduce.jobhistory.principal: jhs/_HOST@$ => mapred/_HOST@$
  • Falcon -> *.dfs.namenode.kerberos.principal: nn/_HOST@$ => hdfs/_HOST@$
 

SLN319432_en_US__4i_isilon-4 identidadesconfig


Depois de configurar os principais apropriados, pressione "Next". Na tela "Confirm Configuration", pressione "Next".

Interromper serviços/Kerberize Cluster

Os serviços de interrupção e kerberização devem ser bem-sucedidos.
 

SLN319432_en_US__5i_isilon-5 clusters


Não prossiga: O Isilon não permite que o Ambari crie keytabs para os principais do Isilon. Em vez disso, você deve configurar manualmente o Kerberos no Isilon usando as etapas abaixo.

a) Crie o KDC como um provedor de autenticação do Isilon

Nota: Se essa zona do Isilon já estiver configurada para usar seu KDC do MIT, ignore essas etapas.

isi auth krb5 create --realm=$REALM --admin-server=$admin_server --kdc=$kdc_server --user=$admin_principal --password=$admin_password
isi zone zones modify --zone=$isilon_zone --add-auth-provider=krb5:$REALM

b) Crie principais de serviço para HDFS e HTTP (para WebHDFS).

isi auth krb5 spn create --provider-name=$REALM --spn=hdfs/$isilon_smartconnect@$REALM --user=$admin_principal --password=$admin_password
isi auth krb5 spn create --provider-name=$REALM --spn=HTTP/$isilon_smartconnect@$REALM --user=$admin_principal --password=$admin_password

c) Crie todos os usuários de proxy necessários

Em clusters não protegidos, qualquer usuário pode representar qualquer outro usuário. Em clusters protegidos, os usuários de proxy precisam ser explicitamente especificados.
Se você tiver Hive ou Oozie, adicione os usuários de proxy apropriados.

isi hdfs proxyusers create oozie --zone=$isilon_zone --add-user=ambari-qa
isi hdfs proxyusers create hive --zone=$isilon_zone --add-user=ambari-qa

d) Desabilitar autenticação simples

Somente autenticação kerberos ou token de delegação é permitida.

isi hdfs settings modify --zone=$isilon_zone --authentication-mode=kerberos_only

Agora que o Isilon também está configurado, pressione "Next" no Ambari para passar para a última etapa do assistente.

Serviços de início e teste
 

SLN319432_en_US__6i_isilon-6-startservices

 

Se os serviços não iniciarem, aqui estão alguns truques para depurar problemas do Kerberos:
  1. Devido a um bug no YARN, você precisa definir o "yarn.resourcemanager.principal" como yarn/$rm_hostname@$REALM in YARN ->Custom yarn-site. A sintaxe "_HOST" não funciona com o Kerberos ativado.
  2. Para depurar erros do Java GSSAPI/Kerberos, adicione "-Dsun.security.krb5.debug=true" ao HADOOP_OPTS.
  3. Para erros HTTP 401, use curl with -iv para obter informações adicionais de depuração.
  4. Certifique-se de que o DNS reverso e de avanço esteja configurado entre todos os hosts.
(Opcional) Forte segurança de RPC

No HDFS — conjunto> personalizado de core-site "hadoop.rpc.protection" como "integridade" ou "privacidade". Além da autenticação, as mensagens de garantia de integridade não foram violadas e a privacidade criptografa todas as mensagens.

Execute um trabalho!

Em qualquer host de client, tente um trabalho MapReduce!

kinit <some-user> yarn jar /usr/hdp/current/hadoop-mapreduce-client/hadoop-mapreduce-examples.jar pi 1 1000
Job Finished in 37.635 seconds
Estimated value of Pi is 3.14800000000000000000
Congratulations--you have secured your cluster with Kerberos!

(Opcional) Desativar Kerberos

Limpar o Isilon

Você deve limpar o Isilon primeiro. Isso é essencialmente o inverso de habilitar o Kerberos.

a) Desabilite a autenticação Kerberos

isi hdfs settings modify --authentication-mode=simple_only --zone=$isilon_zone

b) Exclua todos os usuários de proxy

isi hdfs proxyusers delete oozie --zone=$isilon_zone
isi hdfs proxyusers delete hive --zone=$isilon_zone

c) Excluir principais

isi auth krb5 spn delete --provider-name=$REALM --spn=hdfs/$isilon_smartconnect@$REALM --all
isi auth krb5 spn delete --provider-name=$REALM --spn=HTTP/$isilon_smartconnect@$REALM --all

Observe que os comandos acima removem apenas os principais do Isilon, mas não os removam do Key Distribution Center. Use estes comandos para remover os principais do Isilon do Key Distribution Center:

kadmin -p $admin_principal
kadmin: delete_principal hdfs/$isilon_smartconnect@$REALM
kadmin: delete_principal HTTP/$isilon_smartconnect@$REALM

d) Remover o KDC como um provedor de autenticação do Isilon

isi zone zones modify --zone=$isilon_zone --remove-auth-provider=krb5:$REALM
isi auth krb5 delete --provider-name=$REALM

Limpar clients usando o Ambari

Pressione "Disable Kerberos" em Admin -> Kerberos. Todos os serviços devem ficar em verde.

Propiedades del artículo


Producto comprometido

Isilon, PowerScale OneFS, Isilon with HDFS

Fecha de la última publicación

14 set. 2023

Versión

5

Tipo de artículo

Solution