HDFS_NAMENODE_USER, HDFS_DATANODE_USER & HDFS_SECONDARYNAMENODE_USER pas défini
Je suis nouveau sur hadoop.
Je suis en train d'installer hadoop dans mon ordinateur portable en Pseudo-mode Distribué.
Je suis en cours d'exécution avec l'utilisateur root, mais j'obtiens le message d'erreur ci-dessous.
root@debdutta-Lenovo-G50-80:~# $HADOOP_PREFIX/sbin/start-dfs.sh
WARNING: HADOOP_PREFIX has been replaced by HADOOP_HOME. Using value of HADOOP_PREFIX.
Starting namenodes on [localhost]
ERROR: Attempting to operate on hdfs namenode as root
ERROR: but there is no HDFS_NAMENODE_USER defined.
Aborting operation.
Starting datanodes
ERROR: Attempting to operate on hdfs datanode as root
ERROR: but there is no HDFS_DATANODE_USER defined.
Aborting operation.
Starting secondary namenodes [debdutta-Lenovo-G50-80]
ERROR: Attempting to operate on hdfs secondarynamenode as root
ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting operation.
WARNING: HADOOP_PREFIX has been replaced by HADOOP_HOME. Using value of HADOOP_PREFIX.
Aussi, je dois courir hadoop en utilisateur root comme hadoop n'est pas en mesure d'accéder à service ssh avec un autre utilisateur.
Comment fixer le même?
- Merci d'éditer votre question à clarifier la façon dont vous avez installé Hadoop. Êtes-vous de lire la documentation officielle?
- ci-dessous est le lien que j'ai fais pour installer hadoop.
- dzone.com/articles/getting-hadoop-and-running
- Cet article est de 4 ans, ce qui n'est pas Hadoop 3. Tous les scripts de démarrage changé
Vous devez vous connecter pour publier un commentaire.
suffit de faire ce qu'elle vous demande:
La cause de ce problème,
OU
Donc nous avons besoin de corriger et de le rendre conforme à chaque endroit. Ainsi, une simple solution de ce problème consiste à modifier votre
hadoop-env.sh
fichier et ajouter le nom d'utilisateur pour lequel vous souhaitez démarrer le fil de service. Donc, aller de l'avant et de modifier$HADOOP_HOME/etc/hadoop/hadoop-env.sh
en ajoutant les lignes suivantesMaintenant enregistrer et démarrer fil, hdfs service et vérifier qu'il fonctionne.
En se fondant sur le premier avertissement,
HADOOP_PREFIX
, on dirait que vous n'avez pas définiHADOOP_HOME
correctement.Que ce serait fait dans votre
/etc/profile.d
.hadoop-env.sh
est où le reste de ces variables sont définies.Veuillez vous référer à la Shell UNIX Guide
Cela n'a rien à voir avec Hadoop lui-même. C'est de base SSH de gestion de compte. Vous devez
adduser
documentation de la commande)ssh-copy-id hadoop@localhost
, par exempleSi vous n'avez pas besoin de mode distribué et veulent juste utiliser Hadoop localement, vous pouvez utiliser un Mini Cluster.
La documentation recommande également de faire un seul nœud de l'installation avant de continuer à l'pseudo distribué
Vim
${HADOOP_HOME}sbin/start-dfs.sh
&${HADOOP_HOME}sbin/stop-dfs.sh
, puis ajouter: