项目背景:
使用start-dfs.sh一键启动Hadoop集群
[root@node1 ~]# start-dfs.sh
问题描述:
运行后报错:
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 [node1]
ERROR: Attempting to operate on hdfs secondarynamenode as root
ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting operation.
[root@node1 ~]# su -hadoop
解决方式:
一:
退出root用户,使用有授权的Hadoop来一键启动hdfs集群:
[root@node1 ~]# su hadoop
[hadoop@node1 root]$ start-dfs.sh
Starting namenodes on [node1]
Starting datanodes
Starting secondary namenodes [node1]
问题解决。
二:
输入如下命令,在环境变量中添加下面的配置
vim /etc/profile
然后向里面加入如下的内容
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
输入如下命令使改动生效
source /etc/profile
出错原因:
root用户没有在环境变量中添加Hadoop的配置。
参考文章:
https://blog.csdn.net/weixin_49736959/article/details/108897129