Criar um cluster HDInsight que use zonas de disponibilidade

Um cluster do Azure HDInsight consiste em vários nós (nós principais, nós de trabalho, nós de gateway e nós de zookeeper). Por padrão, em uma região que oferece suporte a Zonas de Disponibilidade, o usuário não tem controle sobre quais nós de cluster são provisionados em qual 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 HDInsight. Os nós do cluster são fisicamente separados de outra zona de disponibilidade e são isolados de falhas em outras zonas de disponibilidade na mesma região. Esse modelo de implantação também fornece conectividade de rede barata e de baixa latência dentro do 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 HDInsight dentro de uma zona de disponibilidade e como usar esse recurso para obter maior disponibilidade.

Antes de começar

O recurso Zona de Disponibilidade só é suportado para clusters criados após 15 de junho. As configurações da zona de disponibilidade não podem ser atualizadas após a criação do cluster. Também não é possível atualizar um cluster de zona de indisponibilidade existente para usar zonas de disponibilidade.

Pré-requisitos e disponibilidade da região

Pré-requisitos:

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

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

  • Leste da Austrália
  • Sul do Brasil
  • Canadá Central
  • E.U.A. Central
  • E.U.A. Leste
  • E.U.A. Leste 2
  • França Central
  • Alemanha Centro-Oeste
  • Leste do Japão
  • Coreia do Sul Central
  • Europa do Norte
  • Sudeste Asiático
  • E.U.A. Centro-Sul
  • Sul do Reino Unido
  • US Gov - Virginia
  • Europa Ocidental
  • E.U.A. Oeste 2

Visão geral das zonas de disponibilidade para clusters HDInsight

As zonas de disponibilidade são locais físicos exclusivos dentro de uma região. Cada zona é composta por um ou mais datacenters equipados com energia, refrigeração e rede independentes. No Azure, uma região contém uma ou mais Zonas de Disponibilidade. Essa separação física das zonas de disponibilidade dentro de uma região protege aplicativos e dados contra falhas no datacenter. Para obter mais informações, consulte O que são zonas de disponibilidade no Azure.

Os clusters do Azure HDInsight podem ser configurados para implantação em uma zona de disponibilidade. Todos os nós neste cluster HDInsight, incluindo os dois nós principais, três nós zookeeper, 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 HDInsight no Leste dos EUA pode ser criado com todos os nós na zona de disponibilidade 1.

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

  • Melhor desempenho devido à conectividade de rede de baixa latência
  • Menor custo: a transferência de dados dentro da mesma zona de disponibilidade é gratuita. Na zona de disponibilidade, a transferência de dados incorrerá em custos adicionais de rede.

Se seu aplicativo exigir alta disponibilidade em várias zonas de disponibilidade, você poderá criar um cluster HDInsight primário em uma zona de disponibilidade e criar um cluster HDInsight secundário em uma zona de disponibilidade diferente com tamanho mínimo para economizar custos. Com esse design, se uma das outras zonas de disponibilidade ficar inativa, esse cluster HDInsight não será afetado. Se essa zona de Disponibilidade ficar inativa, os clientes precisarão alternar os clusters secundários em uma zona de Disponibilidade diferente para a principal, rotear a carga de trabalho para esse novo cluster primário e aumentar rapidamente o tamanho do cluster para receber o processamento de dados.

Criar um cluster HDInsight usando a zona de disponibilidade

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

Na seção de recursos, você precisa adicionar uma seção de 'zonas' e fornecer em qual zona de disponibilidade você 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 dentro de uma zona de disponibilidade entre zonas

Quando o cluster HDInsight estiver pronto, você poderá verificar o local para ver em qual zona de disponibilidade eles serão implantados.

Screenshot sthat hows availability zone info in cluster overview.

Obtenha a resposta da API:

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

Aumentar a escala do cluster

Você pode dimensionar um cluster HDInsight com mais nós de trabalho. Os nós de trabalho recém-adicionados serão colocados na mesma zona de Disponibilidade deste cluster.

Melhores práticas

  • 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.

Quando o AZ desce, o que esperar

  • Não é possível ssh para este cluster
  • Não é possível excluir, aumentar ou reduzir esse 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