2010-05-07 33 views
1

Nous utilisons notre cluster sur Amazon EC2. nous utilisons des scripts cloudera pour installer hadoop. Sur le nœud maître, nous démarrons en dessous des services.Hadoop safemode recovery - prendre beaucoup de temps

609 $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop-daemon.sh start namenode' 
610 $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop-daemon.sh start secondarynamenode' 
611 $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop-daemon.sh start jobtracker' 
612 
613 $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop dfsadmin -safemode wait' 

Sur la machine esclave, nous exécutons les services ci-dessous.

625 $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop-daemon.sh start datanode' 
626 $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop-daemon.sh start tasktracker' 

Le principal problème auquel nous sommes confrontés est, HDFS récupération safemode prend plus d'une heure, ce qui provoque des retards dans notre achèvement des travaux.

Voici les principaux messages du journal.

1. domU-12-31-39-0A-34-61.compute-1.internal 10/05/05 20:44:19 INFO ipc.Client: Retrying connect to server: ec2-184-73-64-64.compute-1.amazonaws.com/10.192.11.240:8020. Already tried 21 time(s). 
2. The reported blocks 283634 needs additional 322258 blocks to reach the threshold 0.9990 of total blocks 606499. Safe mode will be turned off automatically. 

Le premier message est lancé dans le journal de suivi des tâches, car le suivi des travaux n'est pas démarré. le traqueur de travaux n'a pas démarré à cause de la récupération de safemode hdfs.

Le deuxième message est lancé pendant le processus de récupération.

Y a-t-il quelque chose que je fais de mal? Combien de temps dure la récupération normale de safemode hdfs? Y aura-t-il une accélération, en ne démarrant pas les suiveurs de tâches jusqu'à ce que le traqueur de travaux soit démarré? Existe-t-il des problèmes hadoop connus sur le cluster amazon?

Merci pour votre aide.

Répondre

1

Le temps passé en mode sans échec est généralement proportionnel à la taille du cluster. Cela dit, le temps normal est de l'ordre des minutes au plus, pas des heures. Il y a quelques choses à vérifier.

  1. Vérifiez tous les nœuds de données tirent correctement. Il est normal que les noeuds de données prennent quelques secondes ou minutes pour qu'un grand nombre de blocs renvoient leur rapport. Vérifiez les journaux des noeuds de données pour voir ce qui se passe au démarrage.
  2. Assurez-vous de disposer d'un nombre suffisant de threads de noeud de nom (dfs.namenode.handler.count dans hdfs-site.xml) pour pouvoir prendre en charge le nombre de nœuds de données à archiver. La valeur par défaut est 10, qui doit être bien pour les grappes jusqu'à 20 nœuds ou plus. Au-delà de cela, il peut être logique d'augmenter cela. Vous pouvez voir des tentatives se produire dans les journaux de noeud de données qui indiqueraient cela. C'est ce que les messages de réessai semblent indiquer (par exemple, réessayer 21 fois).

Hope this helps.