大数据学习初级入门教程(十六) —— Hadoop 3.x 完全分布式集群的安装、启动和测试

news/2024/7/9 20:25:08 标签: hadoop, 大数据, 分布式, 集群, 部署

好久没用 Hadoop 集群了,参考以前写的《大数据学习初级入门教程(一) —— Hadoop 2.x 完全分布式集群的安装、启动和测试_孟郎郎的博客-CSDN博客》和《大数据学习初级入门教程(十二) —— Hadoop 2.x 集群和 Zookeeper 3.x 集群做集成_孟郎郎的博客-CSDN博客》,下载了目前官网最新的版本 hadoop-3.3.5 再重温下集群部署。按步骤进行到格式化集群步骤时,发现不少和老版本不一致的地方,这里记录如下。

问题1)ERROR: Attempting to operate on *** as root

[root@node111 hadoop]# start-dfs.sh 
Starting namenodes on [node111]
ERROR: Attempting to operate on hdfs namenode as root
ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation.
Starting datanodes
ERROR: Attempting to operate on hdfs datanode as root
ERROR: but there is no HDFS_DATANODE_USER defined. Aborting operation.
Starting secondary namenodes [node112]
ERROR: Attempting to operate on hdfs secondarynamenode as root
ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting operation.

Starting journal nodes [node115 node114 node113]
ERROR: Attempting to operate on hdfs journalnode as root
ERROR: but there is no HDFS_JOURNALNODE_USER defined. Aborting operation.
Starting ZK Failover Controllers on NN hosts [node111 node112]
ERROR: Attempting to operate on hdfs zkfc as root
ERROR: but there is no HDFS_ZKFC_USER defined. Aborting operation.
[root@node111 hadoop]# 

查了下资料,解决方法是在环境变量配置中加上下面这些配置:

export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export HDFS_JOURNALNODE_USER=root
export HDFS_ZKFC_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

注意:添加完后,一定执行命令 source ~/.bash_profile 让配置立刻生效。

还有一种方式如下,稍微繁琐些,请自行尝试。

1)将start-dfs.sh,stop-dfs.sh(在hadoop安装目录的sbin里)两个文件顶部添加以下参数

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root


2)将start-yarn.sh,stop-yarn.sh(在hadoop安装目录的sbin里)两个文件顶部添加以下参数

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root

问题2)启动集群时,发现 Namenode 节点总是启动了 Datanode

每次启动集群后,Namenode节点总是启动了 Datanode,最后发现新的版本中配置 Datanode文件为 /etc/hadoop/workers,不需要和原来那样创建 /etc/hadoop/slaves 了。

问题3)启动 journalnode 节点命令

新版本启动 journalnode 节点的命令变更如下,原命令已废弃。

hdfs --daemon start journalnode

more /soft/hadoop/hadoop-3.3.5/logs/hadoop-root-journalnode-node115.log

hdfs --daemon stop journalnode

问题4)如果访问路径 http://192.168.220.19:50070/ 无法打开页面

启动后浏览器访问 namenode 节点的监控页面,访问路径为:http://192.168.220.19:50070/,结果页面打不开,看官网发现新版本把 namenode 端口变了,访问 9870 端口即可。

问题5)测试集群高可用时,standby 无法切换为 active 状态

查看 standby 所在节点的日志,可以发现 Connection refused 错误,详细如下:

PATH=$PATH:/sbin:/usr/sbin fuser -v -k -n tcp 8020 via ssh: bash
: fuser: command not found

这是因为在 hdfs-site.xml 中配置了如下配置:

    <property>
      <name>dfs.ha.fencing.methods</name>
      <value>sshfence</value>
    </property>

因为机器上没有 fuser 程序,导致无法进行 fence,安装 psmisc 即可解决问题。

yum install psmisc

以上是部署新版集群踩的一些坑,顺手记录一下。

Good Luck!


http://www.niftyadmin.cn/n/254068.html

相关文章

Java每日一练(20230420)

目录 1. 罗马数字转整数 &#x1f31f; 2. 电话号码的字母组合 &#x1f31f;&#x1f31f; 3. 排列序列 &#x1f31f;&#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每…

docker容器:docker资源管理

目录 一、docker资源控制 1、资源控制工具 2、设置CPU使用率上限 3、CPU压力测试 4、Cgroups限制cpu使用率 5、查看容器运行状态 6、 配置容器指定CPU 7、限制容器内存使用 8、对磁盘IO配额控制&#xff08;blkio&#xff09;的限制 二、docker数据管理 1、数据管理…

python实例分析二

Python 是一种非常流行的编程语言&#xff0c;它具有易于学习和使用的特点&#xff0c;使得它在各种类型的开发任务中都得到广泛的应用。比如&#xff0c;它可以被用于 Web 应用程序的开发、科学计算、数据分析、人工智能和机器学习等领域。Python 拥有简单优雅的语法和强大的标…

【IMU】IMU知多少之42866

ICM-42688-P数据手册中加速度计和角速度计的超量程阈值分别如下&#xff1a; 加速度计超量程阈值&#xff1a; 数字量&#xff08;LSB&#xff09;&#xff1a;16g 模拟量&#xff08;g&#xff09;&#xff1a;22g 角速度计超量程阈值&#xff1a; 数字量&#xff08;LSB&a…

JVM 关键点详解

一&#xff0c;JVM 的主要组成部分及其作用 JVM包含两个子系统和两个组件&#xff0c;两个子系统为Class loader(类装载)、Execution engine(执行引擎); 两个组件为Runtime data area(运行时数据区)、Native Interface(本地接口)。 Class loader(类装载): 根据给定的全限定名类…

如何使用ref和reactive你必须要知道的场景和差异

在Vue 3中&#xff0c;ref和reactive是两种不同的数据响应式处理方式。本文将介绍它们的使用场景和差异&#xff0c;并提供相关代码示例。 ref的使用场景 ref通常用于处理简单的数据类型&#xff0c;例如数字、布尔值、字符串等。它可以让我们在模板中直接使用数据&#xff0…

无需代码!新人可操作!分享20个可视化大屏(内附下载)

做前端开发的各位&#xff0c;大都知晓老板钟爱的可视化大屏—清晰、便捷、撑排面&#xff0c;轻轻松松打破数据孤岛等一系列问题。我真的深有体会&#xff0c;前些天&#xff0c;老板去人家公司开会&#xff0c;回来就把这大屏安排上了。之前就认为大屏也不过是面子工程&#…

王道计组(23版)5_中央处理器

CPU 功能 指令控制&#xff1a;取指、分析、执行 操作控制&#xff1a;一条指令的功能由若干操作信号组合实现 时间控制、数据加工、中断处理 基本结构 运算器 ALU&#xff1a;算术/逻辑运算 暂存寄存器&#xff1a;暂存从主存读来的数据&#xff0c;透明 ACC&#xff1a;…