Hadoop-3.1.3伪分布式部署

Hadoop伪分布式部署

2. Hadoop 为分布式运行环境搭建

环境说明:

容器容器ip
master192.168.1.210

2.1 基础环境配置

2.1.1 配置主机名
hostnamectl set-hostname master && bash
2.1.2 修改hosts,添加映射,关闭防火墙

修改hosts

添加如下:

image-20240410181512612

[root@master ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.10.210	master

关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

查看防火墙状态如下:

[root@master ~]# systemctl status firewalld

image-20240410174338699

2.1.3 生成免密公钥
[root@master ~]# ssh-keygen -t rsa		#然后一直回车
或者
[root@master ~]# ssh-keygen -f ~/.ssh/id_rsa -P '' #免回车

image-20240410174517748

2.1.4 复制公钥到服务器
ssh-copy-id master

image-20240410174804241

2.1.5 JDK配置

解压文件到相应的位置:

[root@master ~]# tar -zxvf /opt/software/jdk-8u162-linux-x64.tar.gz -C /opt/module/

[root@master ~]# cd /opt/module/	#进入解压目录,可以给解压后的文件改个名字,方便记忆
[root@master module]# mv jdk1.8.0_162/ jdk

设置jdk环境变量:

[root@master module]# vi /etc/profile

在末尾添加如下配置:

#JAVA_HOME
export JAVA_HOME=/opt/module/jdk
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin

刷新环境变量:

[root@master module]# source /etc/profile

配置完后即可查看jdk版本号:

[root@master module]# java -version

image-20240410175020934

基础环境搭建完成!!

2.2 Hadoop伪分布数环境搭建

前提:已完成免密登录,jdk配置

2.2.1 解压包到相应位置:
[root@master module]# tar -zxvf /opt/software/hadoop-3.1.3.tar.gz -C /opt/module/
[root@master module]# mv hadoop-3.1.3/ hadoop	#改一下名字,方便记忆
2.2.2 添加hadoop环境变量
[root@master module]# vi /etc/profile

在末尾添加以下内容:

#HADOOP
export HADOOP_HOME=/opt/module/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_CLASSPATH=`$HADOOP_HOME/bin/hadoop classpath`

image-20240410175647740

:wq 保存退出后,刷新环境变量:

[root@master module]# source /etc/profile

配置好后,即可直接查看hadoop 版本号

[root@master module]# hadoop version

image-20240410175448624

2.3 修改6个主配置文件

  • 1️⃣ core.site.xml
  • 2️⃣ hdfs-site.xml
  • 3️⃣ mapred-site.xml
  • 4️⃣yarn-site.xml
  • 5️⃣ hadoop-env.sh
  • 6️⃣ workers
2.3.1先进入配置目录
[root@master module]# cd hadoop/etc/hadoop/
[root@master hadoop]# ll

可以看到如下文件:

image-20230321124310396

我们只用修改其中的6条

2.3.2 hadoop-env.sh配置:
[root@master hadoop]# vim hadoop-env.sh #告诉hadoop jdk在哪里
export JAVA_HOME=/opt/module/jdk
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

#备注:3.0后的版本需要指定服务用户

如下:

image-20240410181216890

2.3.3 workers配置

(根据自己的集群来进行配置):

[root@master hadoop]# vi workers
master

image-20230321124806539

2.3.4 core.site.xml配置:

image-20240104222915427

[root@master hadoop]# vi core-site.xml
<configuration>
<!-- hdfs的地址名称:schame,ip,port-->
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://master:9000</value>
        </property>
<!-- hdfs的基础路径,被其他属性所依赖的一个基础路径 -->
        <property>
                <name>hadoop.tmp.dir</name>
                <value>/root/hadoopdir/tmp</value>
        </property>
</configuration>
2.3.5 hdfs.site.xml:
[root@master hadoop]# vi hdfs-site.xml 
<configuration>
<!-- namenode守护进程管理的元数据文件fsimage存储的位置-->
        <property>
                <name>dfs.namenode.name.dir</name>
                <value>/root/hadoopdir/dfs/name</value>
        </property>
<!-- 确定DFS数据节点应该将其块存储在本地文件系统的何处-->
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>/root/hadoopdir/dfs/data</value>
        </property>
<!-- 块的副本数-->
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
<!-- 块的大小(128M),下面的单位是字节-->
        <property>
                <name>dfs.blocksize</name>
                <value>134217728</value>
        </property>
<!-- secondarynamenode守护进程的http地址:主机名和端口号。参考守护进程布局-->
        <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>master:9868</value>
        </property>
<!-- namenode守护进程的http地址:主机名和端口号。参考守护进程布局-->
        <property>
                <name>dfs.namenode.http-address</name>
                <value>master:9870</value>
        </property>
<!--是否开通HDFS的Web接口,3.0版本后默认端口是9870-->
        <property>
				<name>dfs.webhdfs.enabled</name>
                <value>true</value>
        </property>
</configuration>
2.3.6 mapred-site.xml:
[root@master hadoop]# vi mapred-site.xml 
<configuration>
<property>
    <!-- 指定mapreduce 编程模型运行在yarn上 -->
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>
</configuration>
2.3.7 yarn-site.xml:
[root@master hadoop]# vi yarn-site.xml
<configuration>
<property>
<!-- 指定mapreduce 编程模型运行在yarn上 -->
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
</property>
</configuration>

以前hadoop 2.X 版本,访问web界面,hdfs端口号是50070,现在3.X版本,端口号是9870(最好自己指定端口号)

2.3.8 配置好后分发到副节点(别忘了环境变量也要再次分发):

伪分布式忽略

分发完后去副节点刷新环境变量

2.3.9 初始化namenode:
[root@master ~]# hdfs namenode -format

结果:

image-20230320183413920

2.3.10 开启集群:

简易启动:

[root@master ~]# start-all.sh 

查看结果:

[root@master ~]# jps
3680 SecondaryNameNode
3236 NameNode
3435 DataNode
4571 Jps
3981 ResourceManager
4157 NodeManager

image-20240410180852682

2.4 web端口访问测试

http://ip:9870

http://ip:8088

image-20240410181035310

image-20240410181056397

完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值