Este artigo fornece respostas para algumas das perguntas mais comuns sobre como executar o Azure HDInsight.
Como criar ou excluir clusters HDInsight
Como fazer para provisionar um cluster HDInsight?
Para revisar os tipos de clusters HDInsight e os métodos de provisionamento, consulte Configurar clusters no HDInsight com Apache Hadoop, Apache Spark, Apache Kafka e muito mais.
Como excluir um cluster HDInsight existente?
Para saber mais sobre como excluir um cluster quando ele não estiver mais em uso, veja Excluir um cluster HDInsight.
Tente deixar, pelo menos, 30 a 60 minutos entre as operações de criação e exclusão. Caso contrário, a operação poderá falhar com a seguinte mensagem de erro:
Conflict (HTTP Status Code: 409) error when attempting to delete a cluster immediately after creation of a cluster. If you encounter this error, wait until the newly created cluster is in operational state before attempting to delete it.
Como selecionar o número correto de núcleos ou nós para minha carga de trabalho?
O número apropriado de núcleos e outras opções de configuração dependem de vários fatores.
Para obter mais informações, confira Planejamento de capacidade para clusters HDInsight.
Quais são os vários tipos de nós em um cluster HDInsight?
Quais são as melhores práticas para a criação de clusters HDInsight grandes?
- Recomenda-se configurar clusters HDInsight com um BD Ambari personalizado para melhorar a escalabilidade do cluster.
- Use o Azure data Lake Storage Gen2 para criar clusters HDInsight para aproveitar a maior largura de banda e outras características de desempenho do Azure Data Lake Storage Gen2.
- Os nós principais devem ser suficientemente grandes para acomodar vários serviços mestres em execução nesses nós.
- Algumas cargas de trabalho específicas, como Interactive Query, também precisarão de nós Zookeeper maiores. Considere, no mínimo, oito VMs principais.
- No caso do Hive e do Spark, use o metastore externo do Hive.
Componentes individuais
Posso instalar mais componentes no meu cluster?
Sim. Para instalar mais componentes ou personalizar a configuração do cluster, use:
Scripts durante ou após a criação. Os scripts são invocados por meio de ações de script. As ações de script são uma opção de configuração que pode ser usada no portal do Azure, cmdlets do Windows PowerShell do HDInsight ou SDK do .NET do HDInsight. Essa opção de configuração pode ser usada no portal do Azure, cmdlets do Windows PowerShell do HDInsight ou SDK do .NET do HDInsight.
Plataforma de aplicativo do HDInsight para instalar aplicativos.
Uma lista de componentes com suporte está disponível em Quais são os componentes e versões do Apache Hadoop disponíveis com o HDInsight?
Posso atualizar os componentes individuais que estão pré-instalados no cluster?
Se você atualizar componentes ou aplicativos integrados pré-instalados no seu cluster, a configuração resultante não terá suporte da Microsoft. Essas configurações de sistema não foram testadas pela Microsoft. Tente usar uma versão diferente do cluster HDInsight que já possa ter a versão atualizada do componente pré-instalada.
Por exemplo, não há suporte para a atualização do Hive como um componente individual. O HDInsight é um serviço gerenciado, e muitos serviços são integrados ao servidor Ambari e testados. Atualizar um Hive automaticamente faz com que os binários indexados de outros componentes sejam alterados, e isso causará problemas de integração de componentes no cluster.
O Spark e o Kafka podem ser executados no mesmo cluster HDInsight?
Não, não é possível executar o Apache Kafka e o Apache Spark no mesmo cluster HDInsight. Crie clusters separados para o Kafka e o Spark a fim de evitar problemas de contenção de recursos.
Como alterar o fuso horário no Ambari?
Abra a interface do usuário da Web do Ambari no
https://CLUSTERNAME.azurehdinsight.net
, em que CLUSTERNAME é o nome do seu cluster.No canto superior direito, selecione administrador | Configurações.
Na janela Configurações do usuário, selecione o novo fuso horário no menu suspenso Fuso horário e selecione Salvar.
Metastore
Como migrar do metastore existente para o Banco de Dados SQL do Microsoft Azure?
Para migrar o SQL Server para um Banco de Dados SQL do Azure, confira Tutorial: Migrar o SQL Server para um banco de dados individual ou um banco de dados em pool no Banco de Dados SQL do Azure offline usando DMS.
O metastore do Hive é excluído quando o cluster é excluído?
Depende do tipo de metastore que o cluster está configurado para usar.
Para um metastore padrão: o metastore padrão faz parte do ciclo de vida do cluster. Quando você exclui um cluster, o metastore e os metadados correspondentes também são excluídos.
Para um metastore personalizado: o ciclo de vida do metastore não está vinculado ao ciclo de vida de um cluster. Portanto, você pode criar e excluir clusters sem perder metadados. Os metadados, como os esquemas do Hive, persistem mesmo depois de excluir e recriar o cluster HDInsight.
Para obter mais informações, consulte Usar armazenamentos de metadados externos no Azure HDInsight.
A migração de um metastore do Hive também migra as políticas padrão do banco de dados do Ranger?
Não, a definição da política está no banco de dados Ranger, portanto, migrar o banco de dados Ranger migra sua política.
Você pode migrar um metastore do Hive de um cluster de Enterprise Security Package (ESP) para um cluster não ESP e vice-versa?
Sim, você pode migrar um metastore do Hive de um ESP para um cluster não ESP.
Como estimar o tamanho de um banco de dados de metastore do Hive?
Um metastore do Hive é usado para armazenar os metadados das fontes de dados que são usadas pelo servidor do Hive. Os requisitos de tamanho dependem parcialmente do número e da complexidade das fontes de dados do Hive. Esses itens não podem ser estimados antecipadamente. Conforme descrito nas diretrizes de metastore do Hive, você pode começar com uma camada S2. A camada fornece 50 DTU e 250 GB de armazenamento, e se você vir um gargalo, escale verticalmente o banco de dados.
Há suporte para outros bancos de dados que não sejam o Banco de Dados SQL do Azure como um metastore externo?
Não, a Microsoft dá suporte apenas ao Banco de Dados SQL do Azure como um metastore personalizado externo.
Posso compartilhar um metastore em vários clusters?
Sim, você pode compartilhar o metastore personalizado em vários clusters, desde que eles usem a mesma versão do HDInsight.
Conectividade e redes virtuais
Quais são as implicações de bloquear as portas 22 e 23 em minha rede?
Se você bloquear as portas 22 e 23, não terá acesso SSH ao cluster. Essas portas não são usadas pelo serviço do HDInsight.
Para obter mais informações, consulte um dos seguintes documentos:
Posso implantar mais máquinas virtuais na mesma sub-rede de um cluster HDInsight?
Sim, você pode implantar mais máquinas virtuais na mesma sub-rede de um cluster HDInsight. As seguintes configurações são necessárias:
Nós de borda: você pode adicionar outro nó de borda ao cluster, conforme descrito em Usar nós de borda vazios em clusters do Apache Hadoop no HDInsight.
Nós autônomos: você pode adicionar uma máquina virtual autônoma à mesma sub-rede e acessar o cluster dessa máquina virtual usando o ponto de extremidade privado
https://<CLUSTERNAME>-int.azurehdinsight.net
. Para obter mais informações, confira Controlar o tráfego de rede.
Devo armazenar dados no disco local de um nó de borda?
Não, não é uma boa ideia armazenar dados em um disco local. Se o nó falhar, todos os dados armazenados localmente serão perdidos. É recomendado armazenar dados no Azure Data Lake Storage Gen2 ou no armazenamento de Blob do Azure, ou montar um compartilhamento de Arquivos do Azure para armazenar os dados.
Posso adicionar um cluster HDInsight existente a outra rede virtual?
Não, você não pode. A rede virtual deve ser especificada no momento do provisionamento. Se nenhuma rede virtual for especificada durante o provisionamento, a implantação criará uma rede interna que não poderá ser acessada de fora. Para obter mais informações, confira a seção Adicionar o HDInsight a uma rede virtual existente.
Segurança e certificados
Quais são as recomendações para proteção contra malware em clusters do Azure HDInsight?
Para obter informações sobre proteção contra malware, confira Microsoft Antimalware para Serviços de Nuvem do Azure e máquinas virtuais.
Como fazer para criar um keytab para um cluster HDInsight ESP?
Crie um keytab do Kerberos para o nome de usuário do domínio. Posteriormente, você pode usar esse keytab para autenticar em clusters remotos conectados ao domínio sem inserir uma senha. O nome de domínio é digitado em letras maiúsculas:
ktutil
ktutil: addent -password -p <username>@<DOMAIN.COM> -k 1 -e aes256-cts-hmac-sha1-96
Password for <username>@<DOMAIN.COM>: <password>
ktutil: wkt <username>.keytab
ktutil: q
Quando o incluir sal é necessário para a criptografia AES256 ao criar o keytab?
Se o seu TenantName e DomainName forem diferentes (por exemplo, TenantName – bob@CONTOSO.ONMICROSOFT.COM e DomainName – bob@CONTOSOMicrosoft.ONMICROSOFT.COM), você precisará adicionar um valor SALT usando a opção -s.
Como fazer determinar o valor de SAL adequado?
- Use um login interativo do Kerberos para determinar o valor de salt adequado para o keytab. O login interativo do Kerberos usa a criptografia mais alta por padrão. O rastreamento deve ser habilitado para observar o sal. Abaixo está um exemplo de login do Kerberos:
$ KRB5_TRAACE=/dev/stdout kinit <username> -V
- Examine a saída do sal na linha ".......".
- Use esse valor de sal ao criar o keytab.
ktutil
ktutil: addent -password -p <username>@<DOMAIN.COM> -k 1 -e aes256-cts-hmac-sha1-96 -s <SALTvalue>
Password for <username>@<DOMAIN.COM>: <password>
ktutil: wkt <username>.keytab
ktutil: q
Posso usar um locatário existente do Microsoft Entra para criar um cluster HDInsight que tenha o ESP?
Habilite o Microsoft Entra Domain Services antes de criar um cluster HDInsight com ESP. O Hadoop open-source depende do Kerberos para fazer a autenticação (em vez de OAuth).
Para unir VMs em um domínio, é necessário ter um controlador de domínio. O Microsoft Entra Domain Services é o controlador de domínio gerenciado e é considerado uma extensão do Microsoft Entra ID. O Microsoft Entra Domain Services fornece todos os requisitos do Kerberos para criar um cluster seguro do Hadoop de maneira gerenciada. O Azure HDInsight, como um serviço gerenciado, se integra ao Microsoft Entra Domain Services para fornecer segurança.
Posso usar um certificado autoassinado em uma configuração LDAP segura do Microsoft Entra Domain Services e provisionar um cluster ESP?
É recomendado usar um certificado emitido por uma autoridade de certificação. Porém, o ESP também permite o uso de um certificado autoassinado. Para saber mais, veja:
Posso instalar o DAS (Data Analytics Studio) como um cluster ESP?
Não, não há suporte para o DAS em clusters ESP.
Como posso extrair a atividade de login mostrada no Ranger?
Para requisitos de auditoria, a Microsoft recomenda habilitar os logs do Azure Monitor conforme descrito em Usar logs do Azure Monitor para monitorar clusters do HDInsight.
Posso desabilitar o `Clamscan` no cluster?
O Clamscan
é o software antivírus que é executado no cluster do HDInsight e usado pela segurança do Azure (azsecd) para proteger seus clusters contra ataques de vírus. A Microsoft recomenda fortemente que os usuários evitem fazer alterações na configuração padrão do Clamscan
.
Esse processo não interfere nem elimina ciclos de outros processos. Sempre resultará em outro processo. Picos de CPU do Clamscan
devem ser vistos somente quando o sistema estiver ocioso.
Em cenários nos quais você deve controlar o agendamento, é possível utilizar as seguintes etapas:
Desabilite a execução automática usando o seguinte comando:
sudo
usr/local/bin/azsecd config -s clamav -d Disabled
sudo service azsecd restartAdicione um trabalho Cron que execute o seguinte comando como raiz:
/usr/local/bin/azsecd manual -s clamav
Para obter mais informações sobre como configurar e executar um trabalho cron, confira Como configurar um trabalho Cron?.
Por que o LLAP está disponível em clusters de ESP do Spark?
O LLAP é habilitado por motivos de segurança (Apache Ranger), não por desempenho. Use VMs de nó maior para acomodar o uso de recursos do LLAP (por exemplo, D13V2 mínimo).
Como posso adicionar grupos adicionais do Microsoft Entra depois de criar um cluster ESP?
Há duas maneiras de atingir essa meta: 1- Você pode recriar o cluster e adicionar o grupo no momento da criação do cluster. Se estiver usando a sincronização com escopo no Microsoft Entra Domain Services, verifique se o grupo B está incluído na sincronização com escopo.
2- Adicione o grupo como um subgrupo aninhado ao grupo anterior que foi usado para criar o cluster ESP. Por exemplo, se você tiver criado um cluster ESP com o grupo A
, poderá adicionar posteriormente o grupo B
como um subgrupo aninhado de A
e depois de aproximadamente uma hora, ele será sincronizado e estará disponível no cluster automaticamente.
Armazenamento
Posso adicionar um Azure Data Lake Storage Gen2 a um cluster HDInsight existente como uma conta de armazenamento adicional?
Não, não é possível adicionar uma conta de armazenamento do Azure Data Lake Storage Gen2 a um cluster que tenha armazenamento de blob como armazenamento primário. Para obter mais informações, confira Comparar as opções de armazenamento.
Como posso encontrar a entidade de serviço vinculada a uma conta de armazenamento do Data Lake?
As configurações estão disponíveis em suas propriedades de cluster ao acessar o Data Lake Storage Gen1 no portal do Azure. Para obter mais informações, confira Verificar a configuração do cluster.
Como calcular o uso de contas de armazenamento e contêineres de blob para meus clusters do HDInsight?
Execute uma dessas ações:
Localize o tamanho da pasta /user/hive/.Trash/ no cluster do HDInsight usando a seguinte linha de comando:
hdfs dfs -du -h /user/hive/.Trash/
Como configurar a auditoria na minha conta de armazenamento de blob?
Para auditar contas de armazenamento de blob, configure o monitoramento usando o procedimento indicado em Monitorar uma conta de armazenamento no portal do Azure. Um log HDFS-audit fornece informações de auditoria somente para o sistema de arquivos HDFS local (hdfs://mycluster). Não inclui operações que realizadas no armazenamento remoto.
Como posso transferir arquivos entre um contêiner de blobs e um nó principal do HDInsight?
Execute um script semelhante ao seguinte script de shell no nó de cabeçalho:
for i in cat filenames.txt
do
hadoop fs -get $i <local destination>
done
Observação
O arquivo filenames.txt terá o caminho absoluto dos arquivos nos contêineres de blob.
Existe algum plug-in do Ranger para armazenamento?
No momento, não existe nenhum plug-in do Ranger para armazenamento de blobs e para o Azure Data Lake Storage Gen1 ou Gen2. Para clusters ESP, é necessário usar o Azure Data Lake Storage. Você pode ao menos definir as permissões refinadas manualmente no nível do sistema de arquivos usando as ferramentas de HDFS. Além disso, ao usar o Azure Data Lake Storage, os clusters ESP farão parte do controle de acesso do sistema de arquivos usando a ID do Microsoft Entra no nível do cluster.
Você pode atribuir políticas de acesso a dados aos grupos de segurança dos seus usuários usando o Gerenciador de Armazenamento do Microsoft Azure. Para saber mais, veja:
Posso aumentar o armazenamento do HDFS em um cluster sem aumentar o tamanho do disco dos nós de trabalho?
Não. Não é possível aumentar o tamanho do disco de um nó de trabalho. A única maneira de fazer isso é descartar o cluster e recriá-lo com VMs de trabalho maiores. Não use o HDFS para armazenar os dados do HDInsight, pois eles serão excluídos se você excluir o cluster. Em vez disso, armazene os dados no Azure. Escalar verticalmente também pode aumentar a capacidade do cluster do HDInsight.
Nós de borda
Posso adicionar um nó de borda após a criação do cluster?
Como faço para me conectar a um nó de borda?
Depois de criar um nó de borda, você pode se conectar a ele usando SSH na porta 22. O nome do nó de borda está disponível no portal do cluster. Os nomes costumam terminar com -ed.
Por que os scripts persistentes não são executados automaticamente em nós de borda recém-criados?
Os scripts persistentes são usados para personalizar novos nós de trabalho adicionados ao cluster por meio de operações de dimensionamento. Os scripts persistentes não se aplicam a nós de borda.
API REST
Quais são as chamadas à API REST para efetuar pull de uma exibição de consulta Tez do cluster?
Você pode usar os seguintes pontos de extremidade REST para efetuar pull das informações necessárias no formato JSON. Use cabeçalhos de autenticação básicos para fazer as solicitações.
Tez Query View
: https://<cluster name>.azurehdinsight.net/ws/v1/timeline/HIVE_QUERY_ID/Tez Dag View
: https://<cluster name>.azurehdinsight.net/ws/v1/timeline/TEZ_DAG_ID/
Como recuperar os detalhes de configuração do cluster HDI usando um usuário do Microsoft Entra?
Para negociar tokens de autenticação adequados com o usuário do Microsoft Entra, acesse o gateway usando o seguinte formato:
- https://
<cluster dnsname>
.azurehdinsight.net/api/v1/clusters/testclusterdem/stack_versions/1/repository_versions/1
Como fazer para usar o RESTful do Ambari para monitorar o desempenho do YARN?
Se você chamar o comando Curl na mesma rede virtual ou em uma rede virtual emparelhada, o comando será:
curl -u <cluster login username> -sS -G
http://<headnodehost>:8080/api/v1/clusters/<ClusterName>/services/YARN/components/NODEMANAGER?fields=metrics/cpu
Se você chamar o comando de fora da rede virtual ou de uma rede virtual não emparelhada, o formato do comando será:
Para um cluster não ESP:
curl -u <cluster login username> -sS -G https://<ClusterName>.azurehdinsight.net/api/v1/clusters/<ClusterName>/services/YARN/components/NODEMANAGER?fields=metrics/cpu
Para um cluster ESP:
curl -u <cluster login username>-sS -G https://<ClusterName>.azurehdinsight.net/api/v1/clusters/<ClusterName>/services/YARN/components/NODEMANAGER?fields=metrics/cpu
Observação
O cURL solicita uma senha. Você deve inserir uma senha válida para o nome de usuário de login do cluster.
Cobrança
Quanto custa implantar um cluster HDInsight?
Para obter mais informações sobre preços e perguntas frequentes relacionadas à cobrança, confira a página Preços do Azure HDInsight.
Quando começa e termina a cobrança do HDInsight?
A cobrança do cluster HDInsight começa quando um cluster é criado e para quando o cluster é excluído. A cobrança é feita por minuto.
Como fazer para cancelar minha assinatura?
Para obter informações sobre como cancelar sua assinatura, confira Cancelar sua assinatura do Azure.
No caso de assinaturas pré-pagas, o que acontece quando cancelo minha assinatura?
Para obter informações sobre sua assinatura após o cancelamento, confira O que acontecerá depois que eu cancelar minha assinatura?
Hive
Por que a versão do Hive aparece como 1.2.1000 em vez de 2.1 na interface do usuário do Ambari, mesmo que eu esteja executando um cluster HDInsight 3.6?
Apesar de mostrar 1.2 na interface do usuário do Ambari, o HDInsight 3.6 contém o Hive 1.2 e o Hive 2.1.
Outras perguntas frequentes
O que o HDInsight oferece para recursos de processamento de fluxo em tempo real?
Para obter informações sobre os recursos de integração do processamento de fluxo, confira Escolhendo uma tecnologia de processamento de fluxo no Azure.
Existe uma maneira de eliminar dinamicamente o nó de cabeçalho do cluster quando ele fica ocioso por um período específico?
Não é possível executar esta ação com clusters do HDInsight. Use o Azure Data Factory nesses cenários.
Quais são as ofertas de conformidade do HDInsight?
Para obter mais informações sobre conformidade, confira a Central de Confiabilidade da Microsoft.