Linux配置Hadoop单机模式
一、准备工作
- 一台装有CentOS 7 的虚拟机并且要能远程连接
- JDK和Hadoop的安装包
- 两个软件 Xshell 和Xftp(或filezilla)
1.首先,将JDK和Hadoop的安装包通过Xftp传入虚拟机
当然也可以用其他软件,下图用的是filezilla
)]
注意:我们将JDK放入/usr/local/java 而Hadoop放入/usr/local/hadoop,这样方便我们管理哦
2.我们要关闭系统的防火墙!!!
systemctl disable firewalld #永久关闭防火墙
systemctl stop firewalld #暂时关闭防火墙
3.修改用户名以及对应的IP
vi /etc/hostname #改为server1
vi /etc/hosts #改为server1
4.进行SSH免密互登设置
ssh-keygen -t dsa
在命令执行过程中敲击两遍回车
二、安装JAVA环境
1. 我们先切换到/usr/local/java
cd /usr/local/java
2.解压jdk
tar -zxvf jdk-8u144-linux-x64.tar.gz #名称根据实际情况
3.配置环境变量
vi /etc/profile
按 i 在最后插入以下
set java environment
JAVA_HOME=/usr/local/java/jdk1.8.0_144
JRE_HOME=/usr/local/java/jdk1.8.0_144/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
注意:其中 JAVA_HOME, JRE_HOME 请根据自己的实际安装路径及 JDK 版本配置。
4.让修改生效:
source /etc/profile
5. 测试
java -version
显示 java 版本信息,则说明 JDK 安装成功:
三、搭建Hadoop环境
1.我们先切换到cd /usr/local/hadoop
cd /usr/local/hadoop
2.解压hadoop安装包
tar -zxvf hadoop-2.6.0.tar.gz
3.新建几个目录
在/root目录下新建几个目录,复制粘贴执行下面的命令:
mkdir /root/hadoop
mkdir /root/hadoop/tmp
mkdir /root/hadoop/var
mkdir /root/hadoop/dfs
mkdir /root/hadoop/dfs/name
mkdir /root/hadoop/dfs/data
4. 修改etc/hadoop中的一系列配置文件
/usr/local/hadoop/hadoop/hadoop-2.6.0/etc/hadoop/
4.1我们先切换到该目录下,查看该目录下的文件
cd /usr/local/hadoop/hadoop-2.6.0/etc/hadoop/
4.2修改core-site.xml
vi core-site.xml
在节点内加入配置:
<property>
<name>hadoop.tmp.dir</name>
<value>/root/hadoop/tmp</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://server1:9000</value>
</property>
- **注意:
hdfs://server1:9000
此处应与hostname保持一致 **
4.3修改hadoop-env.sh
vi hadoop-env.sh
将export JAVA_HOME=${JAVA_HOME}
修改为:
export JAVA_HOME=/usr/local/java/jdk1.8.0_144
说明:修改为自己的JDK路径。此处可以与系统JAVA环境一致,也可以单独配置。
4.4修改hdfs-site.xml
vi hdfs-site.xml
在 节点内加入配置:
<property>
<name>dfs.name.dir</name>
<value>/root/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/root/hadoop/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
4.5 修改mapred-site.xml.template
vi mapred-site.xml.template
在 节点内加入配置:
<property>
<name>mapred.job.tracker</name>
<value>server1:49001</value>
</property>
<property>
<name>mapred.local.dir</name>
<value>/root/hadoop/var</value>
</property>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
4.5 修改yarn-site.xml文件
vi yarn-site.xml
在 节点内加入配置:
<property>
<name>yarn.resourcemanager.hostname</name>
<value>server1</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>${yarn.resourcemanager.hostname}:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>${yarn.resourcemanager.hostname}:8030</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>${yarn.resourcemanager.hostname}:8088</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.https.address</name>
<value>${yarn.resourcemanager.hostname}:8090</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>${yarn.resourcemanager.hostname}:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>${yarn.resourcemanager.hostname}:8033</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>2048</value>
</property>
<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>2.1</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>2048</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
四、启动Hadoop
1.切换到cd /usr/local/hadoopetc/hadoop/hadoop-2.6.0/bin
cd /usr/local/hadoopetc/hadoop/hadoop-2.6.0/bin
2. 初始化
./hadoop namenode -format
3.启动
cd /usr/local/hadoopetc/hadoop/hadoop-2.6.0/sbin
执行初始化脚本,也就是执行命令:
./start-all.sh
第一次执行上面的启动命令,会需要我们进行交互操作,在问答界面上输入yes回车。
4.验证访问
- 访问:http://192.168.171.129:50070【IP:50070】
访问:http://192.168.171.129:8088【IP+8088】