[已決解]關於Hadoop start-all.sh啟動問題


問題一:出現Attempting to operate on hdfs namenode as root

寫在最前注意:
1、master,slave都需要修改start-dfs.sh,stop-dfs.sh,start-yarn.sh,stop-yarn.sh四個文件
2、如果你的Hadoop是另外啟用其它用戶來啟動,記得將root改為對應用戶

HDFS格式化后啟動dfs出現以下錯誤:

[root@master sbin]# ./start-dfs.sh
Starting namenodes on [master]
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 [slave1]
ERROR: Attempting to operate on hdfs secondarynamenode as root
ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting operation.

查度娘,見一仁兄的博客有次FAQ,故參考處理順便再做一記錄
參考地址:https://blog.csdn.net/u013725455/article/details/70147331

在/hadoop/sbin路徑下:
將start-dfs.sh,stop-dfs.sh兩個文件頂部添加以下參數

HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_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


# Licensed to the Apache Software Foundation (ASF) under one or more

 

修改后重啟 ./start-dfs.sh,成功!

[root@master sbin]# ./start-dfs.sh
WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER.
Starting namenodes on [master]
上一次登錄:日 6月  3 03:01:37 CST 2018從 slave1pts/2 上
master: Warning: Permanently added 'master,192.168.43.161' (ECDSA) to the list of known hosts.
Starting datanodes
上一次登錄:日 6月  3 04:09:05 CST 2018pts/1 上
Starting secondary namenodes [slave1]
上一次登錄:日 6月  3 04:09:08 CST 2018pts/1

from: https://blog.csdn.net/lglglgl/article/details/80553828

 

問題二:正常啟動后jps查看無namenode,datanode

解決方法:

1.先查看是不是的防火牆開啟,將防火牆關閉:service iptbales stop
2.查看端口狀態:telnet 192.168.86.10 9000(192.168.86.10是我自己的靜態ip)
     如果出現不能連接,那么我們需要修改我們的hosts
3.修改hosts:vi /etc/hosts 
     將127:0:0:1   localhost localhost.localdomain localhost4 localhost4.localdomain4
     改為 ::1      localhost localhost.localdomain localhost4 localhost4.localdomain4
     或者將127:0:0:1   localhost localhost.localdomain localhost4 localhost4.localdomain4 刪除
   在下方寫入     192.168.86.10     mini1 localhost (192.168.86.10是我自己的靜態ip      mini1是我的主機名)
4.重新啟動network:service network restart或sudo /etc/init.d/networking restart

from: https://blog.csdn.net/u010599953/article/details/75635058

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM