Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/ MapReduce Service/ Visão geral de serviço/ Componentes/ ZooKeeper/ Relação entre ZooKeeper e outros componentes
Atualizado em 2023-05-19 GMT+08:00

Relação entre ZooKeeper e outros componentes

Relação entre ZooKeeper e HDFS

Figura 1 mostra a relação entre o ZooKeeper e o HDFS.

Figura 1 Relação entre ZooKeeper e HDFS

Como cliente de um cluster de ZooKeeper, o ZKFailoverController (ZKFC) monitora o status do NameNode. O ZKFC é implementado apenas no nó em que o NameNode reside e nos NameNodes HDFS ativos e em espera.

  1. O ZKFC se conecta ao ZooKeeper e salva informações como nomes de host em ZooKeeper no diretório de znode /hadoop-ha. O NameNode que cria o diretório primeiro é considerado como o nó ativo e o outro é o nó em espera. NameNodes lê as informações do NameNode periodicamente através do ZooKeeper.
  2. Quando o processo do nó ativo termina anormalmente, o NameNode em espera detecta alterações no diretório /hadoop-ha por meio do ZooKeeper e, em seguida, assume o serviço do NameNode ativo.

Relação entre ZooKeeper e YARN

Figura 2 mostra a relação entre ZooKeeper e YARN.

Figura 2 Relação entre ZooKeeper e YARN
  1. Quando o sistema é iniciado, o ResourceManager tenta gravar informações de estado no ZooKeeper. O ResourceManager que primeiro grava informações de estado no ZooKeeper é selecionado como o ResourceManager ativo e outros são ResourceManagers em espera. Os ResourceManagers em espera monitoram periodicamente as informações eleitorais ativas do ResourceManager no ZooKeeper.
  2. O ResourceManager ativo cria o diretório Statestore no ZooKeeper para armazenar informações da aplicação. Se o ResourceManager ativo estiver com defeito, o ResourceManager em espera obterá informações da aplicação do diretório Statestore e restaurará os dados.

Relação entre ZooKeeper e HBase

Figura 3 mostra a relação entre o ZooKeeper e o HBase.

Figura 3 Relação entre ZooKeeper e HBase
  1. O HRegionServer registra-se em ZooKeeper no nó Efêmero. O ZooKeeper armazena as informações do HBase, incluindo os metadados do HBase e os endereços de HMaster.
  2. HMaster detecta o status de saúde de cada HRegionServer usando o ZooKeeper e os monitora.
  3. O HBase oferece suporte a vários nós HMaster (como NameNodes do HDFS). Quando o HMaster ativo está com defeito, o HMaster em espera obtém as informações de estado sobre todo o cluster usando ZooKeeper. Ou seja, o uso de ZooKeeper pode evitar SPOFs de HBase.

Relação entre ZooKeeper e Kafka

Figura 4 mostra a relação entre ZooKeeper e Kafka.

Figura 4 Relação entre ZooKeeper e Kafka
  1. O agente usa o ZooKeeper para registrar informações do agente e eleger um líder da partição.
  2. O consumidor usa o ZooKeeper para registrar informações do consumidor, incluindo a lista de partição do consumidor. Além disso, o ZooKeeper é usado para descobrir a lista de agentes, estabelecer uma conexão de soquete com o líder da partição e obter mensagens.