web-dev-qa-db-fra.com

Les emplois MapReduce restent bloqués dans l'état Accepté

J'ai mon propre code MapReduce que j'essaie d'exécuter, mais il reste à l'état Accepté. J'ai essayé d'exécuter un autre exemple de travail MR que j'avais déjà exécuté et qui avait réussi. Mais maintenant, les deux emplois restent dans l'état Accepté. J'ai essayé de changer diverses propriétés dans les fichiers mapred-site.xml et yarn-site.xml, comme mentionné ici et ici mais cela n'a pas aidé. Quelqu'un peut-il s'il vous plaît indiquer ce qui pourrait éventuellement aller mal. J'utilise hadoop-2.2.0

J'ai essayé beaucoup de valeurs pour les différentes propriétés, voici un ensemble de valeurs-In mapred-site.xml

<property>
<name>mapreduce.job.tracker</name>
<value>localhost:54311</value>
</property> 

<property>
<name>mapreduce.job.tracker.reserved.physicalmemory.mb</name>
<value></value>
</property>

<property>
<name>mapreduce.map.memory.mb</name>
<value>256</value>
</property>

<property>
<name>mapreduce.reduce.memory.mb</name>
<value>256</value>
</property>


<property>
<name>yarn.app.mapreduce.am.resource.mb</name>
<value>400</value>
<source>mapred-site.xml</source>
</property>

Dans yarn-site.xml

<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>400</value>
<source>yarn-site.xml</source>
</property>
<property>
<name>yarn.scheduler.capacity.maximum-am-resource-percent</name>
<value>.3</value>
</property>
18
user1571307

J'ai eu le même effet et constaté que rendre le système plus de mémoire disponible par noeud de travail et réduire la mémoire requise pour une application aidée 

Les paramètres que j'ai (sur mes très petites boîtes expérimentales) dans mon fichier yarn-site.xml:

<property>
  <name>yarn.nodemanager.resource.memory-mb</name>
  <value>2200</value>
  <description>Amount of physical memory, in MB, that can be allocated for containers.</description>
</property>

<property>
  <name>yarn.scheduler.minimum-allocation-mb</name>
  <value>500</value>
</property>
12
Niels Basjes

Un travail bloqué dans l'état accepted sur YARN est généralement dû au manque de ressources disponibles. Vous pouvez le vérifier à http://resourcemanager:port/cluster/scheduler:

  1. si Memory Used + Memory Reserved >= Memory Total, la mémoire n'est pas suffisante
  2. si VCores Used + VCores Reserved >= VCores Total, VCores n'est pas suffisant

Il peut également être limité par des paramètres tels que maxAMShare.

8
secfree

Avait le même problème, et pour moi, c'était un disque dur complet (> 90% complet) qui était la question. Le nettoyage de l'espace m'a sauvé.

8
Romain Jouin

Suivez le blog - http://hortonworks.com/blog/how-to-plan-and-configure-yarn-in-hdp-2-0/

Ceci décrit en détail comment définir les paramètres pour les conteneurs YARN

4
user373480

J'ai fait face au même problème. Et j'ai changé chaque configuration mentionnée dans les réponses ci-dessus, mais ça ne servait à rien. Après cela, j'ai revérifié la santé de mon cluster. Là, j'ai observé que mon seul et unique noeud était dans un état non sain. Le problème était dû au manque d'espace disque dans mon répertoire/tmp/hadoop-hadoopUser/nm-local-dir. La même chose peut être vérifiée en vérifiant l'état de santé du noeud dans l'interface utilisateur Web du gestionnaire de ressources sur le port 8032. Pour résoudre ce problème, j'ai ajouté la propriété ci-dessous dans yarn-site.xml.

<property>
    <name>yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage</name>
    <value>98.5</value>
</property>

Après avoir redémarré mes démons hadoop, le statut des noeuds est devenu en bon état et les travaux ont commencé à s'exécuter.

0
Manish Bansal

J'utilisais Hadoop 3.0.1.J'ai été confronté au même problème, dans lequel le travail de réduction de carte soumis était bloqué à l'état ACCEPTED dans l'interface Web de ResourceManager. De plus, dans la même interface utilisateur Web, sous Cluster metrics -> Memory used était égal à 0, Total Memory était 0; Cluster Node Metrics -> Active Nodes était égal à 0, bien que l'interface utilisateur Web de NamedNode ait répertorié les nœuds de données à la perfection. L'exécution de yarn node -list sur le cluster n'affichait aucun gestionnaire de nœud. Il s'avère que mes gestionnaires de nœuds n'étaient pas en cours d'exécution. continuer plus loin. Ils n'étaient plus bloqués dans l'état ACCEPTED et sont arrivés à l'état "RUNNING"

0
Binita Bharati

L'ajout de la propriétéyarn.resourcemanager.hostnameau nom d'hôte du noeud principal dans yarn-site.xml et la copie de ce fichier dans tous les noeuds du cluster pour indiquer que cette configuration a résolu le problème pour moi.

0
Srinivas