此前已将jdk,zookeeper在虚拟机配置成功,环境仍然为三台虚拟机(master,slave1,slave2)
安装hadoop:
1)解压安装包(master)
创建相关工作路径,解压hadoop到相应目录。
mkdir -p /usr/hadoop
cd /usr/hadoop
tar -zxvf hadoop-2.7.3.tar.gz -C /usr/hadoop/
2)添加hadoop环境变量(三台机器执行)
vim /etc/profile
添加内容:
export HADOOP_HOME=/usr/hadoop/hadoop-2.7.3
export CLASSPATH=$CLASSPATH:$HADOOP_HOME/lib
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
配置文件生效:source /etc/profile
3)配置hadoop各组件
hadoop的各个组件都是使用XML进行配置,这些文件存放在hadoop的etc/hadoop目录下
- 进入hadoop配置目录,编辑hadoop-env.sh环境配置文件
cd $HADOOP_HOME/etc/hadoop
vim /hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_171
- 编辑core-site.xml
vim /core-site.xml
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/hadoop-2.7.3/hdfs/tmp</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>
<property>
<name>fs.checkpoint.period</name>
<value>60</value>
</property>
<property>
<name>fs.checkpoint.size</name>
<value>67108864</value>
</property>
- 编辑mapred-site.xml。hadoop是没有这个文件的,需要将mapred-site.xml.template样本文件复制为mapred-site.xml。
cp mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
在中加入以下代码:
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
- yarn-site.xml
在中加入以下代码:
<property>
<name>yarn.resourcemanager.address</name>
<value>master:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:18030</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:18088</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:18025</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:18141</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
- 编辑hdfs-site.xml配置文件。
在中加入以下代码:
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/hadoop/hadoop-2.7.3/hdfs/name</value>
<final>true</final>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/hadoop/hadoop-2.7.3/hdfs/data</value>
<final>true</final>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
- 编写slave文件,添加子节点slave1和salve2
vim slaves
添加如下:
slave1
slave2
vim master
添加如下:
master
- 分发hadoop文件到slave1,slave2子节点。(master)
scp -r /usr/hadoop root@slave1:/usr/
scp -r /usr/hadoop root@slave2:/usr/
各子节点中进行以上配置。
8. master中格式化hadoop,开启hadoop(master)
格式化namenode:hadoop namenode -format
当出现“Exiting with status 0”的时候,表明格式化成功。
4)开启hadoop
start-all.sh
jps查看状态