Zookeeper - [04] 分布式安装部署
一、集群规划
| 序号 | 主机名 | JDK | Zookeeper |
| 1 | node01 | ○ | ○ |
| 2 | node02 | ○ | ○ |
| 3 | node03 | ○ | ○ |
二、安装部署
1、将zookeeper安装包解压到合适的目录,如/opt/module/目录下
tar -zxvf zookeeper-x.x.x.tar.gz -C /opt/module/
2、创建data目录,并创建myid文件
cd /opt/module/apache-zookeeper-3.5.7-bin
mkdir -p data
echo 1 > data/myid
myid中只填编号
主机名 node01 node02 node03 myid 1 2 3
3、配置myid文件
# 备份zoo_sample.cfg
cd /opt/module/apache-zookeeper-3.5.7-bin/conf
cp -a zoo_sample.cfg zoo.cfg
# 配置数据存储路径以及cluster部分
vi zoo.cfg
...
# 数据存储路径
dataDir=/opt/module/zookeeper-x.x.x/data
...
####################cluster#####################
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
cluster部分解读:server.A=B:C:D
A:这个是一个数字,表示这是第几号服务器。集群模式下配置一个文件myid,这个文件在dataDir目录下,这个文件里有且只有一个数据就是A的值,Zookeeper启动时读取此文件,拿到里面的数据与zoo.cfg里面的配置信息比较从而判断到底是哪个Server。
B:是这个server.A对应的节点的地址;
C:是这个节点Follower与集群中的Leader服务器交换信息的端口;
4、分别启动zookeeper服务
[root@node01 zookeeper-x.x.x]# bin/zkServer.sh start
[root@node02 zookeeper-x.x.x]# bin/zkServer.sh start
[root@node03 zookeeper-x.x.x]# bin/zkServer.sh start
5、查看状态
[root@node01 zookeeper-x.x.x]# bin/zkServer.sh status
JMX enabled by default
Using config: /opt/module/zookeeper-x.x.x/bin/../conf/zoo.cfg
Mode: follower
[root@node02 zookeeper-x.x.x]# bin/zkServer.sh status
JMX enabled by default
Using config: /opt/module/zookeeper-x.x.x/bin/../conf/zoo.cfg
Mode: follower
[root@node03 zookeeper-x.x.x]# bin/zkServer.sh status
JMX enabled by default
Using config: /opt/module/zookeeper-x.x.x/bin/../conf/zoo.cfg
Mode: leader
三、群起脚本
脚本使用前提
1、配置三个zookeeper节点之间的ssh免密(点此查看配置方法)
2、配置三个zookeeper节点的/etc/hosts文件
3、群起脚本可以放在master节点,也可以三个节点上都放一份。
脚本内容如下
#!/bin/bash
# 定义ZooKeeper服务器列表
SERVERS=("ctos79-01" "ctos79-02" "ctos79-03")
# 定义ZooKeeper安装路径
INSTALL_PATH="/opt/module/apache-zookeeper-3.5.7-bin/bin"
# 定义操作函数
function zk_operation() {
operation=$1
# 遍历所有服务器
for server in "${SERVERS[@]}"; do
echo "在 ${server} 上执行 $operation 操作..."
ssh ${server} "source /etc/profile; ${INSTALL_PATH}/zkServer.sh $operation"
if [ $? -eq 0 ]; then
echo "[$server] ZooKeeper $operation 成功."
else
echo "[$server] ZooKeeper $operation 失败,请检查错误."
fi
done
}
# 主控制逻辑
case "$1" in
"status")
zk_operation "status"
;;
"start")
zk_operation "start"
;;
"stop")
zk_operation "stop"
;;
"restart")
zk_operation "restart"
;;
*)
echo "Usage: $0 {status|start|stop|restart}"
exit 1
;;
esac
exit 0
脚本使用:以脚本名称 zkCluster.sh为例
# 查看zookeeper集群状态
sh zkCluster.sh status
# 关闭zookeeper集群
sh zkCluster.sh stop
# 启动zookeeper集群
sh zkCluster.sh start|restart
— 要养成终生学习的习惯 —
Zookeeper - [04] 分布式安装部署的更多相关文章
- 【Hadoop 分布式部署 九:分布式协作框架Zookeeper架构 分布式安装部署 】
1.首先将运行在本地上的 zookeeper 给停止掉 2.到/opt/softwares 目录下 将 zookeeper解压到 /opt/app 目录下 命令: tar -zxvf zoo ...
- (转)ZooKeeper 笔记(1) 安装部署及hello world
ZooKeeper 笔记(1) 安装部署及hello world 先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.or ...
- Hbase-0.96.2全然分布式安装部署
Hbase-0.96.2全然分布式安装部署 环境: Hadoop-2.2.0 Zookeeper-3.4.6 hbase-0.96.2 1.下载hbase-0.96.2-hadoop2-bin.tar ...
- Zookeeper介绍及安装部署
本节内容: Zookeeper介绍 Zookeeper特点 Zookeeper应用场景 用到了Zookeeper的一些系统 Zookeeper集群安装部署 一.Zookeeper介绍 是一个针对大型分 ...
- zookeeper伪分布式安装
本文介绍zookeeper伪分布式安装. 所谓 “伪分布式集群” 就是在1台PC中启动多个zookeeper的实例.“完全分布式集群” 是每1台PC启动1个ZooKeeper实例. 由于我的测试环境P ...
- zookeeper与kafka安装部署及java环境搭建(发布订阅模式)
1. ZooKeeper安装部署 本文在一台机器上模拟3个zk server的集群安装. 1.1. 创建目录.解压 cd /usr/ #创建项目目录 mkdir zookeeper cd zookee ...
- ZooKeeper 笔记(1) 安装部署及hello world
先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.org/doc/r3.4.6/zookeeperOver.html Get ...
- 161209、简要分析ZooKeeper基本原理及安装部署
一.ZooKeeper 基本概念 1.ZooKeeper 是什么? Zookeeper官网地址: http://zookeeper.apache.org/ Zookeeper官网文档地址:http:/ ...
- Hadoop+Hbas完全分布式安装部署
Hadoop安装部署基本步骤: 1.安装jdk,配置环境变量. jdk可以去网上自行下载,环境变量如下: 编辑 vim /etc/profile 文件,添加如下内容: export JAVA_HO ...
- Hadoop2.7.3+Hbase-1.2.6+spark2.1.2完全分布式安装部署
https://www.cnblogs.com/lzxlfly/p/7221890.html 总的下载地址: http://mirror.bit.edu.cn/apache/ hadoop下 ...
随机推荐
- 腾讯技术岗位笔试&面试题(五)
说在前面 本篇文章是腾讯技术面试题目汇总第五篇. 后续将持续推出互联网大厂,如阿里,腾讯,百度,美团,头条等技术面试题目,以及答案和分析. 欢迎大家点赞关注转发. 1.define.const.typ ...
- Qt编写的项目作品7-视频监控系统
一.功能特点 (一)软件模块 视频监控模块,各种停靠小窗体子模块,包括设备列表.图文警情.窗口信息.云台控制.预置位.巡航设置.设备控制.悬浮地图.网页浏览等. 视频回放模块,包括本地回放.远程回放. ...
- Qt通用方法及类库9
函数名 //字节数组转Ascii字符串 static QString byteArrayToAsciiStr(const QByteArray &data); //16进制字符串转字节数组 s ...
- [转]BeanUtils.copyProperties使用总结以及注意事项
1.前言开发过程中,讲一个对象的属性和值赋值到另一个对象上,大量使用了get.set方法,看着很臃肿,思考下肯定不只有我有这种想法,所以技术上肯定有方法能解决这个问题,所以查阅了一些资料发现了Bean ...
- Vue3项目运行时报错误:TypeError:router.addRouters is not a function
router.addRouters()方法报错:Uncaught (in promise) TypeError: router.default.addRouters is not a function ...
- 开源即时通讯IM框架MobileIMSDK的H5端技术概览
一.基本介绍 MobileIMSDK的H5端是一套纯JS编写的基于标准WebSocket的即时通讯库: 1)超轻量级.极少依赖: 2)纯JS编写.高度提炼,简单易用: 3)基于标准WebSocket协 ...
- spark (五) RDD的创建 & 分区
目录 1. RDD的创建方式 1.1 从内存创建RDD 1.2 从外部存储(文件)创建RDD 1.3 从其他的RDD创建 1.4 直接 new RDD 2. 分区(partition) 2.1 mak ...
- 深入解析 Spring AI 系列:项目结构一览
从今天起,我们将以 Spring AI 为主线,开始更新一系列的文章.这些文章将围绕 Spring AI 项目展开,结合我的理解,深入讲解其相关的知识点.技术原理.以及在实际开发过程中涉及到的部分代码 ...
- Solution Set -「LOCAL」冲刺省选 Round XXVIII
\(\mathscr{Summary}\) A 题显然是图论模型嘛--但是卡得太久了,B 题 C 题都不好骗,裂开 qwq. 感觉时间安排上不尽合理,如果 B C 简单一点我这个就要挂打分了. ...
- Java虚拟机调优-典型配置举例
背景: 以下配置主要针对分代垃圾回收算法而言. 堆大小设置 年轻代的设置很关键 JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的 ...