Apache Ranger™ e Ranger KMS
Este manual é um guia de instalação do Apache Ranger™ e Ranger KMS.
Este procedimento se aplica ao ambiente GHDP.
Pré-requisitos
Instale os pré-requisitos para o procedimento de build do Ranger.
Maven
Faça o download da última versão do Maven em Downloading Apache Maven ou:
cd /usr/local wget https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz tar -xvf apache-maven-<Version>-bin.tar.gzEdite o arquivo que carrega as variáveis de ambiente do GHDP:
vim /etc/profile.d/hadoop_setup.sh... # MAVEN (to Ranger) export M2_VERSION=$(ls -A /usr/local/ | grep apache-maven- | grep -v .gz | awk -F '-' '{print $3}') export M2_HOME=/usr/local/apache-maven-$M2_VERSION export M2=$M2_HOME/bin ...Verifique se a instalação ocorreu corretamente:
mvn -version
Outros requisitos
Instale os outros requisitos necessários:
Build do Ranger
Baixe o source do Ranger mais atualizado que se adeque à versão do seu OS e Java, no site oficial do Ranger ou:
Faça o build do Ranger utilizando o Maven:
Caso ocorra erro de acesso inseguro, por conta de certificado vencido em algum link de repositório, execute o build da seguinte forma:
Finalize o procedimento de build com o seguinte comando:
Ao final, será gerada uma pasta chamada
targetcom todos os componentes do Ranger.
Instalação do Solr
Acesse a pasta de build do Ranger, conforme efetuado no tópico anterior.
Dentro dessa pasta, acesse a pasta do instalador do Solr, em que ele será pré-configurado para uso do Ranger:
Crie a pasta do Solr conforme a versão escolhida:
Edite o arquivo
install.properties:Execute o script
setup.she verifique os procedimentos de start conforme indicado pelo log de instalação:Inicie o Solr:
Instalação e configuração do Ranger Admin
Crie a pasta do Ranger Admin:
Acesse a pasta
target, gerada no procedimento de build, e descompacte o arquivoranger-2.3.0-admin.tar.gz:Copie todos os arquivos dentro da pasta descompactada para a pasta
ranger-admin.No banco de dados, crie o usuário
rangerdbada seguinte forma:Caso não esteja instalado, instale o
mysql-connector-javae verifique se o arquivomysql-connector-java.jarestá na pasta correta:Crie a pasta de logs para o Ranger Admin:
Na pasta do Ranger Admin, edit o arquivo
install.properties:Execute o script de setup:
Adicione permissões para as pastas do Ranger e logs e adicione o usuário
rangerno grupohadoop.Para inicializar o Ranger Admin utilize o comando:
Acesse o link e digite o usuário
admine a senha pré-configurada.
Instalação do Ranger UserSync
Na pasta de build do Ranger, crie uma pasta para o Ranger UserSync chamada
ranger-usersync, descompacte o arquivotar.gzreferente à aplicação e copie todos os arquivos para a pasta criada:Crie a pasta de logs e conceda acesso ao usuário
rangeràs pastas/usr/gdp/hadoop/ranger/e/var/log/hadoop/ranger/:Na pasta
ranger-usersync, edite o arquivoinstall.propertiesda seguinte forma:Altere o path padrão da aplicação de
/etc/rangerpara/usr/gdp/hadoop/ranger/2.3.0/ranger-usersync/ranger:Execute o script
setup.sh:Altere a configuração para habilitar a sincronização do UserSync:
Após a instalação com resultado successfully, inicialize o serviço utilizando o script
ranger-usersync-services.sh:
Instalação de Plugins
HDFS Plugin
O HDFS Plugin deve ser instalado em todos os NameNodes.
Crie a pasta
ranger-hdfs-pluginconforme a estrutura do GHDP:Na pasta de build do Ranger, descompacte o arquivo
ranger-2.3.0-hdfs-plugin.tar.gze copie todos os arquivos para a pasta criada anteriormente:Na pasta do plugin, edite o arquivo
install.properties:Caso exista mais de um NameNode, crie a mesma estrutura de pastas e copie todo o conteúdo para os demais NameNodes com
scp:Esse procedimento deve ser realizado antes da habilitação do plugin.
Habilite o plugin executando o script
enable-hdfs-plugin.sh:Conecte no Ranger Admin UI. Na tela principal, em HDFS, clique no botão + e preencha os campos com as seguintes informações:
Service Name:
hadoopdevDisplay Name:
hadoopdevUsername:
hadoop(Usuário UNIX)Password:
<senha criada para o usuário hadoop no UNIX>NameNode URL:
hdfs://localhost:50070Authentication Type:
Simple
Mantenha o restante das configurações inalteradas e clique no botão Add.
Reinicie o cluster.
HBase Plugin
O HBase Plugin deve ser instalado em todos os hosts com Master e Regional.
Crie a pasta
ranger-hbase-pluginconforme a estrutura do GHDP.Na pasta de build do Ranger, descompacte o arquivo
ranger-2.3.0-hbase-plugin.tar.gze copie todos os arquivos para a pasta criada anteriormente:Na pasta do plugin, edite o arquivo
install.properties:Crie a mesma estrutura de pastas e copie todo o conteúdo para o Master e Regional:
Esse procedimento deve ser realizado antes da habilitação do plugin.
Crie um usuário
hbasee habilite o plugin executando o scriptenable-hbase-plugin.sh:Conecte no Ranger Admin UI. Na tela principal, em HDFS, clique no botão + e preencha os campos com as seguintes informações:
Service Name:
hadoopdevDisplay Name:
hadoopdevUsername:
hbase(Usuário UNIX)Password:
<senha criada para o usuário hbase no UNIX>hadoop.security.authentication:
Simplehbase.security.authentication:
Simplehbase.zookeeper.property.clientPort:
2181hbase.zookeeper.quorum:
,,zookeeper.znode.parent:
/hbase-unsecure
Mantenha o restante das configurações inalteradas e clique no botão Add.
Reinicie o cluster.
Kafka Plugin
O Kafka Plugin deve ser instalado em todos os hosts que possuem o componente instalado.
Crie a pasta
ranger-kafka-pluginconforme a estrutura do GHDP:Na pasta de build do Ranger, descompacte o arquivo
ranger-2.3.0-kafka-plugin.tar.gze copie todos os arquivos para a pasta criada anteriormente:Na pasta do plugin, edite o arquivo
install.properties:Crie a mesma estrutura de pastas e copie todo o conteúdo para os demais nodes:
Esse procedimento deve ser realizado antes da habilitação do plugin.
Crie um usuário
kafkae habilite o plugin executando o scriptenable-kafka-plugin.sh:Conecte no Ranger Admin UI. Na tela principal, em HDFS, clique no botão + e preencha os campos com as seguintes informações:
Service Name:
hadoopdevDisplay Name:
hadoopdevUsername:
hbase(Usuário UNIX)Password:
<senha criado para o usuário hbase no UNIX>hadoop.security.authentication:
Simplehbase.security.authentication:
Simplehbase.zookeeper.property.clientPort:
2181hbase.zookeeper.quorum:
,,zookeeper.znode.parent:
/hbase-unsecure
Mantenha o restante das configurações inalteradas e clique no botão Add.
Reinicie o cluster.
Instalação e Configuração do Ranger KMS
Instalação do Ranger KMS
Crie a pasta
ranger-kmsconforme a estrutura do GHDP:No servidor do MySQL, crie um usuário
rangerkmspara o gerenciamento da base feito pela a aplicação:Na pasta de build do Ranger, descompacte o Ranger KMS e copie todos os arquivos para a pasta criada anteriormente:
Crie a pasta de logs para o Ranger KMS:
Utilizando um gerador de senhas, crie uma senha com os seguintes parâmetros e guarde-a em um local confiável (ela será utilizada no passo seguinte):
16 caracteres
Letras maiúsculas
Letras minúsculas
Caracteres especiais.
Na pasta do Ranger KMS, edite o arquivo
install.propertiesadicionando configuração para Java Key Store (arquiva a master key em um arquivo no próprio servidor):Utilize a senha de 16 caracteres gerada no passo anterior como
KMS_MASTER_KEY_PASSWD. Por exemplo:$ZH1$Q8&ExUaTku8.
Configuração do Ranger KMS com Luna Cloud HSM
Antes de efetuar o setup do Ranger KMS, é necessário adicionar o LunaProvider no arquivo
java.security. Para isso, edite o arquivojava.security, que se encontra na pasta<JDK_installation_directory>/jre/lib/security, adicionando duas linhas no final: uma com o LunaProvider na sequência da lista de provedores,security.provider.10=com.safenetinc.luna.provider.LunaProvider, e uma com a configuração para que o Luna funcione,com.safenetinc.luna.provider.createExtractableKeys=true:Copie os arquivos
LunaProvider.jarelibLunaAPI.sopara a pasta<JDK_installation_directory/jre/lib/ext.Utilizando um gerador de senhas, crie uma senha com os seguintes parâmetros e guarde-a em um local confiável (ela será utilizada no passo seguinte):
16 caracteres
Letras maiúsculas
Letras minúsculas
Caracteres especiais.
Edite o arquivo
install.propertiespara o setup do Ranger KMS com o Luna Cloud HSM:Utilize a senha de 16 caracteres gerada no passo anterior como
KMS_MASTER_KEY_PASSWD. Por exemplo:$ZH1$Q8&ExUaTku8.Em todos o nodes, para que os datanodes acessem o KMS, edite o arquivo
core-site.xmlalterando o value da propriedadehadoop.security.key.provider.pathparakms://http@localhost:9292/kms:Reinicie o HDFS.
Conceda ao usuário
kmsas permissões para as pastas:Execute o script de setup, aguarde a finalização da instalação com a mensagem successfully e inicialize o Ranger KMS:
Se tudo ocorreu com sucesso, será possível acessar o painel do Ranger KMS por meio do endereço do Ranger Admin utilizando o usuário
keyadmine a senha definida no procedimento de instalação do Ranger Admin.Link:
http://<my_ip>:6080/User:
keyadminPassword:
<definida no install.properties durante o setup do Ranger Admin>
Entre no Ranger Admin UI com o usuário
admin, acesse Settings > Users/Groups/Roles. Na aba Users, clique no botão Add New User e crie os usuários:hivehdfsomhbase
Em seguida, faça logout e entre como
keyadminpara acessar o painel do Ranger KMS UI no Service KMS. Clique no botão + para criar o repositóriokmsdev, conforme as especificações abaixo:Service Name:
kmsdevKMS URL:
kms://http@:9292/kmsUsername:
keyadminPassword:
<senha definida no procedimento de instalação do Ranger Admin>
Na mesma tela, em Audit Filter, clique no botão + para adicionar uma ACL com as seguintes especificações:
Access Result:
ALLOWEDPermissions:
Select AllUsers:
keyadmin
Clique em Add. Em seguida, clique para editar o repositório
kmsdeve clique no botão Test Connection, para confirmar se todo o procedimento ocorreu corretamente.Reinicie o Ranger KMS:
Caso esteja utilizando o Luna Cloud HSM, verifique se houve a criação da master key. Para isso, execute o
lunacm:Ou:
Faça login com o role crypto officer:
Liste o conteúdo da partição para verificar se a master key foi criada com sucesso:
Exemplo de saída com a master key criada:
O arquivo de configuração do Ranger KMS, dbks-site.xml, se encontra em:
Ativar Load Balancer no Ranger KMS
Em um segundo servidor, realize todo o procedimento de instalação do Ranger KMS.
Caso esteja utilizando Luna Cloud HSM, siga as instruções do guia de instalação do Luna Cloud HSM contidas nos tópicos 1.1. Download do client e 1.2. Instalação do client no servidor para realizar a instalação do client. Não é necessário realizar os procedimentos de ativar slot, iniciar partição ou iniciar as roles, contidos nos tópicos posteriores do guia. Em seguida, siga rigorosamente as instruções de instalação e configuração do HSM com Ranger, porém tomando os cuidados descritos abaixo.
No passo 5 da configuração, em que é preciso alterar o arquivo
core-site.xmlpara que os datanodes acessem o KMS, prossiga da seguinte forma: abra o arquivo, encontre a propriedadehadoop.security.key.provider.pathe altere seu value dekms://http@localhost:9292/kmsparakms://http@host1;host2:9292/kms:Antes:
Depois:
Reinicie o HDFS:
Siga com a finalização do procedimento de configuração do Ranger KMS, a partir do passo 6.
Desinstalação do Ranger
Para desinstalar o Ranger, execute os seguintes comandos:
Atualizado
Isto foi útil?

