【赫兹威客】完全分布式ZooKeeper测试教程

本文档为完全分布式大数据环境(3台虚拟机:hadoop01~hadoop03)中ZooKeeper组件的独立测试教程,涵盖从环境准备、远程连接到服务启停及功能验证的全流程。结合视频操作步骤,详细说明每个环节的操作要点、命令及预期结果,可高效完成ZooKeeper服务集群可用性验证。

一、前期准备:环境基础信息

测试前需确认环境基础配置符合要求,避免因环境问题导致测试失败:

  • 虚拟机配置:3台虚拟机(命名为hadoop01、hadoop02、hadoop03),已完成基础环境部署
  • 系统账号:优先使用hertz账号(密码:hertz);特殊操作需使用root账号(密码:1)
  • 工具准备:Mobaxterm远程连接工具(已安装并可正常使用)

二、ZooKeeper测试详细步骤

步骤1:确认虚拟机启动状态

操作说明:分别启动3台虚拟机(hadoop01、hadoop02、hadoop03),等待每台虚拟机系统加载完成,直至均出现登录页面。

预期结果:3台虚拟机均正常启动,分别显示系统登录界面,无启动报错。

步骤2:使用Mobaxterm连接虚拟机

操作说明:打开本地Mobaxterm工具,按照伪分布式部署教程中的详细步骤,分别建立与3台虚拟机(hadoop01、hadoop02、hadoop03)的远程连接。

核心操作要点:

  • 新建远程连接,选择SSH连接方式
  • 分别输入3台虚拟机对应的IP地址(需提前确认正确)
  • 选择登录账号类型(默认为普通用户)

预期结果:3台虚拟机的Mobaxterm连接均成功,分别进入连接等待登录状态。

步骤3:输入账号密码完成登录

操作说明:在每台虚拟机对应的Mobaxterm连接成功后的登录界面,依次完成账号和密码输入。

具体操作:

  • 当终端显示账号输入提示时,输入:hertz
  • 回车后,终端显示密码输入提示,输入:hertz(密码输入时默认不显示明文)
  • 再次回车确认

预期结果:3台虚拟机均登录成功,各自终端界面显示当前登录用户及主机信息(如[hertz@hadoop01 ~]、\[hertz@hadoop02 \~\]、[hertz@hadoop03 ~]$)。

步骤4:启动ZooKeeper服务

操作说明:在登录成功的hadoop01节点Mobaxterm终端中,执行ZooKeeper集群启动命令(分布式脚本统一在hadoop01执行)。

具体命令:zk start

说明:该命令为封装的集群脚本,执行后可一键启动hadoop01~hadoop03所有节点的ZooKeeper服务,无需在各节点单独执行启动命令。

预期结果:终端无报错提示,显示3台节点ZooKeeper启动相关日志信息。

步骤5:执行jps命令验证进程状态

操作说明:启动命令执行完成后,分别在hadoop01、hadoop02、hadoop03节点的终端中输入jps命令,查看各节点当前运行的Java进程。

具体命令:jps

预期结果:3台节点的终端输出进程列表中,均包含"QuorumPeerMain"进程,说明所有节点的ZooKeeper进程启动正常。

步骤6:执行zkServer.sh status验证服务状态

操作说明:分别在hadoop01、hadoop02、hadoop03节点的终端中输入ZooKeeper状态查询命令,确认各节点服务运行模式及状态。

具体命令:zkServer.sh status

预期结果:3台节点中1台终端显示"Leader"(主节点),另外2台显示"Follower"(从节点),均无"Error contacting service"错误提示,说明ZooKeeper集群服务正常运行。

步骤7:通过zkCli.sh客户端验证功能

操作说明:在任意一台节点(如hadoop01)的终端中启动ZooKeeper客户端,执行简单节点查询操作,验证客户端与服务端的连接及核心功能。

具体操作流程:

  • 启动客户端:在终端输入命令:zkCli.sh
  • 节点查询:客户端启动成功后,输入命令:ls / ,查询根节点列表

预期结果:

  • 客户端启动无超时错误,正常进入客户端交互界面
  • 执行ls / 命令后,可列出根节点列表(如/zookeeper等)

步骤8:停止ZooKeeper服务

操作说明:功能验证完成后,在hadoop01节点的终端中执行ZooKeeper集群停止命令,关闭所有节点的服务。

具体命令:zk stop

说明:该命令为集群脚本,执行后可一键停止hadoop01~hadoop03所有节点的ZooKeeper服务。

预期结果:终端显示3台节点ZooKeeper停止相关日志,无报错提示。

相关推荐
一晌小贪欢2 小时前
Python 魔术方法实战:深度解析 Queue 模块的模块化设计与实现
开发语言·分布式·爬虫·python·python爬虫·爬虫分布式
【赫兹威客】浩哥2 小时前
【赫兹威客】伪分布式Flink测试教程
大数据·分布式·flink
小北方城市网3 小时前
Spring Cloud Gateway 生产级微内核架构设计与可插拔过滤器开发
java·大数据·linux·运维·spring boot·redis·分布式
(;_;)(╥ω╥`)3 小时前
kafka原理剖析(一)
分布式·kafka·linq
码农水水3 小时前
京东Java面试被问:分布式会话的一致性和容灾方案
java·开发语言·数据库·分布式·mysql·面试·职场和发展
XRJ040618xrj3 小时前
DR模式实现
云原生
ProgrammerPulse3 小时前
云原生超融合实践:VM 与容器混合负载下青云云易捷容器版与 SmartX 核心能力对比
云原生·超融合
【赫兹威客】浩哥3 小时前
【赫兹威客】完全分布式Spark测试教程
大数据·分布式·spark
成为你的宁宁3 小时前
【RabbitMQ 集群企业级实战:RabbitMQ 特性、存储、工作模式解析与普通集群搭建及仲裁队列搭建企业级配置】
分布式·rabbitmq