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

ZooKeeper集群搭建步骤

一、准备虚拟机

准备三台虚拟机,对应ip地址和主机名如下:

ip地址

Hostname

192.168.153.150

ant163

192.168.153.151

ant164

192.168.153.152

ant165

  • 修改hostname,并使之生效

[root@localhost /]# hostnamectl set-hostname zookeeper1  //修改hostname
[root@localhost /]# hostname                             //查看hostname
[root@localhost /]# bash                                 //刷新

  • 进入/etc/sysconfig/network-scripts/ifcfg-ens33目录下修改网络信息

  • 重启网络服务

systemlctl restart network.service
service network restart

  • 测试ping

成功连接XShell

【注】这里可能由于内存不够导致无法创建新虚拟机。关闭虚拟机需要使用shutdown命令,不能直接使用可视化关闭。

二、安装配置zookeeper

添加压缩包,压缩包我放在/opt/install下面。

链接: https://pan.baidu.com/s/1FWn0t095KxoSz3PaKteHZw 提取码: 4ew2 复制这段内容后打开百度网盘手机App,操作更方便哦

  • 添加主机hosts

# 添加hosts
[root@hadoop02 ~]# vim /etc/hosts     # 添加IP地址和主机名
192.168.153.150 ant163
192.168.153.151 ant164
192.168.153.152 ant165

尝试连接,可以ping通

  • 将hosts文件拷贝到其他两台主机上

[root@hadoop02 ~]# scp  /etc/hosts root@ant164:/etc/
[root@hadoop02 ~]# scp  /etc/hosts root@ant165:/etc/

打开另一台机器,成功拷贝

  • 设置免密登录

进入家目录,进入.ssh目录下

# 设置免密登录
[root@hadoop02 .ssh]# ssh-keygen -t rsa -P ''# 将公钥追加到authorized_keys文件中
[root@hadoop02 .ssh]# cat /root/.ssh/id_rsa.pub >> ./authorized_keys # 将当前公钥拷贝到ant164公钥中
[root@hadoop02 .ssh]# ssh-copy-id -i ./id_rsa.pub -p22 root@ant164
[root@hadoop02 .ssh]# ssh-copy-id -i ./id_rsa.pub -p22 root@ant165

查看id_rsa.pub公钥

查看备付公钥:

# 测试免密登录是否成功
[root@hadoop02 .ssh]# ssh -p22 root@ant163
[root@hadoop02 .ssh]# ssh -p22 root@ant164
[root@hadoop02 .ssh]# ssh -p22 root@ant165

  • 将zookeeper压缩包分配到其他两台主机上

[root@ant163 .ssh]# scp /opt/install/zookeeper-3.4.5-cdh5.14.2.tar.gz root@ant164:/opt/install/
[root@ant163 .ssh]# scp /opt/install/zookeeper-3.4.5-cdh5.14.2.tar.gz root@ant165:/opt/install/

  • 在ant163上安装脚本文件

#! /bin/bash
echo 'auto install begining....'#global var
hostname=`hostname`jdk=false
hadoop=false
zk=true# JAVA_HOME
if [ "$jdk" = true ];thenecho 'jdk install set true'echo 'setup jdk-8u321-linux-x64.tar.gz'tar -zxf /opt/install/jdk-8u321-linux-x64.tar.gz -C /opt/soft/mv /opt/soft/jdk1.8.0_321 /opt/soft/jdk180sed -i '73a\export PATH=$PATH:$JAVA_HOME/bin' /etc/profilesed -i '73a\export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar' /etc/profilesed -i '73a\export JAVA_HOME=/opt/soft/jdk180' /etc/profilesed -i '73a\#jdk' /etc/profileecho 'setup jdk 8 success!!!'
fi#ZK_HOME
if [ "$zk" = true ];thenecho 'zookeeper install set true'echo 'setup zookeeper-3.4.5-cdh5.14.2.tar.gz'tar -zxf /opt/install/zookeeper-3.4.5-cdh5.14.2.tar.gz -C /opt/soft/mv /opt/soft/zookeeper-3.4.5-cdh5.14.2 /opt/soft/zk345cp /opt/soft/zk345/conf/zoo_sample.cfg /opt/soft/zk345/conf/zoo.cfgmkdir -p /opt/soft/zk345/datassed -i '12c dataDir=/opt/soft/zk345/datas' /opt/soft/zk345/conf/zoo.cfgecho "server.0=$hostname:2287:3387" >> /opt/soft/zk345/conf/zoo.cfgecho "0" > /opt/soft/zk345/datas/myidsed -i '73a\export PATH=$PATH:$ZOOKEEPER_HOME/bin' /etc/profilesed -i '73a\export ZOOKEEPER_HOME=/opt/soft/zk345' /etc/profilesed -i '73a\#ZK' /etc/profile# 刷新系统配置文件source /etc/profileecho 'setup zookeeper success!!!'
fi

  • 开启进程

# 进入到zookeeper/bin目录下
[root@ant163 bin]# ./zkServer.sh start

显示上面进程,表示zookeeper运行。

三台主机分别start,查看status

  • 启动/关闭所有zookeeper/查看所有zookeeper状态

[root@ant151 shell]# ./zkop.sh start
#! /bin/bash
case $1 in 
"start"){for i in ant151 ant152 ant153 dossh $i "/opt/soft/zk345/bin/zkServer.sh start "done
};;
"stop"){for i in ant151 ant152 ant153 dossh $i "/opt/soft/zk345/bin/zkServer.sh stop "done
};;
"status"){for i in ant151 ant152 ant153 dossh $i "/opt/soft/zk345/bin/zkServer.sh status "done
};;
esac

  • 查看所有zookeeper服务启动情况

[root@ant163 .ssh]# ./showalljps.sh
# showalljps.sh
#! /bin/bash
for i in ant151 ant152 ant153 ant154
doecho ---------- $i 服务启动状态 -------------ssh $i "$* "
done

相关文章:

ZooKeeper集群搭建步骤

一、准备虚拟机准备三台虚拟机,对应ip地址和主机名如下:ip地址Hostname192.168.153.150ant163192.168.153.151ant164192.168.153.152ant165修改hostname,并使之生效[rootlocalhost /]# hostnamectl set-hostname zookeeper1 //修改hostname …...

网际协议IP

网际协议IP 文章目录网际协议IP[toc]虚拟互联网IP地址及其表示方法分类IP地址(两级)无分类编址 CIDR网路前缀地址块地址掩码子网划分(三级IP地址)IP地址和MAC地址地址解析协议ARPIP数据报的格式IP数据报首部的固定部分中的各字段IP数据报首部的可变部分分…...

Python 语言参考手册、教程、标准库

官方文档:https://docs.python.org/zh-cn/3.11/ Python 语言参考手册 介绍了 Python 句法与“核心语义”。在力求简明扼要的同时,我们也尽量做到准确、完整。有关内置对象类型、内置函数、模块的语义在 Python 标准库 中介绍。有关本语言的非正式介绍&am…...

数据库连接池 BoneCP、HikariCP 等

文章目录 数据库连接池 BoneCP、HikariCP 等BoneCPDruidTomcat Jdbc PoolHikariCPC3p0DbcpLRUPSCachePS数据库连接池 BoneCP、HikariCP 等 BoneCP 官方说法 BoneCP 是一个高效、免费、开源的 Java 数据库连接池实现库 设计初衷就是为了提高数据库连接池性能,根据某些测试数…...

博客系统 SSM 超强硬核良心推荐之第一弹 - 预备工作

硬核 ! 从 0 到 1 完美实现 SSM 版本的博客系统 , 学会保准不吃亏!一 . SSM 版本相比于 Servlet 版本的亮点二 . 初始化数据库三 . 前端页面3.1 注册页面3.2 登录功能3.3 文章总列表页3.4 自己的文章列表页3.5 文章详情页3.6 编写博客页面大家好 , 这是新的专栏 , 博客系统 SSM…...

[Web] 简单瀑布流布局实现

目前的纯 CSS 布局, 是没办法实现比较完美的瀑布流布局的. 参考: CSS总结:瀑布流布局 - 黑白程序员 我使用 JS CSS, 并且自动布局实现了较为简单, 观赏性好的瀑布流布局. 代码 HTML: <!DOCTYPE html> <html lang"en"> <head><link rel&quo…...

多线程之死锁,哲学家就餐问题的实现

1.死锁是什么 死锁是这样一种情形&#xff1a;多个线程同时被阻塞&#xff0c;它们中的一个或者全部都在等待某个资源被释放。由于线程被无限期地阻塞&#xff0c;因此程序不可能正常终止。 2.哲学家就餐问题 有五个哲学家&#xff0c;他们的生活方式是交替地进行思考和进餐…...

UTF-8编码

介绍 UTF-8 编码 UTF-8 是一种针对 Unicode 的可变长度字符编码。 针对 Unicode&#xff1a;UTF-8 是 Unicode 的实现方式之一。相当于 Unicode 规定了字符对应的代码值&#xff0c;这个代码值需要转换为字节序列的形式&#xff0c;用于数据存储、传输。代码值到字节序列的转…...

likeshop单商户SaaS版V1.8.2说明!

likeshop单商户SaaS版V1.8.2主要更新如下&#xff1a; 新增 前端登录引导用户填写头像昵称 PC端—注册页面显示服务协议和隐私政策 PC端—首次进入商城弹出协议提示 PC端—结算页新增门店自提的配送方式 后台—PC端菜单导航栏的跳转链接支持添加自定义链接 ​​ ​​ ​ 优…...

算法训练营 day46 动态规划 最后一块石头的重量 II 目标和 一和零

算法训练营 day46 动态规划 最后一块石头的重量 II 目标和 一和零 最后一块石头的重量 II 1049. 最后一块石头的重量 II - 力扣&#xff08;LeetCode&#xff09; 有一堆石头&#xff0c;用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。 每一回合&#xf…...

nginx-host绕过实例复现

绕过Nginx Host限制第一种处理方法Nginx在处理Host的时候&#xff0c;会将Host用冒号分割成hostname和port&#xff0c;port部分被丢弃。所以&#xff0c;我们可以设置Host的值为2023.mhz.pw:xxx"example.com&#xff0c;这样就能访问到目标Server块&#xff1a;第二种处理…...

Java学习记录day9

类与对象 内部类 成员内部类 在一个类的内部定义的类。 public class Outer {private int a 10;public void outMethod() {System.out.println("这是外部类中的方法");}// 成员内部类public class Inner{private int b 10;public void innerMethod() {// 外部类…...

ActiveReports.NET 17.0 Crack by Xacker

一个完整的报告解决方案&#xff0c;用于在您的业务应用程序中设计、定制、发布和查看报告。 ActiveReports.NET 通过直观的 Visual Studio 集成报表设计器和丰富的控件帮助您提供精美的报表。ActiveReports 提供基于代码的跨平台报告、易于使用的设计器和灵活的 API。适用于桌…...

【计算机网络】传输层TCP协议

文章目录认识TCP协议TCP协议的格式字段的含义序号与确认号六个标志位窗口大小确认应答(ACK)机制超时重传机制连接管理机制三次握手四次挥手滑动窗口流量控制拥塞控制延迟应答捎带应答面向字节流粘包问题TCP异常情况总结认识TCP协议 传输控制协议 &#xff08;TCP&#xff0c;T…...

Mysql5.7安装【Windows版】

文章目录一、下载二、添加到环境变量三、添加配置文件my.ini四、安装Mysql 修改密码一、下载 下载地址 滑倒最下面有一个MySQL Community Server 选择要下载的版本 二、添加到环境变量 下载好了之后开始解压 把bin目录添加到环境变量 可以点击进入bin目录&#xff0c;直接复…...

分布式一致性算法Raft原理图释

什么是分布式一致性算法Raft 分布式一致性算法Raft&#xff1a;指在分布式场景下实现集群数据同步的解决方案 掌握了这个算法&#xff0c;就可以较容易地处理绝大部分场景的容错和数据一致性需求 Raft三大角色 跟随者&#xff08;Follower&#xff09;&#xff1a;普通群众…...

网络安全-字典生成-crunch

网络安全-字典生成-crunch crunch工具&#xff0c;在kali已经集成好了 2是代表最小字符长度 4是最大字符长度 生成了一个2M的文件 还有我们来查看这个密码本 从abcd26个英文字母的2位到4位的组合&#xff0c;他全部排列了一次 还可以自定义数字&#xff0c;特殊字符&#xf…...

闪光桐人の实习日记

2023年2月13日 1&#xff0c;认识了职场礼仪&#xff0c;学习了职场礼仪的重要性 尊重->心情愉悦->建立信任与好感->合作机遇的敲门砖 2&#xff0c;学习了职场礼仪中的邮件礼仪 模板管理中设置自己的名片 部门写到三级部&#xff0c;如果部门名太长要换一行 发送…...

PostgreSQL 常见配置参数

max_wal_size : 两个检查点&#xff08;checkpoint&#xff09;之间&#xff0c;WAL可增长的最大大小&#xff0c;即&#xff1a;自动WAL checkpoint允许WAL增长的最大值。该值缺省是1GB。如果提高该参数值会提升性能&#xff0c;但也是会消耗更多空间、同时会延长崩溃恢复所需…...

JAVA 常用类型之String结构

String在java中我们是用来操作字符串的&#xff0c;但它的底层结构确是一个char[]数组&#xff0c;通过数组的方式将每个字符进行保存。 使用时&#xff1a;String str"ABCD"&#xff0c;内部存value确是&#xff1a;value[A,B,C,D]; 如下图&#xff1a; 参考String源…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

java_网络服务相关_gateway_nacos_feign区别联系

1. spring-cloud-starter-gateway 作用&#xff1a;作为微服务架构的网关&#xff0c;统一入口&#xff0c;处理所有外部请求。 核心能力&#xff1a; 路由转发&#xff08;基于路径、服务名等&#xff09;过滤器&#xff08;鉴权、限流、日志、Header 处理&#xff09;支持负…...

在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能

下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能&#xff0c;包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

无法与IP建立连接,未能下载VSCode服务器

如题&#xff0c;在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈&#xff0c;发现是VSCode版本自动更新惹的祸&#xff01;&#xff01;&#xff01; 在VSCode的帮助->关于这里发现前几天VSCode自动更新了&#xff0c;我的版本号变成了1.100.3 才导致了远程连接出…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术&#xff0c;说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号&#xff08;调制&#xff09; 把信息从信号中抽取出来&am…...

页面渲染流程与性能优化

页面渲染流程与性能优化详解&#xff08;完整版&#xff09; 一、现代浏览器渲染流程&#xff08;详细说明&#xff09; 1. 构建DOM树 浏览器接收到HTML文档后&#xff0c;会逐步解析并构建DOM&#xff08;Document Object Model&#xff09;树。具体过程如下&#xff1a; (…...

《基于Apache Flink的流处理》笔记

思维导图 1-3 章 4-7章 8-11 章 参考资料 源码&#xff1a; https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)

漏洞概览 漏洞名称&#xff1a;Apache Flink REST API 任意文件读取漏洞CVE编号&#xff1a;CVE-2020-17519CVSS评分&#xff1a;7.5影响版本&#xff1a;Apache Flink 1.11.0、1.11.1、1.11.2修复版本&#xff1a;≥ 1.11.3 或 ≥ 1.12.0漏洞类型&#xff1a;路径遍历&#x…...