Je vois qu'il y a plusieurs façons de démarrer l'écosystème hadoop,
start-all.sh & stop-all.sh
Qui dit que c'est obsolète, utilisez start-dfs.sh & start-yarn.sh.
start-dfs.sh, stop-dfs.sh and start-yarn.sh, stop-yarn.sh
hadoop-daemon.sh namenode/datanode and yarn-deamon.sh resourcemanager
EDIT: Je pense qu'il doit y avoir des cas d'utilisation spécifiques pour chaque commande.
start-all.sh & stop-all.sh: Utilisé pour démarrer et arrêter les démons hadoop en même temps. Son émission sur la machine principale va démarrer/arrêter les démons sur tous les nœuds d'un cluster. Obsolète, comme vous l'avez déjà remarqué.
start-dfs.sh, stop-dfs.sh et start-yarn.sh, stop-yarn.sh: Comme ci-dessus mais démarrez/arrêtez les démons HDFS et YARN séparément sur tous les nœuds du maître machine. Il est conseillé d'utiliser ces commandes maintenant sur start-all.sh & stop-all.sh
hadoop-daemon.sh namenode/datanode et yarn-deamon.sh resourcemanager: Pour démarrer manuellement des démons individuels sur une machine individuelle. Vous devez accéder à un nœud particulier et émettre ces commandes.
Cas d'utilisation: supposons que vous avez ajouté un nouveau DN à votre cluster et que vous devez démarrer le démon DN uniquement sur cette machine.
bin/hadoop-daemon.sh start datanode
Remarque: Vous devriez activer ssh si vous voulez démarrer tous les démons sur tous les nœuds d'une machine.
J'espère que cela répond à votre requête.
De Hadoop page ,
start-all.sh
Cela démarrera un Namenode, un Datanode, un Jobtracker et un Tasktracker sur votre machine.
start-dfs.sh
Cela fera apparaître HDFS avec le Namenode en cours d'exécution sur la machine sur laquelle vous avez exécuté la commande. Sur une telle machine, vous auriez besoin de start-mapred.sh
pour démarrer séparément le suivi des travaux
start-all.sh/stop-all.sh
_ doit être exécuté sur le noeud maître
Vous utiliseriez start-all.sh
sur un cluster à nœud unique (c’est-à-dire où vous auriez tous les services sur le même nœud. Le namenode est également le datanode et est le nœud maître ).
Dans configuration multi-nœuds ,
Vous utiliserez start-all.sh
sur le nœud maître et lance également ce qui est nécessaire sur les esclaves.
Alternativement
Utilisation start-dfs.sh
sur le noeud sur lequel vous voulez que le Namenode soit exécuté. Cela affichera [~ # ~] hdfs [~ # ~] avec le Namenode exécuté sur la machine sur laquelle vous avez exécuté la commande et Datanodes sur les machines répertoriées dans le fichier esclaves.
Utilisation start-mapred.sh
sur la machine sur laquelle vous prévoyez d'exécuter le Jobtracker. Cela fera apparaître le cluster Map/Reduce avec Jobtracker en cours d'exécution sur la machine sur laquelle vous avez exécuté la commande et Tasktrackers en cours d'exécution sur les machines répertoriées dans le fichier esclave.
hadoop-daemon.sh
comme indiqué par Tariq est utilisé sur chaque noeud individuel. Le nœud maître ne démarrera pas les services sur les esclaves. Dans une configuration à nœud unique, il agira de la même manière que start-all.sh
_ Dans une configuration multi-nœuds, vous devez accéder à chaque nœud (maître ainsi qu’esclaves) et l’exécuter sur chacun d’eux.
Regardez thisstart-all.sh
il appelle config suivi de dfs et mapred
démarrage
start-dfs.sh (starts the namenode and the datanode)
start-mapred.sh (starts the jobtracker and the tasktracker)
arrêt
stop-dfs.sh
stop-mapred.sh