1、安裝環境java
操做系統:
CentOS7.2.1511node
hadoop版本:
2.7.3linux
節點信息:web
角色 | 地址 |
---|---|
Namenode | 192.168.1.182 |
Datanode | 192.138.1.186 |
Datanode | 192.168.1.122 |
2、安裝jdkbash
安裝jdk8,注意:hadoop2.x,必須是jdk8
cookie
curl -LO -H "Cookie: oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u71-b15/jdk-8u71-linux-x64.rpm"
安裝jdkoracle
rpm -Uvh jdk-8u71-linux-x64.rpm
配置環境變量app
打開/etc/profile
,在文件最後面添加以下內容框架
export JAVA_HOME=/usr/java/default export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
最後,source /etc/profilessh
3、設置/etc/host
三個節點都配置
192.168.1.182 hadoop-namenode 192.168.1.186 hadoop-datanode-1 192.168.1.122 hadoop-datanode-2
4、配置密鑰對,能夠免密執行。
生成SSH KEY並將其拷貝到各個節點主機上
依次執行以下命令:
ssh-keygen ssh-copy-id localhost #免密鑰登陸本機 ssh-copy-id hadoop-datanode-1 ssh-copy-id hadoop-datanode-2
5、安裝hadoop(三個節點都配置)
#下載2.7.3版本hadoopcurl -O #安裝到/usr/hadoop目錄 tar zxvf hadoop-2.7.3.tar.gz -C /usr/hadoop --strip-components 1
一、配置環境變量
export HADOOP_HOME=/usr/hadoop export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_YARN_HOME=$HADOOP_HOME export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native" export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin source ~/.bashrc
二、配置datenode文件目錄(三個節點都配置)
cd /usr/hadoop/ mkdir datanode
三、配置hdfs(三個節點都配置)
打開~/etc/hadoop/hdfs-site.xml
文件,在<configuration> - </configuration>
之間添加以下內容:
<property> <name>dfs.replication</name> <value>2</value> <description>副本個數,默認是3,應小於datanode機器數量</description> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:///usr/hadoop/datanode</value> <description>datanode上數據塊的物理存儲位置</description> </property>
四、主節點增長內容(只有namenode節點)
在namenode節點,打開~/etc/hadoop/hdfs-site.xml
文件,新增以下內容:
<property> <name>dfs.namenode.name.dir</name> <value>file:///usr/hadoop/datanode/name</value> <description>namenode上存儲hdfs名字空間元數據 </description> </property>
五、配置hadoo core(三個節點都配置)
打開~/etc/hadoop/core-site.xml
文件,在<configuration> - </configuration>之間添加以下內容:
<property> <name>fs.defaultFS</name> <value>hdfs://hadoop-namenode:9000/</value> </property>
六、在hadoop中設置JAVA_HOME
環境變量(三個節點都配置)
首先經過以下命令在本機修改hadoop-env.sh
文件中的環境變量:
sed -i -e 's/\${JAVA_HOME}/\/usr\/java\/default/' hadoop-env.sh
七、配置map-reduce(只在namenode節點配置)
打開~/etc/hadoop/mapred-site.xml
文件,新增以下內容:
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> <description>指定mapreduce使用yarn框架</description> </property> </configuration>
八、配置yarn(三個節點都配置)
首先打開~/etc/hadoop/yarn-site.xml文件,在<configuration> - </configuration>之間添加以下內容:
<property> <name>yarn.resourcemanager.hostname</name> <value>hadoop-namenode</value> <description>指定resourcemanager所在的hostname</description> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> <description>NodeManager上運行的附屬服務。需配置成mapreduce_shuffle,纔可運行MapReduce程序</description> </property>
九、配置slave
打開etc/hadoop/slaves文件,添加以下內容:
hadoop-namenode hadoop-datanode-1 hadoop-datanode-2
十、在Namenode上運行以下命令,分別啓動hdfs和yarn服務
初始化:hdfs namenode -format start-dfs.sh start-yarn.sh
十一、驗證
在Namenode上運行jps
命令,應該會看到以下進程
NameNode SecondaryNameNode NodeManager DataNode ResourceManager Jps
在Datanode上運行jps
命令,應該會看到以下進程:
NodeManager Jps DataNode
十二、web界面
192.168.1.182:50070
192.168.1.182:8088
總結:
安裝步驟
一、配置jdk
二、配置ssh
三、安裝hadoop
四、配置hfds-site.xml,注意,主節點比其餘節點多內容。
五、配置core-site.xml,三個節點都配置
六、配置yarn-site.xml,三個節點都配置
七、配置mapred-site.xml,主節點配置
錯誤:
錯誤1:
屢次format致使id識別失敗
處理方法:刪除datanode目錄,或者重命名目錄。
重命名了一下各個數據節點DataNode