hadoop-3.3.0集群环境搭建

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6


# 1. 配置三台机器的IP地址

master 10.43.80.80
slave1 10.43.80.81
slave2 10.43.80.82

# 2. 关闭三台机器防火墙
systemctl stop firewalld.service

# 3. 修改主机名
对应IP地址,修改对应的主机名
master 10.43.80.80
slave1 10.43.80.81
slave2 10.43.80.82

执行命令
hostnamectl set-hostname master
hostnamectl set-hostname slave1
hostnamectl set-hostname slave2


# 4. 增加IP和主机名的映射关系
vi /etc/hosts

10.43.80.80 master
10.43.80.81 slave1
10.43.80.82 slave2

# 5. 重启服务器使得配置生效
reboot
# 1. 安装jdk
此处省略.....

# 2. 安装hadoop
下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/

上传至master服务器,解压项目
cd /usr/local/tools
tar -zxvf hadoop-3.3.0.tar.gz

# 3. 配置环境变量
vim /etc/profile
export HADOOP_HOME=/usr/local/tools/hadoop-3.3.0
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile
hadoop version

# 4. 设置配置文件
cd /usr/local/tools/hadoop-3.3.0/etc/hadoop

4.1. 文件:workers (之前文件名称叫做slave)
vi workers

# localhost
slave1
slave2

4.2. 文件:core-site.xml
vi core-site.xml

<configuration>
<!-- 指定临时文件目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/tools/hadoop-3.3.0/tmp/</value>
</property>
<!-- 配置HDFS的NameNode所在节点服务器 -->
<property>
<name>fs.default.name</name>
<value>hdfs://10.43.80.80:9000</value>
</property>
</configuration>

cd /usr/local/tools/hadoop-3.3.0
mkdir tmp

4.3. 文件:hdfs-site.xml
vi hdfs-site.xml

<configuration>
<!-- 指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!-- 指定Hadoop辅助名称节点主机配置 -->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>10.43.80.80:50090</value>
</property>
<!-- namenode节点数据保存的位置 -->
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/tools/hadoop-3.3.0/tmp/dfs/name</value>
</property>
<!-- datanode节点数据保存的位置 -->
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/tools/hadoop-3.3.0/tmp/dfs/data</value>
</property>
</configuration>

4.4. 文件:mapred-site.xml
vi mapred-site.xml

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>10.43.80.80:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>10.43.80.80:19888</value>
</property>
</configuration>

4.5. 文件:yarn-site.xml
vi yarn-site.xml

<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

5. 配置jdk环境
在hadoop-env.sh启动脚本中,添加jdk路径
vi /usr/local/tools/hadoop-3.3.0/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/local/tools/jdk-11.0.12

6. 修改脚本用户信息
cd /usr/local/tools/hadoop-3.3.0/sbin

6.1. 在start-dfs.sh和stop-dfs.sh脚本中添加如下信息
HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
6.2. 在start-yarn.sh和stop-yarn.sh脚本中添加如下信息
YARN_RESOURCEMANAGER_USER=root
HDFS_DATANODE_SECURE_USER=yarn
YARN_NODEMANAGER_USER=root


7. 同步部署包
将master上面设置好的项目包hadoop-3.3.0同步至slave1和slave2

scp -rp /usr/local/hadoop slave1:/usr/local/hadoop
scp -rp /usr/local/hadoop slave2:/usr/local/hadoop
# 1. ssh免密登录

1.1. 三台机器分别生成公钥
cd ~

ssh-keygen
回车
回车
回车


1.2. 集成三台服务器公钥,并分发 (在master操作)
将其他两台的公钥拷贝到authorized_keys中,效果如下所示
cp id_rsa.pub ~/.ssh/authorized_keys
vi authorized_keys
xxxxx root@master
xxxxx root@slave1
xxxxx root@slave2

分发文件
scp -rp authorized_keys slave1:~/.ssh/
scp -rp authorized_keys slave2:~/.ssh/


1.3. 验证
[root@master ~]# ssh slave2
Last login: Tue Sep 7 06:55:59 2021 from slave1
[root@slave2 ~]# ssh master
Last login: Mon Sep 6 22:56:56 2021 from slave1
[root@master ~]# ssh slave1
Last login: Tue Sep 7 06:56:51 2021 from master
# 1. 初始化 (在master执行,只执行一次,slave不需要执行)
hdfs namenode -format


# 2. 启动hadoop (在master执行命令)
./start-dfs.sh
./start-yarn.sh

效果如下所示
[root@master sbin]# jps
100995 NameNode
101827 Jps
101222 SecondaryNameNode
101480 ResourceManager

[root@slave1 hadoop-3.3.0]# jps
3204 Jps
3048 DataNode
3144 NodeManager

[root@slave2 hadoop-3.3.0]# jps
2754 DataNode
2850 NodeManager
2910 Jps
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Hadoop

“hadoop-3.3.0集群环境搭建” 的相关文章