文章目录
一、使用root用户启动hadoop-3.1.3报错
1.1 ERROR: Attempting to operate on hdfs namenode as root
[root@hadoop100 sbin]# ./start-dfs.sh
Starting namenodes on [hadoop100]
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 [hadoop102]
ERROR: Attempting to operate on hdfs secondarynamenode as root
ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting operation.
- 在start-dfs.sh,stop-dfs.sh两个文件顶部添加以下参数
#!/usr/bin/env bash
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
- start-yarn.sh,stop-yarn.sh顶部也需添加以下参数
#!/usr/bin/env bash
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
修改完之后解决。
1.2 JAVA_HOME is not set and could not be found
JAVA_HOME是有设置的,echo $JAVA_HOME
有显示,应该是要在hadoop中显式添加JAVA_HOME
cd /usr/loca/hadoop-3.1.3
vi etc/hadoop/hadoop-env.sh
export JAVA_HOME= ##这里将JAVA_HOME填入
启动成功