Ubuntu搭建Hadoop3.X分布式和高可用集群,一步步深入

这篇具有很好参考价值的文章主要介绍了Ubuntu搭建Hadoop3.X分布式和高可用集群,一步步深入。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1. 介绍

2. 基础环境

2.1 关闭防火墙

2.2 修改主机名和主机映射

2.3 免密登录

2.4 安装jdk

3. 搭建hadoop3.x完全分布式

3.1 下载包地址

3.2 上传并解压

3.3 创建目录

3.4 修改配置文件 

3.4.1 core.site.xml 

3.4.2 hdfs-site.xml

 3.4.3 yarn-site.xml

3.4.4 mapred-site.xml

3.4.5 workers

3.4.6 hadoop-env.sh

3.4 7 yarn.env.sh

4. 分发配置 

5. 启动集群

 4. 搭建高可用

4.1 安装zookeeper

4.1.1 下载并解压包

4.1.2 配置环境变量

4.1.3 修改配置文件

4.1.4 配置zoo.cfg

4.1.5 配置myid文件

4.1.6 分发配置

 4.1.7 启动zookeeper服务

4.2 修改配置文件

4.2.1 hdfs-site.xml

4.2.2 core-site.xml

4.2.3 hadoop-env.sh

4.2.4 yarn-site.xml

4.2.5 mapred-site.xml

4.3 分发配置

4.4 启动高可用集群

4.4.1 启动zookeeper

4.4.2 启动JN节点

4.4.3 hdfs格式化

4.4.4 复制元数据

4.4.5 ZKFC格式化

4.4.6 启动hdfs集群 

 4.6.7 开启yarn集群

 4.6.8 开启历史服务

5. 问题:

5.1 复制三台虚拟机然后打开另外两个虚拟机时出现以下错误

5.2 搭建完全分布式时格式化以后启动ubuntu01报错


1. 介绍

1. 完全分布式和高可用是在分布式系统中常见的两种架构概念。

  • 完全分布式(Fully Distributed)架构: 完全分布式架构是指在分布式系统中,每个节点都是相同的,没有单一节点负责所有的任务或数据。每个节点具有完整的功能和数据副本,可以处理请求并参与计算,存储和传输数据。这种架构通常用于大规模的分布式系统,例如Hadoop集群,其中每个节点都可以独立运行任务和存储数据,以提供高并发和容错能力。
  • 高可用(High Availability)架构:高可用架构是指系统能够在面临硬件或软件故障时保持连续性和可用性。在高可用架构中,系统设计了冗余的组件和备用机制,以防止单点故障,并能够快速恢复。常见的高可用性技术和策略包括故障转移,自动切换,持久性存储和监控系统。高可用架构在关键业务系统和服务中十分重要,以确保系统的持续性和可用性,防止业务中断和数据丢失。

在实际应用中,可以将完全分布式和高可用架构结合起来,以构建具有高性能和高可用性的分布式系统。例如,一个完全分布式的Hadoop集群可以使用高可用技术来确保各个节点和关键组件的持续性和可用性,从而提供可靠的大数据处理和存储解决方案。

2. Hadoop 3.x与Hadoop 2.x和Hadoop 1.x在架构和功能方面有一些区别:

  1. 架构升级:Hadoop 1.x采用了单点故障的架构,整个框架的稳定性和扩展性受到限制。Hadoop 2.x引入了YARN作为资源管理器,将资源管理和作业调度分离,架构更加灵活。而Hadoop 3.x在Hadoop 2.x的基础上进行了进一步的演进,提供了更好的可扩展性和高可用性。
  2. 高可用:Hadoop 1.x未提供内置的高可用性功能,需要依赖第三方工具来实现。Hadoop 2.x引入了HA NameNode来解决HDFS的单点故障问题。而Hadoop 3.x在HA NameNode的基础上引入了热故障切换(Hot Failover)和自动故障转移(Automatic Failover)功能,提供了更高级的高可用机制。
  3. 资源管理:Hadoop 1.x使用JobTracker来处理资源管理和作业调度,整个集群资源的分配比较简单。Hadoop 2.x引入了YARN作为资源管理器,将资源管理和作业调度分离开来,能够更好地支持多个应用程序共享集群资源。而Hadoop 3.x对YARN进行了一些改进和优化,提供了更高的资源利用率和性能。
  4. 存储层:Hadoop 2.x和Hadoop 3.x都支持HDFS作为分布式存储系统,但Hadoop 3.x引入了Hadoop Ozone来提供分布式对象存储的解决方案,适用于处理非结构化数据。

总的来说,Hadoop 3.x相对于之前的版本在架构升级、高可用性、资源管理和存储层等方面进行了很多改进和优化,提供了更好的性能和可靠性,更适合处理大规模数据和复杂的数据处理任务。

Hadoop 3.x是一个开源的分布式存储和处理大规模数据的框架,它的架构由以下几个核心组件组成:

  1. HDFS(Hadoop Distributed File System):HDFS是Hadoop的分布式文件系统,它用于存储和管理海量数据。它将数据划分成多个块,并将这些块分布在集群中的不同节点上,以实现数据的高可靠性和可扩展性。
  2. YARN(Yet Another Resource Negotiator):YARN是Hadoop的集群资源管理系统,负责分配和管理集群中的计算资源。它允许多个应用程序共享集群资源,并根据应用程序的需求动态分配资源。
  3. MapReduce:MapReduce是一种用于处理大规模数据的计算模型。它通过将任务拆分为多个Map和Reduce阶段,实现了数据的并行处理和分布式计算。Map阶段将输入数据映射为键值对,而Reduce阶段对这些键值对进行聚合和计算。
  4. Hadoop Common:Hadoop Common是Hadoop框架的基础模块,包含了许多共享的工具和库,用于支持Hadoop的其他组件。它提供了一些通用的功能,如安全认证、日志记录和网络通信等。
  5. Hadoop Ozone:Hadoop Ozone是Hadoop 3.x引入的新组件,它提供了一种分布式对象存储的解决方案。它可以在Hadoop集群上提供可靠的、高性能的对象存储服务,适用于处理大规模的非结构化数据。

这些核心组件共同工作,使Hadoop 3.x能够以高可靠性和可扩展性处理和存储大规模数据。通过将数据分布在集群中的多个节点上,并利用分布式计算模型,Hadoop 3.x能够快速处理海量数据,并实现数据的高可用和容错性。

3. 操作系统:

  • Ubuntu18

4. 软件:

  • jdk1.8
  • hadoop-3.1.0
  • zookeeper3.8.2

5. 四台服务器:

ubuntu01、ubuntu02、ubuntu03、ubuntu04

2. 基础环境

  • 关闭防火墙
  • 修改主机名,主机名和ip地址映射
  • ssh免密登录
  • 安装jdk

2.1 关闭防火墙

ufw stop

sudo systemctl stop ufw.service

sudo systemctl disable ufw.service

2.2 修改主机名和主机映射

vi /etc/hostname

vi /etc/hosts

2.3 免密登录

  • 三台机器分别生成各自的公钥、私钥
ssh-keygen -t rsa
  • 检查公钥生成是否正确
less /root/.ssh/id_rsa.pub
  • 拷贝三台机器的公钥到第一台机器

ssh-copy-id node01

  • 检查拷贝情况

less /root/.ssh/authorized_keys

或cat ~/.ssh/authorized_keys

  • 复制node01的认证到其他机器
scp /root/.ssh/authorized_keys node02:/root/.ssh
scp /root/.ssh/authorized_keys node03:/root/.ssh

2.4 安装jdk

下载包地址:

https://www.oracle.com/java/technologies/downloads/archive/

分别四台服务器:ubuntu01、ubuntu02、ubuntu03、ubuntu04都装上

  • 创建文件目录和上传jdk包

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  •  解压jdk包并重命名

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 配置环境变量

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 更新环境变量和查看是否安装成功 

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

3. 搭建完全分布式

3.1 下载包地址

hadoop包下载地址

Apache Hadoophttps://hadoop.apache.org/releases.htmlubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

 ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

3.2 上传并解压

  •  把下载好的包上传到/opt/software/hadoop,没有的需要提前创建,然后进行解压

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  •  配置环境变量

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

3.3 创建目录

cd /opt/software/hadxuoop/hdfs/

mkdir hdfs

cd hdfs

mkdir data

mkdir name

mkdir tmp

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

3.4 修改配置文件 

需要修改的配置文件都有:core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml、workers、hadoop-env.sh

cd /opt/software/hadoop/hadoop-3.1.0/etc/hadoop

3.4.1 core.site.xml 

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

3.4.2 hdfs-site.xml

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

 3.4.3 yarn-site.xml

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

3.4.4 mapred-site.xml

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

3.4.5 workers

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

3.4.6 hadoop-env.sh

# 修改内容

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

3.4 7 yarn.env.sh

# 添加以下配置
export JAVA_HOME = /usr/local/java/jdk1.8

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4. 分发配置 

  • 把ubuntu01的hadoop配置使用scp命令发送到ubuntu02/ubuntu03/ubuntu04
cd /opt/software/
scp -r hadoop/ ubuntu01: $PWD
scp -r hadoop/ ubuntu02: $PWD
scp -r hadoop/ ubuntu03: $PWD
scp -r hadoop/ ubuntu04: $PWD

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 其它三台也需要配置环境变量,步骤同上

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

5. 启动集群

  • 在ubuntu01上格式化

hdfs namenode -format

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper  

  • 在ubuntu01上启动

start-dfs.sh

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 访问ubuntu01的web端

​​http://192.168.101.101:9870/

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 启动yarn

start-yarn.sh

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 查看进程:jps

ubuntu01上

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

 ubuntu02、ubuntu03、ubuntu04

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

 4. 搭建高可用

4.1 安装zookeeper

4.1.1 下载并解压包

  • 下载zookeeper地址

Apache ZooKeeperhttps://zookeeper.apache.org/releases.htmlubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 上传压缩包并进行解压

cd /opt/software/zookeeper 

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 修改解压后的目录名称

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.1.2 配置环境变量

vi /etc/profile

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 更新环境变量 

source /etc/profile

4.1.3 修改配置文件

在/opt/software/zookeeper/zookeeper-3.8.2目录下创建目录 data 用来存放 ZK 数据 , 此路径需要在z oo.cfg 配置 文件里面使用
ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.1.4 配置zoo.cfg

  • conf目录下没有zoo.cfg,需要复制出来

cp zoo_sample.cfg zoo.cfg

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  •  修改配置
#dataDir 配置是修改
dataDir = /opt/software/zookeeper/zookeeper-3.8.2/data
# 以下内容添加在文件末尾,需要注意配置后面不能有空格
server .1 = ubuntu01:2888:3888
server .2 = ubuntu02:2888:3888
server .3 = ubuntu03:2888:3888
server .3 = ubuntu04:2888:3888

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.1.5 配置myid文件

  • 在/opt/software/zookeeper/zookeeper-3.8.2/data/目录下创建myid文件

cd /opt/software/zookeeper/zookeeper-3.8.2/data/

  • 当前主机是ubuntu01,就配1

 ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.1.6 分发配置

# 分发zookeeper文件


scp -r zookeeper-3.8.2/ root@ubuntu02:$PWD
scp -r zookeeper-3.8.2/ root@ubuntu02:$PWD

scp -r zookeeper-3.8.2/ root@ubuntu04:$PWD

将ubuntu02的myid修改为2,将ubuntu03的myid修改为3,将ubuntu04的myid修改为4

# 分发/etc/profile
scp /etc/profile root@ubuntu02:/etc/
scp /etc/profile root@ubuntu03:/etc/

scp /etc/profile root@ubuntu04:/etc/
# 然后在两个从节点执行source /etc/profile

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

 4.1.7 启动zookeeper服务

  • 四台都执行启动命令

zkServer.sh start

这是ubuntu01,四台里面ubuntu04是leader,其它均为follower

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

 下面是ubuntu02、ubuntu03、ubuntu04

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.2 修改配置文件

4.2.1 hdfs-site.xml

  • 在分布式基础上新增以下内容
    <!-- 指定hdfs的nameservices为mycluster,需要和core-site.xml中的保持一致 -->
    <property>
          <name>dfs.nameservices</name>
          <value>mycluster</value>
    </property>

    <!-- mycluster下面有两个NameNode,分别是nn1,nn2 -->
    <property>
        <name>dfs.ha.namenodes.mycluster</name>
        <value>nn1,nn2</value>
    </property>

    <!-- nn1的RPC通信地址 -->
    <property>
        <name>dfs.namenode.rpc-address.mycluster.nn1</name>
        <value>ubuntu01:8020</value>
    </property>

    <!-- nn1的http通信地址 -->
    <property>
        <name>dfs.namenode.http-address.mycluster.nn1</name>
        <value>ubuntu01:9870</value>
    </property>

    <!-- nn2的RPC通信地址 -->
    <property>
        <name>dfs.namenode.rpc-address.mycluster.nn2</name>
        <value>ubuntu02:8020</value>
    </property>

    <!-- nn2的http通信地址 -->
    <property>
        <name>dfs.namenode.http-address.mycluster.nn2</name>
        <value>ubuntu02:9870</value>
    </property>

    <!-- 指定NameNode的edits元数据的共享存储位置。也就是JournalNode列表
                 journalId推荐使用nameservice,默认端口号是:8485 -->
    <property>
        <name>dfs.namenode.shared.edits.dir</name>
        <value>qjournal://ubuntu01:8485;ubuntu02:8485;ubuntu03:8485;ubuntu04:8485/mycluster</value>
    </property>

    <!-- 指定JournalNode在本地磁盘存放数据的位置 -->
    <property>
        <name>dfs.journalnode.edits.dir</name>
        <value>/opt/software/hadoop/hdfs/journalnode/data</value>
    </property>

    <!-- 配置失败自动切换实现方式 -->
    <property>
        <name>dfs.client.failover.proxy.provider.mycluster</name>
        <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
    </property>

    <!-- 配置隔离机制方法,多个机制用换行分割,即每个机制暂用一行 -->
    <property>
        <name>dfs.ha.fencing.methods</name>
        <value>
            sshfence
            shell(/bin/true)
        </value>
    </property>

    <!-- 使用sshfence隔离机制时需要ssh免登陆 -->
    <property>
        <name>dfs.ha.fencing.ssh.private-key-files</name>
        <value>/root/.ssh/id_rsa</value>
    </property>

    <!-- 配置sshfence隔离机制超时时间 -->
    <property>
        <name>dfs.ha.fencing.ssh.connect-timeout</name>
        <value>30000</value>
    </property>

    <property>
        <name>ha.failover-controller.cli-check.rpc-timeout.ms</name>
        <value>60000</value>
    </property>

    <!-- 开启NameNode故障转移自动切换 -->
    <property>
        <name>dfs.ha.automatic-failover.enabled</name>
        <value>true</value>
    </property>

4.2.2 core-site.xml

  • 修改hdfs标识和新增zkServer地址

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.2.3 hadoop-env.sh

  • 新增以下内容

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.2.4 yarn-site.xml

  • 总的配置内容
<configuration>
<!-- 指定MR走shuffle -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>

<!-- 开启RM高可用 -->
    <property>
        <name>yarn.resourcemanager.ha.enabled</name>
        <value>true</value>
    </property>

    <!-- 指定RM的cluster id -->
    <property>
        <name>yarn.resourcemanager.cluster-id</name>
        <value>yrc</value>
    </property>

    <!-- 指定RM的名字 -->
    <property>
        <name>yarn.resourcemanager.ha.rm-ids</name>
        <value>rm1,rm2</value>
    </property>

    <!-- 分别指定RM的地址 -->
    <property>
        <name>yarn.resourcemanager.hostname.rm1</name>
        <value>ubuntu01</value>
    </property>

    <property>
        <name>yarn.resourcemanager.hostname.rm2</name>
        <value>ubuntu02</value>
    </property>

    <!-- 指定zk集群地址 -->
    <property>
        <name>yarn.resourcemanager.zk-address</name>
        <value>ubuntu01:2181,ubuntu02:2181,ubuntu03:2181,ubuntu04:2181</value>
    </property>

    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>

    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>86400</value>
    </property>

    <!-- 启用自动恢复 -->
    <property>
        <name>yarn.resourcemanager.recovery.enabled</name>
        <value>true</value>
    </property>

    <!-- 制定resourcemanager的状态信息存储在zookeeper集群上 -->
    <property>
        <name>yarn.resourcemanager.store.class</name>
        <value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore</value>
    </property>

    <!-- 关闭虚拟内存检查-->
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
</configuration>

4.2.5 mapred-site.xml

  • 总的配置内容
<configuration>
    <!-- 指定运行MapReduce作业的运行时框架 -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

    <!-- 指定JobHistory Server的监听地址和端口 -->
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>ubuntu01:10020</value>
    </property>

    <!-- 指定JobHistory Web UI的访问地址和端口 -->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>ubuntu01:19888</value>
    </property>
</configuration>

4.3 分发配置

  • 分发到ubuntu02 、ubuntu03 、ubuntu04,可以删除其它三台原来的hadoop目录,也可以只拷贝修改的文件,我这里是删除了

cd /opt/software/

scp -r hadoop/ root@ubuntu02:$PWD

scp -r hadoop/ root@ubuntu03:$PWD

scp -r hadoop/ root@ubuntu04:$PWD

4.4 启动高可用集群

4.4.1 启动zookeeper

  • 初始化前需要打开zk服务

zkServer.sh start

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.4.2 启动JN节点

  • 四台机器分别启动JN节点,第一次启动的时候需要在格式化之前分别启动四台,后面重启时则不需要

hadoop-daemon.sh start journalnode

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.4.3 hdfs格式化

  • 格式化之前需要把/opt/software/hadoop/hdfs下的目录data、name、tmp进行数据清空

rm -rf *

  • ubuntu01上进行hdfs格式化,
hdfs namenode -format

 ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.4.4 复制元数据

  • 从ubuntu01的hdfs/name/目录下复制元数据到ubuntu02的对应目录
cd /opt/software/hadoop/hdfs/name/
scp -r current/ root@ubuntu02: $PWD
ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.4.5 ZKFC格式化

  • ubuntu01上进行zkfc格式化
hdfs zkfc -formatZK
ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

4.4.6 启动hdfs集群 

start-dfs.sh

  • 出现以下进程 

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  •  查看web端

ubuntu01服务器:

http://192.168.101.101:9870/

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

ubuntu02服务器:

http://192.168.101.102:9870/

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

 4.6.7 启动yarn集群

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

 4.6.8 启动历史服务

./mr-jobhistory-daemon.sh --config /opt/software/hadoop/hadoop-3.1.0/etc/hadoop start historyserver

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

5. 问题:

5.1 复制三台虚拟机然后打开另外两个虚拟机时出现以下错误

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 原因:这是虚拟机的保护机制
  • 解决方法:在磁盘虚拟机安装目录下,把lck后缀的文件夹删除就好了

5.2 搭建完全分布式时格式化以后启动ubuntu01报错

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

  • 这个错误是因为我正在以`root`用户身份尝试启动Hadoop进程,但是没有定义相应的用户环境变量。在安全配置下,Hadoop要求用不同的用户身份来运行不同的进程,以增加集群的安全性。
  • 要解决此问题,可以按照以下步骤进行操作:

cd /opt/software/hadoop/hadoop-3.1.0/sbin

1. 在`start-dfs.sh、stop-dfs.sh`文件开头添加以下内容:

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
HDFS_JOURNALNODE_USER=root
HDFS_ZKFC_USER=root

2.  在`start-yarn.sh、stop-yarn.sh`文件开头添加以下内容:

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root

3. 现在,重新启动hdfs:
start-dfs.sh

  •  查看进程

ubuntu01上

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper

ubuntu02 、ubuntu03 、ubuntu04

ubuntu搭建hadoop hdfs,大数据,分布式,ubuntu,zookeeper文章来源地址https://www.toymoban.com/news/detail-766154.html

到了这里,关于Ubuntu搭建Hadoop3.X分布式和高可用集群,一步步深入的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于CentOS 7 的 Hadoop3版本分布式环境配置搭建

    以下是在VMware虚拟机中安装centos 7去配置hadoop。所以要准备的包 centos 7:Index of /apache/hadoop/common/hadoop-3.3.5 hadoop3.3.5:Index of /apache/hadoop/common/hadoop-3.3.5 查看原本的jdk版本   其实原来的openjdk版本也是可用的,但是hadoop3.x不支持较低版本的jdk,所以这里卸载重新安装新版本jdk文件

    2024年02月01日
    浏览(43)
  • Hadoop3.x完全分布式环境搭建Zookeeper和Hbase

    集群规划 IP地址 主机名 集群身份 192.168.138.100 hadoop00 主节点 192.168.138.101 hadoop01 从节点 192.168.138.102 hadoop02 从节点 Hadoop完全分布式环境搭建请移步传送门 先在主节点上进行安装和配置,随后分发到各个从节点上。 1.1 解压zookeeper并添加环境变量 1)解压zookeeper到/usr/local文件夹

    2024年02月04日
    浏览(31)
  • 基于Linux环境下搭建Hadoop3.3.5伪分布式集群

    目录 架构设计: 一、下载hadoop安装包 二、解压及构建软连接 三、 修改配置文件 1. 配置workers文件   //hadoop02中叫slaves 2. 修改hadoop-env.sh          3. 修改core-site.xml     4. 修改hdfs-site.xml 5. 配置:mapred-site.xml文件   6. 配置yarn-site.xml文件  四、根据hdfs-site.xml的配置项,准备数

    2024年01月19日
    浏览(36)
  • Hadoop3.1.3安装教程_单机/伪分布式配置_Hadoop3.1.3/Ubuntu18.04(16.04)

    目录 前言: 一、VMware Workstation 二、Ubuntu系统安装 新建虚拟机 三、Ubuntu系统的配置 四、更新apt 五、安装SSH、配置SSH无密码登陆  六、安装Java环境 七、安装 Hadoop3.1.3 八、Hadoop单机配置(非分布式) 九、Hadoop伪分布式配置 前言:         本篇教程由作者本人进行修改,原教

    2024年02月03日
    浏览(30)
  • 【hadoop】centos7.6+hadoop3.1.1搭建分布式hadoop环境——包含各类问题解决方案

    本文针对centos7.4即以上版本的hadoop环境搭建,因为这部分搭建是个很复杂且很容易出错的内容,所以在结合了多种搭建方案后给出最适宜当前版本的搭建。 本教程适用于CentOS 7.4即以上版本,如果是Ubuntu等其它linux内核版本则不适合。 查看系统版本: 软件 版本 获取方法 Ope

    2024年02月16日
    浏览(31)
  • 大数据技术栈-Hadoop3.3.4-完全分布式集群搭建部署-centos7(完全超详细-小白注释版)虚拟机安装+平台部署

    目录 环境条件: 1、安装虚拟机(已安装好虚拟机的可跳转至  二、安装JDK与Hadoop) (1)直接新建一台虚拟机 (2)首次启用虚拟机,进行安装 一、集群前置环境搭建(三台机器分别设置hostname、网卡(ip)配置、ssh免密登录) 1、查看一下本机与虚拟机的网卡和ip信息 (1)

    2024年02月06日
    浏览(41)
  • Hadoop3.3伪分布式安装部署

    目录 引言 实验目的及准备 实验步骤 引言 Hadoop生态的搭建有本地模式、伪分布模式、集群模式(3台机器)三种安装模式,本篇文章将详细介绍Hadoop3.3的伪分布安装模式。 实验目的及准备 一、完成Hadoop3.3伪分布安装 二、在Linux中配置jdk1.8环境变量 三、配置主机的免密钥登录

    2024年02月21日
    浏览(36)
  • Hadoop3.1.3完全分布式安装配置

    1. 将hadoop-3.1.3.tar.gz复制到虚拟机/opt/software目录下: 2.在/opt/software目录下使用tar命令解压hadoop-3.1.3.tar.gz到/opt/module目录下:  执行结果如下: 3.在/opt/module目录下修改文件夹名称: 执行结果如下:  4.打开环境变量: 执行结果如下: 5.将光标移至文件底部,按“i”键编辑并作

    2024年02月08日
    浏览(33)
  • Hadoop(01) Hadoop3.3.6安装教程,单机/伪分布式配置

    在安装 Hadoop 3.3.6 前,需要满足以下前置条件: Java Development Kit (JDK):Hadoop 是用 Java 编写的,因此需要安装并配置适当版本的 JDK。Hadoop 3.3.6 建议使用 JDK 8 或更高版本。确保正确安装 JDK,并设置 JAVA_HOME 环境变量。 SSH:Hadoop 集群中的节点需要通过 SSH 进行通信和管理。确保在

    2024年02月06日
    浏览(35)
  • Hadoop3.1.3安装教程单机伪分布式配置

    本教程使用 Ubuntu 18.04 64位 作为系统环境(或者Ubuntu 14.04,Ubuntu16.04 也行,32位、64位均可),请自行安装系统。装好了 Ubuntu 系统之后,在安装 Hadoop 前还需要做一些必备工作。 创建hadoop用户 如果你安装 Ubuntu 的时候不是用的 “hadoop” 用户,那么需要增加一个名为 hadoop 的用

    2024年02月04日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包