Nós mestre em clusters hadoop

Os nós mestre em clusters Hadoop distribuídos acolher os vários serviços de armazenamento e de gestão de processamento, descritas nesta lista, para todo o cluster Hadoop. A redundância é fundamental para evitar pontos únicos de falha, então você vê dois interruptores e três nós mestre.

Video: CloudRax Turnkey Hadoop Cluster

  • NameNode: Gere o armazenamento HDFS. Para garantir a alta disponibilidade, você tem tanto um NameNode ativa e uma NameNode espera. Cada roda em seu próprio nó mestre, dedicado.

  • nó de ponto de verificação (ou nó de backup): fornece checkpointing serviços para o NameNode. Isso envolve a leitura do log de edição do NameNode as alterações nos arquivos no HDFS (novos, excluídos e arquivos anexados) desde o último checkpoint, e aplicá-las ao arquivo mestre do NameNode que mapeia os arquivos de blocos de dados.

    Além disso, o nó de backup mantém uma cópia do espaço de nomes do sistema de arquivos na memória e mantém em sincronia com o estado da NameNode. Para implantações de alta disponibilidade, não use um nó de ponto de verificação ou nó de backup - usar um NameNode Standby vez. Além de ser uma espera ativa para o NameNode, o Standby NameNode mantém os serviços de checkpointing e mantém uma cópia up-to-date do espaço de nomes do sistema de arquivos na memória.

  • JournalNode: Recebe modificações editar log indicando alterações em arquivos no HDFS do NameNode. Pelo menos três serviços JournalNode (e é sempre um número ímpar) deve ser executado em um cluster, e eles são leves o suficiente para que eles possam ser colocado com outros serviços nos nós mestre.

  • Gerente de Recursos: Supervisiona a programação de tarefas e gestão dos recursos do cluster Hadoop aplicação. Este serviço é o coração do fio.

  • JobTracker: Para servidores Hadoop 1, lida com o gerenciamento de recursos de cluster e programação. Com FIO, o JobTracker é obsoleto e não é usado. Um número de Hadoop implantações ainda não migraram para Hadoop 2 e os fios.

  • HMaster: Monitora os servidores região HBase e lida com todas as alterações de metadados. Para garantir a alta disponibilidade, certifique-se de usar uma segunda instância HMaster. O serviço HMaster é leve o suficiente para ser colocado com outros serviços nos nós mestre. Em Hadoop 1, instâncias do serviço HMaster executado em nós mestre. Em Hadoop 2, com Hoya (HBase em Fios), casos HMaster executar em recipientes de nós escravo.

    Video: Distributed Deep Learning on Hadoop Clusters

  • Zelador do zológico: Coordenadas componentes distribuídos e fornece mecanismos para mantê-los em sincronia. Zookeeper é usado para detectar a falha do NameNode e eleger um novo NameNode. Também é usado com HBase para gerenciar os estados do HMaster e os RegionServers.

    Tal como acontece com o JournalNode, você precisa de pelo menos três instâncias de nós Zookeeper (e sempre um número ímpar), e eles são leves o suficiente para ser colocado com outros serviços nos nós mestre.

Aqui, você tem três nós principal (com o mesmo hardware), onde os serviços essenciais NameNode Ativo, espera NameNode, e Gerenciador de Recursos cada um tem seu próprio servidor. Há serviços JournalNode e Zookeeper em execução em cada servidor, bem como, mas estes são leves e não vai ser uma fonte de contenção de recursos com os serviços NameNode e gerenciador de recursos.



Os princípios são os mesmos para Hadoop 1, onde você precisa de um nó mestre dedicado para o NameNode, NameNode secundário e serviços JobTracker.

Se você planeja usar HBase com Hoya em Hadoop 2, você não precisa de quaisquer serviços adicionais. Para Hadoop 1 implementações usando HBase, consulte a figura seguinte para a implementação de serviços de nós mestre do cluster Hadoop.

Há duas diferenças quando se comparam estes servidores master para os servidores mestre Hadoop 1 sem o apoio HBase: aqui você precisa de dois serviços HMaster (um para coordenar HBase, e um para atuar como um stand-by) e serviços Zookeeper em todos os três nós mestre para lidar com failover .

Se você pretende usar seu cluster Hadoop 1 apenas para HBase, você pode fazer sem o serviço JobTracker, desde HBase não depende da infra-estrutura MapReduce do Hadoop 1.

Quando as pessoas falam sobre o hardware para Hadoop, eles geralmente enfatizam o uso de mercadoria componentes - os baratos. Porque você tem que gastar para baixo por apenas alguns nós mestre (normalmente, três ou quatro), não são atingidos pela multiplicação custos se, por exemplo, você decidir usar discos rígidos caros.

Tenha em mente que, sem nós mestre, não há cluster do Hadoop. nós mestre servem a uma função de missão crítica, e mesmo que você precisa de redundância, você deve projetá-los com alta disponibilidade e resiliência em mente.

armazenamento recomendada

Para os nós mestre Hadoop, independentemente do número de nós escravo ou utilizações do conjunto, as características do armazenamento são consistentes. Use quatro unidades de 900GB SAS, juntamente com um controlador RAID HDD configurado para RAID 1 + 0. As unidades SAS são mais caros do que os discos SATA, e têm menor capacidade de armazenamento, mas eles são mais rápidos e muito mais confiável.

A implantação de suas unidades SAS como um array RAID garante que os serviços de gestão do Hadoop tem uma loja redundante para seus dados de missão crítica. Isto dá-lhe espaço de armazenamento suficiente estável, rápido, e redundante para apoiar a gestão do seu cluster Hadoop.

processadores recomendados

No momento da redação deste artigo, a maioria das arquiteturas de referência recomendamos o uso de placas-mãe com dois soquetes de CPU, cada um com seis ou oito núcleos. A arquitetura Intel Ivy Bridge é comumente usado.

memória recomendada

Os requisitos de memória variam consideravelmente, dependendo da escala de um cluster Hadoop. A memória é um fator crítico para nós mestre Hadoop porque os servidores NameNode ativos e em espera dependem fortemente de RAM para gerenciar HDFS. Como tal, utilizar a memória de correção de erros (ECC) para nós mestre Hadoop. Tipicamente, os nós mestre precisa entre 64GB e 128GB de RAM.

O requisito de memória NameNode é uma função direta do número de blocos de arquivos armazenados no HDFS. Como regra, o NameNode usa cerca de 1 GB de RAM por milhão de blocos HDFS. (Lembre-se que os arquivos são divididos em blocos individuais e replicado para que você tenha três cópias de cada bloco.)

As exigências de memória de Gestor de Recursos, HMaster, Zookeeper, e servidores JournalNode são consideravelmente menos do que para o servidor NameNode. No entanto, é boa prática para o tamanho dos nós mestre de uma forma consistente, de modo que eles são intercambiáveis ​​em caso de falha de hardware.

networking recomendado

Comunicação rápida é vital para os serviços em nós mestre, por isso recomendamos o uso de um par de conexões 10GbE ligados. Este par ligado fornece redundância, mas também funciona caudal para 20GbE. Para clusters menores (por exemplo, menos de 50 nós) que você poderia fugir com o uso 1 conectores GbE.


Publicações relacionadas