概述:Hadoop 伪分布式搭建超详细
Hadoop伪分布式搭建
虚拟机准备阶段操作安全设置防火墙相关指令关闭关闭selinuxIP设置查看机器IP修改主机名修改IP及主机名映射SSH免密登陆Hadoop伪分布式搭建JDK配置解压配置环境变量Hadoop配置解压文件修改配置文件配置Hadoop环境变量验证环境变量是否配置成功格式化NameNodeHadoop起停命令查看WebUI界面
虚拟机准备阶段操作
本文是基于CentOS 7 系统搭建
相关资源下载
链接:https://pan.baidu.com/s/1FW228OfyURxEgnXW0qqpmA 密码:18uc
安全设置
防火墙相关指令
# 查看防火墙状态 firewall-cmd --state # 停止防火墙 [root@localhost ~]# systemctl stop firewalld.service # 禁止防火墙开机自启 [root@localhost ~]# systemctl disable firewalld.service 12345678
关闭关闭selinux
[root@localhost ~]# vi /etc/selinux/config 1
将 SELINUX=enforcing
改为 SELINUX=disabled
IP设置
查看机器IP
[root@localhost ~]# ifconfig 1
修改主机名
[root@localhost ~]# vi /etc/hostname 1
修改IP及主机名映射
[root@localhost ~]# vi /etc/hosts 1
SSH免密登陆
[root@localhost ~]# ssh-keygen -t rsa # 生产密钥 # 连续三次回车 # 将密钥发送给需要登陆本机的机器,这里只有一台机器 所以发给自己 [root@localhost ~]# ssh-copy-id root@CentOS # 测试ssh [root@localhost ~]# ssh root@CentOS 123456789
Hadoop伪分布式搭建
创建 install文件夹
[root@localhost ~]# mkdir /opt/install/ 1
JDK配置
这里选用JDK8
解压
[root@localhost ~]# tar -zxvf jdk-8u144-linux-x64.tar.gz -C /opt/install/ 1
配置环境变量
[root@localhost jdk1.8.0_144]# vi /etc/profile # 加入配置 加入位置如下图所示 export JAVA_HOME=/opt/install/jdk1.8.0_144 export PATH=$PATH:$JAVA_HOME/bin # 保存后刷新环境变量 [root@localhost jdk1.8.0_144]# source /etc/profile 1234567 # 刷新完 执行命令验证JDK是否安装成功 [root@localhost jdk1.8.0_144]# java -version 12
成功界面
Hadoop配置
解压文件
[root@localhost ~]# tar -zxvf hadoop-2.9.2.tar.gz -C /opt/install/ 1
修改配置文件
[root@localhost ~]# cd /opt/install/hadoop-2.9.2/etc/hadoop 1
hadoop-env.sh
export JAVA_HOME=/opt/install/jdk1.8.0_144 1
core-site.xml
<!-- 用于设置namenode并且作为Java程序的访问入口 --> <property> <name>fs.defaultFS</name> <value>hdfs://CentOS:8020</value> </property> <!-- 存储NameNode持久化的数据,DataNode块数据 --> <!-- 手工创建$HADOOP_HOME/data/tmp --> <property> <name>hadoop.tmp.dir</name> <value>/opt/install/hadoop-2.9.2/data/tmp</value> </property> 1234567891011
hdfs-site.xml
<!-- 设置副本数量 默认是3 可自行根据需求更改 --> <property> <name>dfs.replication</name> <value>3</value> </property> <!-- 权限,可省略 --> <property> <name>dfs.permissions.enabled</name> <value>false</value> </property> <property> <name>dfs.namenode.http.address</name> <value>CentOS:50070</value> </property> 1234567891011121314
mapred-site.xml
首先拷贝一个mapred-site.xml
[root@localhost hadoop]# cp mapred-site.xml.template mapred-site.xml 1 <!-- yarn 与 MapReduce相关 --> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> 12345
yarn-site.xml
<property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> 1234
slaves
这里配置DataNode的主机名
伪分布式
情况下这里NameNode
也充当DataNode
CentOS 1
配置Hadoop环境变量
[root@localhost hadoop-2.9.2]# vim /etc/profile # 加入 export HADOOP_HOME=/opt/install/hadoop-2.9.2 export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin 1234 # 刷新环境变量 [root@localhost hadoop-2.9.2]# source /etc/profile 12
验证环境变量是否配置成功
[root@localhost hadoop-2.9.2]# hadoop version 1
格式化NameNode
目的作用:格式化hdfs系统,并且生成存储数据块的目录
[root@localhost hadoop-2.9.2]# hadoop namenode -format 1
格式化成功后如图显示
Hadoop起停命令
start-all.sh stop-all.sh 12
启动成后 jps
查看进程
查看WebUI界面
http://CentOS:50070 访问 hdfs
http://CentOS:8088 访问 yarn