搭建Hadoop伪分布式环境
- 在初始化好的主机上,关闭防火墙和selinux
由于本人使用的是centos7系统可能和7之前版本系统的命令不大一致,但原理一样。
关闭防火墙
systemctl stop firewalld
顺带禁用防火墙
systemctl disable firewalld
关闭selinux
setenforce 0
修改配置文件禁用selinux
vim /etc/selinux/config
修改配置为SELINUX=disabled
2. 修改主机名为centos1
hostnamectl set-hostname centos1
3. 修改/etc/hosts文件
做好IP 主机名映射
4. 设置免密登陆
ssh-keygen连续四下回车
ssh-copy-id root@192.168.0.118 并输入主机密码将密钥注册在该主机上。
5. 安装jdk
上传jdk的安装包 jdk-8u212-linux-x64.tar.gz(网上自行下载)
解压tar -zxvf jdk-8u212-linux-x64.tar.gz
配置jdk的环境变量 vim ~/.bash_profile
配置如下:
JAVA_HOME=/home/software/jdk1.8.0_212
PATH=$PATH:$JAVA_HOME/bin
初始化一把环境变量
source ~/.bash_profile
测试 Java是否安装成功。
java -version 如果有显示jdk的版本,则表明没有问题。
6. 下载Hadoop安装包
wget 国内开源Hadoop镜像http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz
解压tar zxvf hadoop-2.7.7.tar.gz
7. 添加Hadoop配置
进入到hadoop目录下的etc/hadoop
修改配置文件:
修改hadoop-env.sh
修改如下配置
export JAVA_HOME=/home/software/jdk1.8.0_212
export HADOOP_CONF_DIR=/home/software/hadoop-2.7.7/etc/hadoop/
:wq保存退出
执行 source hadoop-env.sh 使其生效。
修改core-site.xml
添加配置
<property>
<name>fs.defaultFS</name>
<value>hdfs://centos1:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/software/hadoop-2.7.7/tmp</value>
</property>
新增 hdfs-site.xml 配置
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
拷贝一份 mapred的配置文件 cp mapred-site.xml.template mapred-site.xml
修改mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
修改yarn-site.xml
<property>
<name>yarn.resourcemanager.hostname</name>
<value>centos1</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
修改slaves文件
centos1
修改/etc/profile
export HADOOP_HOME=/home/software/hadoop-2.7.7
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source 一把使其生效
8. 初始化hadoop
hadoop namenode -format
启动Hadoop
start-all.sh
至此 Hadoop伪分布式环境单见完成。
可以到http://192.168.0.118:50070验证是否成功~