Centos7搭建Hadoop集群V3.3.4
- 一、准备工作
- 1、配置hostname
- 2、hosts映射
- 3、关闭防火墙
- 4、同步时间
- 5、关闭selinux
- 6、配置ssh免密登陆
- 7、重启
- 二、安装所需环境
- 三、修改配置
- hadoop-env.sh
- core-site.xml
- hdfs-site.xml
- mapred-site.xml
- yarn-site.xml
- workers
- 四、初始化并启动
- 五、测试hdfs
本次安装Hadoop版本为3.3.4
安装规划(3台机器)
node01 :192.168.117.20 NameNode DataNode
node02 :192.168.117.21 DataNode
node03 :192.168.117.22 DataNode SecondaryNameNode
一、准备工作
1、配置hostname
hostname分别为node01,node02,node03
hostnamectl set-hostname node01
hostnamectl set-hostname node02
hostnamectl set-hostname node03
2、hosts映射
vim /etc/hosts
192.168.117.20 node01
192.168.117.21 node02
192.168.117.22 node03
3、关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
4、同步时间
yum install ntpdate
ntpdate ntp5.aliyun.com
5、关闭selinux
vim /etc/selinux/config
修改为 SELINUX=disabled
6、配置ssh免密登陆
ssh-keygen -t rsa
ssh-copy-id node01
ssh-copy-id node02
ssh-copy-id node03
测试
7、重启
reboot
二、安装所需环境
1、jdk安装
cd /etc/profile.d
vim jdk.sh
export JAVA_HOME=/opt/button/jdk
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
验证
java -version
2、hadoop安装
下载安装包
配置环境变量
vim /etc/profile.d/hadoop.sh
export HADOOP_HOME=/opt/button/hadoop/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile
验证
hadoop version
创建hadoop数据目录:
mkdir /opt/button/hadoop/data
cd /opt/button/hadoop
chmod -R 777 ./data/
三、修改配置
配置位于hadoop解压目录etc/hadoop目录下,三台机器配置保持一致
hadoop-env.sh
vim hadoop-env.sh
export JAVA_HOME=/opt/button/jdk
core-site.xml
<!-- 指定HADOOP所使用的文件系统schema&#xff0c;NameNode的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://node01:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/button/hadoop/data</value>
</property>
<!-- 设置HDFS web UI用户身份 -->
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property>
<!-- 文件系统垃圾桶保存时间 -->
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node03:50090</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/opt/button/hadoop/data/</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/opt/button/hadoop/data/</value>
</property>
mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
yarn-site.xml
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- ResourceManager的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node01</value>
</property>
<!-- 关闭yarn内存检查 -->
<property>
<name>yarn.nodemanager.pmem-check-enabled</name>
<value>false</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
workers
vim workers
node01
node02
node03
四、初始化并启动
1、初始化
如果第一次启动集群需格式化NameNode&#xff0c;三个节点都操作
hdfs namenode –format
注&#xff1a;如果不是第一次&#xff0c;需要先执行stop-all.sh&#xff0c;然后删除data与logs中的文件再执行初始化命令
2、启动
在node01节点上的sbin目录找到start-all.sh并执行即可
执行如下操作解决此问题
vim /etc/profile.d/my_env.sh
export HDFS_NAMENODE_USER&#61;root
export HDFS_DATANODE_USER&#61;root
export HDFS_SECONDARYNAMENODE_USER&#61;root
export YARN_RESOURCEMANAGER_USER&#61;root
export YARN_NODEMANAGER_USER&#61;root
source /etc/profile
重新执行start-all.sh
查看启动的服务
NameNode默认端口9870
http://192.168.117.20:9870/
ResourceManager默认端口8088
五、测试hdfs
hadoop fs -mkdir /hfile
hadoop fs -put input.txt /hfile
hadoop fs -ls /hfile