關於Hadoop叢集的配置方法——另附安裝網址
hadoop-2.6.0.tar.gz(壓縮包網址 https://archive.apache.org/dist/hadoop/common/hadoop-2.6.0/)
配置前需要配置主機名:vi etc/hosts
ip loclhost
...
1、修改目錄許可權
chown -R root:root hadoop260/
2、配置JDK
[root@vwmaster hadoop260]# vi etc/hadoop/core-site.xml
export JAVA_HOME=/opt/bigdata/java/jdk180
3、hadoop js 檔案系統,叢集配置時將IP改為主機名
[root@vwmaster hadoop260]# vi etc/hadoop/core-site.xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://vwmaster:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/opt/bigdata/hadoop/hadoop260</value> </property> <property> <name>hadoop.proxyuser.root.hosts</name> <value>*</value> </property> <property> <name>hadoop.proxyuser.root.groups</name> <value>*</value> </property> </configuration>
4、hadoop replicas備份
[root@vwmaster hadoop260]# vi etc/hadoop/hdfs-site.xml <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> <!-- <property> <name>dfs.hosts</name> <value>/opt/bigdata/hadoop/hadoop260/etc/hadoop/slaves</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>vwmaster:50090</value> </property> <property> <name>dfs.namenode.dir</name> <value>/opt/bigdata/hadoop/hdfs/namenode</value> </property> <property> <name>dfs.datanode.dir</name> <value>/opt/bigdata/hadoop/hdfs/datanode</value> </property> --> </configuration>
5、hadoop mapreduce 計算框架
[root@vwmaster hadoop260]# cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml [root@vwmaster hadoop260]# vi etc/hadoop/mapred-site.xml <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <!-- <property> <name>mapreduce.jobhistory.address</name> <value>vwmaster:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>vwmaster:19888</value> </property> --> </configuration>
6、hadoop yarn 的排程管理
#---- yarn.log-aggregation.retain-seconds 新增yarn日誌保留時間為7天(單位秒) ----# #---- yarn.nodemanager.aux-services.mapreduce.shuffle.class 新增指定shuffle計算具體型別 ----# #---- yarn.resourcemanager.hostname 新增yarn主機名 ----# [root@vwmaster hadoop260]# vi etc/hadoop/yarn-site.xml <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>vwmaster</value> </property> <!-- <property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property> <property> <name>yarn.log-aggregation.retain-seconds</name> <value>604800</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> --> </configuration>
7、hadoop slaves 配置(若hadoop 3.0 以上版本 slaves更名為workers)
[root@vwmaster hadoop260]# vi etc/hadoop/slaves
localhost => 從節點需要用於資料計算,配置所有的從節點
8、hadoop 環境變數
export HADOOP_HOME=/opt/bigdata/hadoop/hadoop260 export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export YARN_HOME=$HADOOP_HOME export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
記得環境變數配置完成後需要啟用:resource /etc/profile
9、在hadoop260/bin/下格式化hdfs
[root@vwmaster bin]# hdfs namenode -format
出現SHUTDOWN_MSG:Shutting down NameNode at vmaster/20.0.0.100則成功
10、配置hadoop-native庫
tar -xvf hadoop-native-64-2.6.0.tar -C /opt/bigdata/hadoop/hadoop260/lib/native/
將其解壓在hadoop260/lib/native目錄
11、啟動hadoop historyserver
[root@vwmaster bin]# start-all.sh
[root@vwmaster sbin]# ./mr-jobhistory-daemon.sh start historyserver
注:由於啟動/關閉hadoop需要密碼,所以需要配置免密,同理也需要對從機進行免密
[root@vwmaster bin]# cd ~ [root@vwmaster ~]# cd .ssh/ [root@vwmaster .ssh]# ls authorized_keys id_rsa id_rsa.pub known_hosts [root@vwmaster .ssh]# cat id_rsa.pub >> authorized_keys [root@vwmaster .ssh]# ssh localhost
12、對從機進行配置
將配置好的hadoop進行壓縮
tar -cvf hadoop.tar.gz hadoop/
將其複製到從機(需免密,見11)
scp hadoop.tar.gz root@hostname:/dir
在從機上進行解壓
tar -zxvf hadoop.tar.gz -C /dir
注意:從機與主機路徑不一致的情況下,需要修改路徑與環境變數
source /etc/profile