当前位置: 首页 > news >正文

大数据平台迁移后yarn连接zookeeper 异常分析

大数据平台迁移后yarn连接zookeeper 异常分析

XX保险HDP大数据平台机房迁移异常分析。
异常现象:

  1. 机房迁移后大部分组件都能正常启动
  2. Yarn 启动后8088 8042等端口无法访问
  3. Hive spark 作业提交到yarn会出现卡死。
    【备注】虽然迁移,但IP不变。

1. Yarn连接zookeeper 日志报错

问题分析:

  1. yarn 6000毫秒内无法活动连接到活跃的zookeeper服务
  2. hdfs hive kafka等组件正常启动

2. Zookeeper 客户端查看zookeeper正常

问题分析:
1.zookeeper数据存在并正常显示。

3. Zookeeper 中出现错误日志

2023-09-09 11:36:30,009 - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxnFactory@222] - Accepted socket connection from /xx.xx.xx.xx:570702023-09-09 11:36:30,009 - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@908] - Processing ruok command from /xx.xx.xx.xx:570702023-09-09 11:36:30,010 - INFO [Thread-178:NIOServerCnxn@1056] - Closed socket connection for client /xx.xx.xx.xx:57070 (no session established for client)2023-09-09 11:37:29,900 - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxnFactory@222] - Accepted socket connection from /xx.xx.xx.xx:591142023-09-09 11:37:29,901 - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@908] - Processing ruok command from /xx.xx.xx.xx:591142023-09-09 11:37:29,902 - INFO [Thread-179:NIOServerCnxn@1056] - Closed socket connection for client /xx.xx.xx.xx:59114 (no session established for client)2023-09-09 11:38:29,954 - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxnFactory@222] - Accepted socket connection from /xx.xx.xx.xx:329942023-09-09 11:38:29,955 - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@908] - Processing ruok command from /xx.xx.xx.xx:329942023-09-09 11:38:29,956 - INFO [Thread-180:NIOServerCnxn@1056] - Closed socket connection for client /xx.xx.xx.xx:32994 (no session established for client)2023-09-09 11:39:30,008 - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxnFactory@222] - Accepted socket connection from /xx.xx.xx.xx:350902023-09-09 11:39:30,008 - INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@908] - Processing ruok command from /xx.xx.xx.xx:350902023-09-09 11:39:30,009 - INFO [Thread-181:NIOServerCnxn@1056] - Closed socket connection for client /xx.xx.xx.xx:35090 (no session established for client)

4. 重装yarn服务,仍然报错

由于大数据集群众多组件都会连接zookeeper集群并且数据存放其中,我们选择重装yarn 组件 报错没有任何变化(强制卸载

  • yarn:
rpm -e hadoop_3_1_5_0_152-yarn-3.1.1.3.1.5.0-152.x86_64 
hadoop_3_1_5_0_152-yarn-resourcemanager-3.1.1.3.1.5.0-152.x86_64 –nodeps 
手动安装yarn: 
yum install -y hadoop_3_1_5_0_152-yarn hadoop_3_1_5_0_152-yarn-resourcemanager

其中hive spark tez Zeppelin 对yarn有依赖,可先在管理页面进行增删操作即可)

5. 手动删除zookeeper 中存放yarn集群数据后集群没有自动创建新的选举信息数据,手动创建集群无法识别

6. 分析

分析:zookeeper中缺少正确yarn集群数据信息,手动创建失效,由此可以确认zookeeper data数据出现异常。导致的可能性原因:①可能是在迁移过程中,yarn的组件ResourceManager 和 NodeManager的相关集群信息写入到zk未来得及持久化。②迁移时候服务未完全停止,导致yarn的核心组件RM和NM在zk上的数据文件受损。③新集群环境下,yarn与zookeeper的配置可能有不适配的情况。④网络异常导致的。等等

1)问题分析一

YARN 包含两个主要组件:ResourceManager 和 NodeManager。

在 YARN 中,ResourceManager 负责管理整个集群的资源分配和任务调度,NodeManager 则运行在各个工作节点上,负责启动、监视和停止应用程序的任务。

  • 当 ResourceManager 和 NodeManager 启动时,它们会向 ZooKeeper 写入以下信息:
  1. ResourceManager:ResourceManager 启动时,会向 ZooKeeper 写入有关活跃和非活跃 NM(NodeManager)节点列表、当前活跃集群管理员的信息以及正在处理的应用程序的列表信息。这些信息具体包括:为每个NM分配的容器数量、当前可用资源池的状态以及集群的全局配置。

  2. NodeManager:NodeManager 启动时,会向 ZooKeeper 写入自己的身份信息和集群中其他的 NM 节点信息。它还会向 ZooKeeper 注册自己的地址、端口、该节点的状态等信息。此外,NodeManager 定期向 ZooKeeper 发送心跳消息来更新其状态信息,以便 ResourceManager 可以根据需要重新分配集群中的资源。

​ 通过向 ZooKeeper 写入这些信息,ResourceManager 和 NodeManager 可以协调和管理集群中的各个组件,实现高可用性、容错性以及资源的正常调度。同时,这些信息也可以帮助管理员和开发人员更好地监视和管理 YARN 集群。

请注意,具体写入 ZooKeeper 的信息和路径可能会根据 YARN 的版本和配置有所不同。要了解更详细的信息,建议查阅您使用的 YARN 版本的官方文档和相关配置文件。

YARN 中 ResourceManager 和 NodeManager 向 ZooKeeper 写入的信息通常是存储在持久化节点上的,而不是普通节点。

持久化节点是指在 ZooKeeper 上创建的节点,其数据将被持久地保存在磁盘上,即使在节点断开连接或重启后也不会丢失。这种类型的节点适用于存储较为重要且需要长期保存的数据。

对于 YARN 中的信息,如 ResourceManager 的活跃和非活跃 NM 节点列表、当前活跃集群管理员的信息以及正在处理的应用程序列表等,这些数据通常被写入到持久化节点中。这样做的目的是确保即使在出现故障或重启后,这些关键信息仍然可以被恢复和使用。

相反,普通节点是指在 ZooKeeper 上创建的临时节点,其数据在节点断开连接后会被自动删除。普通节点适合存储临时性的或与会话相关的数据。

总的来说,YARN 中的关键信息通常会被写入到持久化节点中,以确保数据的持久性和可靠性。

2)问题分析二

​ 如果在机房搬迁过程中只是更改了物理位置,而 IP 地址保持不变,一般情况下对于 YARN 和 ZooKeeper 的影响是很小的。这是因为 YARN 和 ZooKeeper 主要依赖的是 IP 地址来进行通信和交互,并且它们的配置通常是基于 IP 地址进行设置的。

只要确保在机房搬迁后网络连接和路由设置正确,并且将相同的 IP 地址分配给 YARN 和 ZooKeeper 组件,它们应该能够正常工作。这意味着 YARN ResourceManager、NodeManager 以及 ZooKeeper 的集群节点都需要能够通过新的网络环境找到彼此的 IP 地址。

但是需要注意的是,在搬迁过程中可能会发生其他因素导致的问题。例如,搬迁过程中出现的硬件故障、网络配置错误、防火墙问题等都可能会对 YARN 和 ZooKeeper 的正常运行产生影响。因此,在机房搬迁后,仍然需要进行仔细的测试和验证,确保所有组件能够正常通信和工作。

总体而言,如果 IP 地址保持不变,并且在机房搬迁后适当地调整网络配置和路由信息,YARN 和 ZooKeeper 应该能够恢复正常运行。如有需要,请在搬迁过程中密切关注相关日志和错误消息,以及确保所有的配置与新的环境相匹配。

7. 解决方案:

  1. 备份zookeeper后删除zookeeper 中data数据文件version-2 ,重启后重新接入大数据集群恢复正常!

结论:由于本次机房迁移过程中出现数据文件异常所致。

相关文章:

大数据平台迁移后yarn连接zookeeper 异常分析

大数据平台迁移后yarn连接zookeeper 异常分析 XX保险HDP大数据平台机房迁移异常分析。 异常现象: 机房迁移后大部分组件都能正常启动Yarn 启动后8088 8042等端口无法访问Hive spark 作业提交到yarn会出现卡死。 【备注】虽然迁移,但IP不变。 1. Yarn连…...

Ubuntu Nginx 配置 SSL 证书

首先需要在 Ubuntu 中安装 Nginx 服务, 打开终端执行以下命令: $ sudo apt update $ sudo apt install nginx -y然后启动 Nginx 服务并设置为开机时自动启动, 执行以下命令: $ sudo systemctl start nginx $ sudo systemctl enable nginx最后再验证一下 Nginx 服务的当前状态…...

将本地前端工程中的npm依赖上传到Nexus

【问题背景】 用Nexus搭建了内网的依赖仓库,需要将前端工程中node_modules中的依赖上传到Nexus上,但是node_modules中的依赖已经是解压后的状态,如果直接机械地将其简单地打包上传到Nexus,那么无法通过npm install下载使用。故有…...

软考高级架构师下篇-16通信系统架构设计理论与实践

目录 1. 引言2. 通信系统网络架构3. 网络构建关键技术4. 网络构建5. 前文回顾1. 引言 此章节主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本节知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中…...

国庆中秋特辑(二)浪漫祝福方式 使用生成对抗网络(GAN)生成具有节日氛围的画作

要用人工智能技术来庆祝国庆中秋,我们可以使用生成对抗网络(GAN)生成具有节日氛围的画作。这里将使用深度学习框架 TensorFlow 和 Keras 来实现。 一、生成对抗网络(GAN) 生成对抗网络(GANs,…...

stm32 串口发送和接收

串口发送 #include "stm32f10x.h" // Device header #include <stdio.h> #include <stdarg.h>//初始化串口 void Serial_Init() {//开启时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Pe…...

Vite + Vue3 实现前端项目工程化

通过官方脚手架初始化项目 第一种方式&#xff0c;这是使用vite命令创建&#xff0c;这种方式除了可以创建vue项目&#xff0c;还可以创建其他类型的项目&#xff0c;比如react项目 npm init vitelatest 第二种方式&#xff0c;这种方式是vite专门为vue做的配置&#xff0c;…...

Java动态代理Aop的好处

1. 预备知识-动态代理 1.1 什么是动态代理 动态代理利用Java的反射技术(Java Reflection)生成字节码&#xff0c;在运行时创建一个实现某些给定接口的新类&#xff08;也称"动态代理类"&#xff09;及其实例。 1.2 动态代理的优势 动态代理的优势是实现无侵入式的代…...

各种存储性能瓶颈如何分析与优化?

【摘要】本文结合实践剖析存储系统的架构及运行原理&#xff0c;深入分析各种存储性能瓶颈场景&#xff0c;并提出相应的性能优化手段&#xff0c;希望对同行有一定的借鉴和参考价值。 【作者】陈萍春&#xff0c;现就职于保险行业&#xff0c;拥有多年的系统、存储以及数据备…...

Android StateFlow初探

Android StateFlow初探 前言&#xff1a; 最近在学习StateFlow&#xff0c;感觉很好用&#xff0c;也很神奇&#xff0c;于是记录了一下. 1.简介&#xff1a; StateFlow 是一个状态容器式可观察数据流&#xff0c;可以向其收集器发出当前状态更新和新状态更新。还可通过其 …...

Docker Compose初使用

简介 Docker-Compose项目是Docker官方的开源项目&#xff0c;负责实现对Docker容器集群的快速编排。 Docker-Compose将所管理的容器分为三层&#xff0c;分别是 工程&#xff08;project&#xff09;&#xff0c;服务&#xff08;service&#xff09;以及容器&#xff08;cont…...

测试与FastAPI应用数据之间的差异

【squids.cn】 全网zui低价RDS&#xff0c;免费的迁移工具DBMotion、数据库备份工具DBTwin、SQL开发工具等 当使用两个不同的异步会话来测试FastAPI应用程序与数据库的连接时&#xff0c;可能会出现以下错误&#xff1a; 在测试中&#xff0c;在数据库中创建了一个对象&#x…...

WebStorm 2023年下载、安装教程、亲测有效

文章目录 简介安装步骤常用快捷键 简介 WebStorm 是JetBrains公司旗下一款JavaScript 开发工具。已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源&#xff0c;继承了IntelliJ IDEA强大的JS部分的…...

k8s储存卷

卷的类型 In-Tree存储卷插件 ◼ 临时存储卷 ◆emptyDir ◼ 节点本地存储卷 ◆hostPath, local ◼ 网络存储卷 ◆文件系统&#xff1a;NFS、GlusterFS、CephFS和Cinder ◆块设备&#xff1a;iSCSI、FC、RBD和vSphereVolume ◆存储平台&#xff1a;Quobyte、PortworxVolume、Sto…...

【解决Win】“ 无法打开某exe提示无法成功完成操作,因为文件包含病毒或潜在的垃圾软件“

在下载某个应用程序&#xff0c;打开时出现了“无法成功完成操作因为文件包含病毒或潜在垃圾”的提示&#xff0c;遇到这个情况怎么解决&#xff1f; 下面为大家分享故障原因及具体的处理方法。 故障原因 是由于杀毒 防护等原因引起的。 解决方案 打开Windows 安全中心 选择…...

SpringBoot调用ChatGPT-API实现智能对话

目录 一、说明 二、代码 2.1、对话测试 2.2、单次对话 2.3、连续对话 2.4、AI绘画 一、说明 我们在登录chatgpt官网进行对话是不收费的&#xff0c;但需要魔法。在调用官网的API时&#xff0c;在代码层面上使用&#xff0c;通过API KEY进行对话是收费的&#xff0c;不过刚…...

element-table出现错位解决方法

先看示例图&#xff0c;这个在开发中还是很常遇到的&#xff0c;在table切换不同数据时或者切换页面时&#xff0c;容易出现&#xff1a; 解决方法很简单&#xff0c;官方有提供方法&#xff1a; 我们可以在重新渲染数据后&#xff1a; this.$nextTick(() > {this.$refs.…...

DC电源模块具有不同的安装方式和安全规范

BOSHIDA DC电源模块具有不同的安装方式和安全规范 DC电源模块是将低压直流电转换为需要的输出电压的装置。它们广泛应用于各种领域和行业&#xff0c;如通信、医疗、工业、家用电器等。安装DC电源模块应严格按照相关的安全规范进行&#xff0c;以确保其正常运行和安全使用。 D…...

zabbix自定义监控、钉钉、邮箱报警

目录 一、实验准备 二、安装 三、添加监控对象 四、添加自定义监控项 五、监控mariadb 1、添加模版查看要求 2、安装mariadb、创建用户 3、创建用户文件 4、修改监控模版 5、在上述文件中配置路径 6、重启zabbix-agent验证 六、监控NGINX 1、安装NGINX&#xff0c…...

短信、邮箱验证码本地可以,部署到服务器接口却不能使用

应对公司双验证要求&#xff0c;对本系统做邮箱、短信验证码登录&#xff0c;本地开发正常发送&#xff0c;到服务器上部署却使用失败&#xff0c;已全部解决&#xff0c;记录坑。 一、nginx拦截 先打开你的服务器 nginx.conf 看看有没有做接口拦截。&#xff08;本地可能做Sp…...

(十)学生端搭建

本次旨在将之前的已完成的部分功能进行拼装到学生端&#xff0c;同时完善学生端的构建。本次工作主要包括&#xff1a; 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...

【位运算】消失的两个数字(hard)

消失的两个数字&#xff08;hard&#xff09; 题⽬描述&#xff1a;解法&#xff08;位运算&#xff09;&#xff1a;Java 算法代码&#xff1a;更简便代码 题⽬链接&#xff1a;⾯试题 17.19. 消失的两个数字 题⽬描述&#xff1a; 给定⼀个数组&#xff0c;包含从 1 到 N 所有…...

UE5 学习系列(三)创建和移动物体

这篇博客是该系列的第三篇&#xff0c;是在之前两篇博客的基础上展开&#xff0c;主要介绍如何在操作界面中创建和拖动物体&#xff0c;这篇博客跟随的视频链接如下&#xff1a; B 站视频&#xff1a;s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业&#xff0c;项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升&#xff0c;传统的管理模式已经难以满足现代工程的需求。过去&#xff0c;许多企业依赖手工记录、口头沟通和分散的信息管理&#xff0c;导致效率低下、成本失控、风险频发。例如&#…...

MySQL 8.0 OCP 英文题库解析(十三)

Oracle 为庆祝 MySQL 30 周年&#xff0c;截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始&#xff0c;将英文题库免费公布出来&#xff0c;并进行解析&#xff0c;帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)

1.获取 authorizationCode&#xff1a; 2.利用 authorizationCode 获取 accessToken&#xff1a;文档中心 3.获取手机&#xff1a;文档中心 4.获取昵称头像&#xff1a;文档中心 首先创建 request 若要获取手机号&#xff0c;scope必填 phone&#xff0c;permissions 必填 …...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”&#xff08;简单设计&#xff09;是软件开发中的一个重要理念&#xff0c;倡导以最简单的方式实现软件功能&#xff0c;以确保代码清晰易懂、易维护&#xff0c;并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计&#xff0c;遵循“让事情保…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版

7种色调职场工作汇报PPT&#xff0c;橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版&#xff1a;职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...

Mysql中select查询语句的执行过程

目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析&#xff08;Parser&#xff09; 2.4、执行sql 1. 预处理&#xff08;Preprocessor&#xff09; 2. 查询优化器&#xff08;Optimizer&#xff09; 3. 执行器…...

深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用

文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么&#xff1f;1.1.2 感知机的工作原理 1.2 感知机的简单应用&#xff1a;基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...