Tempo de inatividade do nó mestre do Hadoop e solução do segundo nó

Tenho três especializações importantes em dados. Na semana passada, aprendi como construir um ambiente hadoop. Depois de configurar o ip estático e construir o cluster distribuído hadoop, comece a construir o software Zookeeper e, em seguida, crie o ambiente hbase ( https://blog.csdn.net/master_hunter/article/details/108704148 ). Tenho muitas perguntas pouco claras neste campo e pode haver alguns erros no artigo. Espero que você possa me corrigir na área de comentários. Os erros neste artigo serão continuamente corrigidos e mantidos.

Cena do projeto:

Depois de instalar o Hbase, planejo construir um data warehouse (Hive). Depois de instalar o Hive, ao instalar o Mysql, descobri que todos os serviços de hdfs do hadoop não podiam ser iniciados. Entrei no diretório hadoop e descobri que apenas conf.empty foi inserido. Todos os arquivos de configuração foram inseridos com um sufixo. rpmsave. Pessoalmente, acho que isso deve ser causado pela configuração de caminho incorreto durante o rpm.


Descrição do Problema:

Quando o comando Hadoop não é encontrado, hdfs não tem resposta.Somente o arquivo conf.empty é inserido no diretório hadoop e todos os arquivos de configuração inseridos têm o sufixo .rpmsave.


Análise de causa:

 

Isso pode ser causado pela configuração errada do ambiente HADOOP_HOME = / usr / local / hadoop path ao configurar o Hive ou digitando o comando errado no rpmsql.


solução:

Use o hadoop2 do secondnamenode para iniciar o serviço para remediar. O hadoop1 do qual fiz backup originalmente ainda não criou o hbase e o zookeeper, portanto, lembrarei de fazer backup do hadoop dinamicamente em tempo real no futuro (lágrimas).

Clone hadoop2 e altere o nome para hadoop1 e modifique o nome do host de seu nó após inserir hadoop1

/ etc / sysconfig / network

Altere hadoop2 para hadoop1 e, em seguida, você precisa limpar as informações de diretório de gravação de dados DataNode (porque há informações de número de DataNode no diretório, se não for limpo, apenas um DataNode pode ser iniciado)

rm -rf / data / dn / *

Defina o endereço mac do hadoop1 clonado

vi / etc / sysconfig / network-scripts / ifcfg-eth0

mac pode ser visto na configuração de rede da máquina virtual

Lembre-se de mudar o gateway após a modificação

rm -rf /etc/udev/rules.d/70-persistent-net.rules

Após reiniciar, modifique o /etc/udev/rules.d/70-persistent-net.rules recém-gerado para NAME = "eth0".

Neste momento, de acordo com o princípio de mapeamento hadoop, hadoop1 deve ter sido identificado e o serviço namenode deve ser ativado. O hadoop1 clonado de acordo com a função de backup frio do segundo nó retornará ao estado hadoop1 original, mas insira outros nós para verificar se outros serviços podem ser iniciados normalmente, mas o DataNode não pode ser iniciado.

Pause primeiro todos os serviços do nó (feche os serviços correspondentes de acordo com os serviços implantados em outras máquinas virtuais)

serviço hadoop-hdfs-datanode stop

serviço hadoop-yarn-resourcemanager stop

serviço hadoop-mapreduce-historyserver stop

serviço hadoop-hdfs-namenode stop

serviço hadoop-hdfs-secondarynamenode stop

Em seguida, exclua / data / dn / current em hadoop1, hadoop2 e hadoop3 e execute os seguintes comandos

rm -rf / data / dn / current

Sequência de inicialização: namenode ——> secondnamenode ——> todos os datanode ——> recourcemanager ——> nodemanager de todas as máquinas ——> historyserver.

Em seguida, inicie o serviço correspondente do nó e descubra que hadoop1 pode ser usado normalmente. problema resolvido

 

 

Acho que você gosta

Origin blog.csdn.net/master_hunter/article/details/108749468
Recomendado
Clasificación