谨慎Apache-Zookeeper-3.5.5以后在CentOS7.X安装的坑

目录

前言

一、现场还原

 二、问题诊断

三、问题原因

 总结


前言

        最近由于项目需要,在服务器上需要搭建Hbase完全分布式集群环境。开发环境,采用的是最小节点的方式进行搭建(即3个节点的模式)。资源环境列表如下:

序号依赖组件说明
1jdk-8u201-linux-x64.tar.gz基础的jdk依赖
2hadoop-3.1.3.tar.gzhadoop依赖
3apache-zookeeper-3.5.7.tar.gzzookeeper协调器
4hbase-2.4.11-bin.tar.gzhbase数据库

        以上组件都部署在三台不同的物理机节点中,操作系统是centos7.X。本场景zookeeper用于为hbase提供外部的协调器,而不是采用Hbase内置的Zookeeper。众所周知,zookeeper依赖于jdk,需要进行提前安装并配置好相应的环境变量。本文重点在于讲解zookeeper的问题,因此关于jdk的安装请查询相关网关可以解决。

        闲言少叙,本文主要讲解在Centos7中,JDK正确安装及配置,系统防火墙也正常配置,但Zookeeper无法启动的一种可能问题,及主要的解决方案。这里也得到一个博主的帮助,再此记录,如果有朋友遇到类似的问题,能帮助您解决相应的问题。

一、现场还原

        当在目标服务器中,进入zookeeper的启动目录中,准备启动zookeeper,命令如下:

cd /software/zookeeper/bin/
./zkServer.sh start

        上述命令执行之后,zookeeper并没有正常启动。在窗口中看到如下结果:

ZooKeeper JMX enabled by default
Using config: /software/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... FAILED TO START

         进一步的,使用zookeeper的状态查看命令:

./zkServer.sh status

        将看到下面的执行结果:

ZooKeeper JMX enabled by default
Using config: /software/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Error contacting service. It is probably not running.

 二、问题诊断

        相信很多同学在看到以上的错误后,多半都会直接复制这个报错信息去搜索引擎一顿狂搜,我一度也这么干过(很容易被误导):

Client port found: 2181. Client address: localhost.
Error contacting service. It is probably not running.

         打开这些文章,如果已经解决您的问题,那么您可以不用看下去了。因为我在看了这些文章,问题依然存在。通常来说,可能会有问题都是以下几点:

        1、防火墙没有关

        2、jdk没有正确安装

        3、zoo.cfg配置文件有误

但很不幸,这些都确认没有问题。

        首先jdk已配置(java -version),防火墙查看命令:systemctl status firewalld

         其次防火墙已经关闭(如果没有关闭可执行:systemctl stop firewalld),zoo.cfg配置确认没有冲突没有问题。

        看到这里,还有一个办法,实际去看一下zookeeper的运行日志,我们找到zookeeper的logs目录,通过一下命令查看日志:

cd /logs
cat zookeeper-root-server-master.out

 此时,真正的问题才开始显示出来:

 报错信息如下:

找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain

到这里,再确认一下您下载zookeeper的版本,是不是apache-zookeeper-3.5.5以后的版本,如果您刚好是用的3.5.5以后的版本,那么请再检查一下,压缩包是不是不带bin。

三、问题原因

        其实出现这个问题的原因并不是我们配置的问题,而是我们下载软件的问题。也是在各种安装教程非常多的情况下(而且都是介绍3.5.5以前的版本安装的),大家以为下载的包是一样的,因此就忽略这个最基础的问题。找到问题后就很容易解决了,下载带bin的包即可。

        其实Zookeeper官网上是有介绍的,不同版本的更新日志,只是大家没有仔细去看,当然这个粗心的人也包括作者本人。

        打开zookeeper官网介绍:

        相信大家一定都没注意吧,如果经历过各种无效的,真的比较崩溃就权当是一种教训吧。一定要下以下红框中的版本。

         可以看到,带bin的包比不带bin的要大一下。将下载的包重新安装就好了。启动服务后可以看到正常。

 总结

        以上就是本文的主要内容,本文主要讲解在Centos7中,JDK正确安装及配置,系统防火墙也正常配置,但Zookeeper无法启动的一种可能问题及解决办法,希望可以帮助你解决困境。

参考博客:

1、zookeeper-3.5.5安装报错:找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain-新版本zookeeper易犯错误

2、zk报错:找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain|Error contacting service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/205576.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[Docker]十二.Docker consul集群搭建、微服务部署,Consul集群+Swarm集群部署微服务实战

一.Docker consul集群搭建 Consul 是 Go 语言写的开源的服务发现软件, Consul 具有 服务发现、健康检查、 服务治理、微服务熔断处理 等功能,在微服务中讲过如何搭建consul集群,接下来看看在 Dokcer 中如何去创建搭建consul 集群 1.linux上面部署consul集…

kafka C++实现生产者

文章目录 1 Kafka 生产者的逻辑2 Kafka 的C API2.1 RdKafka::Conf2.2 RdKafka::Message2.3 RdKafka::DeliveryReportCb2.4 RdKafka::Event2.5 RdKafka::EventCb2.6 RdKafka::PartitionerCb2.7 RdKafka::Topic2.8 RdKafka::Producer(核心) 3 Kafka 生产者…

系列十八、Spring bean线程安全问题

一、概述 我们知道Spring中的bean,默认情况下是单例的,那么Spring中的bean是线程安全的吗?这个需要分情况考虑,bean中是否存在成员变量?bean中的成员变量是怎么处理的?...,针对bean的状态会有不…

商品橱窗和抖音小店有什么区别?新手应该选择哪一个?

我是电商珠珠 在抖音小店内,有两种经营方式,一种是商品橱窗,还有一种是抖音小店。 很多人会将他们混之一谈,说开抖店需要粉丝,商品橱窗不用。 事实真的是这样吗? 接下来,我就来给大家讲讲二…

优化机器学习:解析数据归一化的重要性与应用

在机器学习中,数据归一化是一种数据预处理的技术,旨在将数据转换为相似的范围或标准化的分布。这样做的主要目的是消除不同特征之间的量纲差异或数值范围差异,以确保模型在训练时更稳定、更有效地学习特征之间的关系。 通常,机器…

【数据挖掘】国科大刘莹老师数据挖掘课程作业 —— 第三次作业

Written Part 1. 基于表 1 1 1 回答下列问题(min_sup40%, min_conf75%): Transaction IDItems Bought0001{a, d, e}0024{a, b, c, e}0012{a, b, d, e}0031{a, c, d, e}0015{b, c, e}0022{b, d, e}0029{c, d}0040{a, b, c}0033{a, d, e}0038…

Django报错:RuntimeError at /home/ 解决办法

错误提示: RuntimeError at /home/ Model class django.contrib.contenttypes.models.ContentType doesnt declare an explicit app_label and isnt in an application in INSTALLED_APPS. 原因剖析: 博主在使用pycharm创建Django项目的时候&#xff0…

Jmeter和Testlink自动化测试框架研究与实施

摘 要 目前基于Jmeter的接口自动化测试框架,大多只实现脚本维护和自动调度,无法与Testlink进行互通,实现测试方案与自动化实施流程连接,本文基于Testlink、Jmeter、Jenkins实现:通过Testlink统一维护接口自动化测试用…

渲染到纹理:原理及WebGL实现

这篇文章是WebGL系列的延续。 第一个是从基础知识开始的,上一个是向纹理提供数据。 如果你还没有阅读过这些内容,请先查看它们。 NSDT在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - …

webpack external 详解

作用:打包时将依赖独立出来,在运行时(runtime)再从外部获取这些扩展依赖,目的时解决打包文件过大的问题。 使用方法: 附上代码块 config.set(externals, {vue: Vue,vue-router: VueRouter,axios: axios,an…

Spark on yarn 模式的安装与部署

任务描述 本关任务: Spark on YARN 模式的安装与部署。 相关知识 为了完成本关任务,你需要掌握: Spark 部署模式的种类;Spark on YARN 模式的安装。 Spark 部署模式 Spark 部署模式主要分为以下几种,Spark Stand…

Compose入门

​ 本篇文章主要是为了对Compose有一个初步了解。知道Compose是做什么的,用Compose能干什么,在目前的各种UI框架下面有些优势,参考Google官网的解释加上一些自己的理解生成的一篇文章。本人也是Compose初学者,通过每一步学习遇到哪…

系统频繁崩溃,如何考虑系统的稳定性和可扩展性?

最近网传互联网应用信息系统频繁崩溃,语雀崩完淘宝崩,淘宝崩完滴滴崩,随着业务的发展和技术的进步,对于信息系统的要求也越来越高。信息应用系统为了满足不断增长的用户和业务需求,提高系统的稳定性和扩展性至关重要。…

网络入门---网络的大致了解

目录标题 网络发展的简单认识协议作用的理解协议的本质什么是协议分层网络通信所面对的问题OSI七层模型TCP/IP模型协议报头的理解局域网通信局域网通信基本原理报头的问题局域网的特点跨网的网络链接如何查看mac地址 网络发展的简单认识 通过之前的学习我们知道计算机是给人提…

【深度学习】基于深度学习的超分辨率图像技术一览

超分辨率(Super-Resolution)即通过硬件或软件的方法提高原有图像的分辨率,图像超分辨率是计算机视觉和图像处理领域一个非常重要的研究问题,在医疗图像分析、生物特征识别、视频监控与安全等实际场景中有着广泛的应用。 SR取得了显著进步。一般可以将现有…

创建Asp.net MVC项目实现视图页面数据传值显示

MVC中视图传值 ViewData ViewBag TempData 举例创建三中传值方式实现页面数据展示 MVC中视图传值 Asp.net MVC中Controller向View传值有多种方式,这里简单说一下其中3种方式 ViewData、ViewBag和TempData ViewData ViewData存储数据,ViewData的声明和赋值方…

扫地机器人市场持续火爆,景联文科技数据采集标注方案助力扫地机器人智能化升级

随着消费者对智能家居和清洁卫生的需求增加,扫地机器人市场规模不断扩大。市场竞争也日益激烈,各品牌都在努力提升产品性能和服务质量,以获取更大的市场份额。 IDC的统计数据显示,今年双十一前两周(2023年10月23日至20…

滴滴打车崩了!全过程

滴滴发布致歉10元补偿券,文末可领取 。 事情发生于 2023年11月27日晚~28日中午,滴滴打车服务出现大面积故障,登上微博热搜。 许多用户在使用滴滴出行时遇到了无法叫车、订单异常等问题,导致大量用户滞留在外,出行受阻…

吃火锅(Python)

题目描述 吃火锅 以上图片来自微信朋友圈:这种天气你有什么破事打电话给我基本没用。但是如果你说“吃火锅”,那就厉害了,我们的故事就开始了。 本题要求你实现一个程序,自动检查你朋友给你发来的信息里有没有 chi1 huo3 guo1。…

BUUCTF-pwn-ciscn_2019_ne_51

简单查看保护: 32为程序没有canary没有PIE,应该是简单的栈溢出。我们照着这个思路去找溢出点在哪,运行下程序看看什么情况: 程序上来是输入一个密码验证。随便输入下错误直接退出。因此我们需要到IDA中看看怎么回事: 主…