在用Hadoop進行大數據分析處理時,通常配置的服務器不止一兩台。為了減少人工操作的重復性,所以hadoop提供了可以自動啟動Hadoop集群的Shell腳本。在使用Shell腳本啟動集群之前,需要進行相應的配置。
說明:$HADOOP_HOME=/root/project/hadoop(根據自己配置的路徑不同而不同)
打開 $HADOOP_HOME/etc/hadoop/workers 文件,將集群中的所有機器的 hostname 都寫到文件中。
分別打開 $HADOOP_HOME/sbin 目錄下的 start-dfs.sh、stop-dfs.sh 文件,並在文件最前面添加以下代碼:
#!/usr/bin/env bash HDFS_DATANODE_USER=root HDFS_DATANODE_SECURE_USER=hdfs HDFS_NAMENODE_USER=root HDFS_SECONDARYNAMENODE_USER=root
分別打開 $HADOOP_HOME/sbin 目錄下的 start-yarn.sh、stop-yarn.sh 文件,並在文件最前面添加以下代碼:
#!/usr/bin/env bash YARN_RESOURCEMANAGER_USER=root HADOOP_SECURE_DN_USER=yarn YARN_NODEMANAGER_USER=root
問題描述:配置完成Shell腳本后,啟動集群報錯一下信息:
hadoop start-dfs.sh Error: JAVA_HOME is not set and could not be found
解決辦法:在文件 .bashrc 文件中添加以下代碼:
export JAVA_HOME=/root/project/jdk export HADOOP_HOME=/root/project/hadoop export PATH=.:$PATH:$JAVA_HOME/bin