Criar um cluster do HDInsight que usa zonas de disponibilidade

Um cluster do Azure HDInsight consiste em vários nós (nós de cabeçalho, nós de trabalho, nós de gateway e nós do ZooKeeper). Por padrão, em uma região que dá suporte a zonas de disponibilidade, o usuário não tem controle sobre quais nós de cluster são provisionados em cada zona de disponibilidade.

Com esse novo recurso de zona de disponibilidade, o usuário agora pode especificar qual zona de disponibilidade deve hospedar todos os nós do cluster do HDInsight. Os nós de cluster são separados fisicamente de outras zonas de disponibilidade na mesma região e ficam isolados de falhas que ocorram nelas. Esse modelo de implantação também fornece uma conectividade de rede barata e de baixa latência no cluster.

Replicar esse modelo de implantação em várias zonas de disponibilidade pode fornecer um nível mais alto de disponibilidade para proteção contra falhas de hardware.

Este artigo mostra como criar um cluster do HDInsight em uma zona de disponibilidade e como usar esse recurso para obter maior disponibilidade.

Antes de começar

O recurso de zona de disponibilidade só tem suporte para clusters criados após 15 de junho. Não é possível atualizar as configurações da zona de disponibilidade depois que o cluster for criado. Você também não pode atualizar um cluster de zona de não disponibilidade existente para usar zonas de disponibilidade.

Pré-requisitos e disponibilidade de região

Pré-requisitos:

  • Os clusters devem ser criados em uma VNet personalizada.
  • Você precisa trazer seu próprio banco de dados SQL para o Ambari DB e o metastore externo (como o do Hive) para configurar esses bancos de dados na mesma zona de disponibilidade.

Atualmente, os clusters do HDInsight podem ser criados usando zonas de disponibilidade nas seguintes regiões:

  • Leste da Austrália
  • Brazil South
  • Canadá Central
  • Centro dos EUA
  • Leste dos EUA
  • Leste dos EUA 2
  • França Central
  • Centro-Oeste da Alemanha
  • Leste do Japão
  • Coreia Central
  • Norte da Europa
  • Sudeste Asiático
  • Centro-Sul dos Estados Unidos
  • Sul do Reino Unido
  • Gov. dos EUA – Virgínia
  • Europa Ocidental
  • Oeste dos EUA 2

Visão geral das zonas de disponibilidade para clusters do HDInsight

As zonas de disponibilidade são locais físicos exclusivos em uma região. Cada zona é composta por um ou mais datacenters equipados com energia, resfriamento e rede independentes. No Azure, uma região contém uma ou mais zonas de disponibilidade. A separação física das zonas de disponibilidade em uma região protege os aplicativos e os dados contra falhas do datacenter. Para saber mais, veja O que são as zonas de disponibilidade do Azure?.

É possível configurar os clusters do Azure HDInsight para serem implantados em uma zona de disponibilidade. Todos os nós neste cluster do HDInsight, incluindo os dois nós de cabeçalho, os três nós do ZooKeeper, os dois nós de gateway e os nós de trabalho, serão colocados na zona de disponibilidade especificada. Por exemplo, há três zonas de disponibilidade no leste dos EUA. Um cluster do HDInsight nessa região pode ser criado com todos os nós na zona de disponibilidade 1.

Usar as zonas de disponibilidade com um cluster do HDInsight dessa maneira pode fornecer benefícios de desempenho e custo:

  • Melhor desempenho devido à conectividade de rede de baixa latência
  • Menor custo: a transferência de dados é gratuita na mesma zona de disponibilidade. A transferência de dados entre zonas de disponibilidade incorrerá em um custo adicional de rede.

Se seu aplicativo precisar de alta disponibilidade em várias zonas de disponibilidade, crie um cluster primário do HDInsight em uma zona de disponibilidade e um cluster secundário do HDInsight em outra com o tamanho mínimo para economizar. Com esse design, se uma das outras zonas de disponibilidade falhar, esse cluster do HDInsight não será afetado. Se essa zona de disponibilidade ficar inativa, os clientes precisarão mudar os clusters secundários em uma zona de disponibilidade diferente para a primária, rotear a carga de trabalho para esse novo cluster primário e aumentar rapidamente o tamanho do cluster para retomar o processamento de dados.

Criar um cluster do HDInsight usando a zona de disponibilidade

Você pode usar o modelo do ARM (Azure Resource Manager) para iniciar um cluster do HDInsight em uma zona de disponibilidade especificada.

Na seção de recursos, você precisa adicionar uma seção de "zonas" e informar em qual zona de disponibilidade deseja que esse cluster seja implantado.

   "resources": [
        {
            "type": "Microsoft.HDInsight/clusters",
            "apiVersion": "2021-06-01",
            "name": "[parameters('cluster name')]",
            "location": "East US 2",
            "zones": [
                "1"
            ],

Verificar nós de uma zona de disponibilidade entre zonas

Quando o cluster do HDInsight estiver pronto, verifique o local para ver em qual zona de disponibilidade eles estão implantados.

Screenshot sthat hows availability zone info in cluster overview.

Obtenha a resposta da API:

 [
        {
            "location": "East US 2",
            "zones": [
                "1"
            ],

Aumentar o tamanho do cluster

Você pode aumentar o tamanho de um cluster do HDInsight com mais nós de trabalho. Os novos nós de trabalho adicionados serão colocados na mesma zona de disponibilidade do cluster.

Práticas recomendadas

  • Faça backup regularmente das configurações no Ambari DB.
  • Implemente a lógica para rotear facilmente a carga de trabalho para o cluster secundário.

O que esperar quando a zona de disponibilidade fica inativa

  • Não é possível acessar este cluster via SSH
  • Não é possível excluir ou aumentar/reduzir o tamanho deste cluster
  • Não é possível enviar trabalhos ou ver o histórico de trabalhos
  • Você ainda pode enviar uma nova solicitação de criação de cluster em uma região diferente