linux系统搭建zookeeper集群
转载至:https://blog.csdn.net/weixin_38111957/article/details/82927878
一、引言
今天咱们就来搭建一下zookeeper集群,当然搭建集群,只是为了保证更高效的去使用,避免出现单点故障。
二、zookeeper介绍
  zookeeper:看字面的意思是"动物管理员",真正上zookeeper是一个分布式、开源的程序服务器,采用java开发。zookeeper但是不仅仅只能管理solr,比如:hadoop、hive、dubbo等等。zookeeper也是apache提供的开源项目,是hadoop的子项目。
三、集群搭建
  准备条件:linux服务器一台、配置jdk环境、下载zookeeper安装包。
小编只是为了写教程,采用一台服务器来进行伪分布式搭建,实际上应该是每一台服务器都应该部署一个zookeeper,这样才是真正搭建分布式的意义,一台服务器down掉,其他服务器可以顶替上来。
wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.5.5/apache-zookeeper-3.5.5-bin.tar.gz #linux上下载zookeeper
步骤一:解压缩zookeeper的安装包
tar -zxvf apache-zookeeper-3.5.5-bin.tar.gz
步骤二:我们在/usr/local/目录下新建一个zookeeper-cluster文件夹,把解压后的zookeeper复制三份到zookeeper-cluster下,分别命名为:zookeeper1、zookeeper2、zookeeper3
mkdir /usr/local/zookeeper-cluster mv apache-zookeeper-3.5.5-bin.tar.gz /usr/local/solrcloud/zookeeper1 cd /usr/local/zookeeper-cluster/ cp -r zookeeper1/ zookeeper2 cp -r zookeeper1/ zookeeper3
步骤三:在每一个zookeeper文件下分别创建一个data文件夹,创建一个myid的文件,并为每一个myid文件写入zookeeper对应的编号。分别是1、2、3,与步骤五的server.1、server.2、server.3 对应
mkdir zookeeper1/data mkdir zookeeper2/data mkdir zookeeper3/data vim zookeeper1/data/myid #写入内容为 1 vim zookeeper2/data/myid #写入内容为 2 vim zookeeper3/data/myid #写入内容为 3
在每个zookeeper的 data 目录下创建一个 myid 文件,内容分别是1、2、3 。这个文件就是记录每个服务器的ID


步骤四:把每一个zookeeper下中的conf目录下的zoo_sample.cfg,复制一份并改名为zoo.cfg
cp zookeeper1/conf/zoo_sample.cfg zookeeper1/conf/zoo.cfg cp zookeeper2/conf/zoo_sample.cfg zookeeper2/conf/zoo.cfg cp zookeeper3/conf/zoo_sample.cfg zookeeper3/conf/zoo.cfg
步骤五:修改每一个zookeeper下的conf目录中的zoo.cfg文件,是每个zookeeper下都需要修改噢。
dataDir:配置是刚刚我们所创建的data目录的全路径。
clientPort:配置客户端连接的端口号,zookeeper1=2182、zookeeper=2182、zookeeper3=2183,避免重复
server.1:配置集群中节点的信息,包括ip地址,投票、选举的端口(投票是指:当某一台zookeeper服务器down之后,需要其他zookeeper进行投票来判断是否需要选举新的zookeeper主机,来代替之前down的zookeeper服务)
    
    
    
解释:server.服务器ID=服务器IP地址:服务器之间通信端口:服务器之间投票选举端口
步骤六:分别启动zookeeper1、2、3,然后分别查看对应的状态。
如下图 Mode是为leader,表示当前zookeeper是工作者,其他为follower,表示从服务器,当leader服务down之后,其他从服务器则会进行投票,代替成为leader
./zookeeper1/bin/zkServer.sh start #启动zookeeper ./zookeeper3/bin/zkServer.sh status # 查看zookeeper状态 ./zookeeper3/bin/zkServer.sh stop # 关闭zookeeper
    
    
./zkServer.sh start   #启动zookeeper
./zkServer.sh status  # 查看zookeeper状态./zkServer.sh stop   # 关闭zookeeperlinux系统搭建zookeeper集群的更多相关文章
- 关于Linux系统下zookeeper集群的搭建
		
1.集群概述 1.1什么是集群 1.1.1集群概念 集群是一种计算机系统, 它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系 ...
 - Linux下搭建ZooKeeper集群
		
摘要 Zookeeper是针对大型分布式系统的高可靠的协调系统.它基于对Paxos算法的实现,使该框架保证了分布式环境中数据的强一致性,也正是基于这样的特性,使得ZooKeeper解决很多分布式问题. ...
 - Linux系统搭建Hadoop集群
		
一.环境说明 IP地址 主机名 备注 操作系统 192.168.92.11 hserver1 namenode Ubuntu 16.04 192.168.92.12 hserver2 datanode ...
 - Linux环境下ZooKeeper集群环境搭建关键步骤
		
ZooKeeper版本:zookeeper-3.4.9 ZooKeeper节点:3个节点 以下为Linux环境下ZooKeeper集群环境搭建关键步骤: 前提条件:已完成在Linux环境中安装JDK并 ...
 - docker 搭建zookeeper集群和kafka集群
		
docker 搭建zookeeper集群 安装docker-compose容器编排工具 Compose介绍 Docker Compose 是 Docker 官方编排(Orchestration)项目之 ...
 - Linux下搭建tomcat集群全记录(转)
		
本文将讲述如何在Linux下搭建tomcat集群,以及搭建过程中可能的遇到的问题和解决方法.为简单起见,本文演示搭建的集群只有两个tomact节点外加一个apache组成,三者将安装在同一机器上:ap ...
 - 如何搭建Zookeeper集群
		
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的 ...
 - Linux下搭建tomcat集群全记录
		
(转) Linux下搭建tomcat集群全记录 2011-10-12 10:23 6133人阅读 评论(1) 收藏 举报 tomcatlinuxapacheinterceptorsession集群 1 ...
 - centos 6.5 搭建zookeeper集群
		
为什么使用Zookeeper? 大部分分布式应用需要一个主控.协调器或控制器来管理物理分布的子进程(如资源.任务分配等)目前,大部分应用需要开发私有的协调程序,缺乏一个通用的机制协调程序的反复编写浪费 ...
 
随机推荐
- springboot项目中进行并发测试
			
一 利用工具包: <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g ...
 - intellij idea中去除@Autowired注入对象带来的下划线提示
			
场景: idea中通过@Autowired注入的对象一直有下划线提示,虽然不影响运行 解决:改变@Autowired的检查级别即可. 快捷键:Ctrl+Alt+s,进入idea设置界面,输入inspe ...
 - UDP和TCP的区别?
			
区别总结: 1.TCP面向连接,UDP的面向无连接的,即发送数据之前不需要建立简介. 2.TCP提供可靠的数据传输,有发送应答机制,超时重传机制,错误校验机制,流量控制机制保证传输的安全,不丢失,不重 ...
 - 百度ueditor解决页面组件被覆盖问题
			
本文不再更新,可能存在内容过时的情况,实时更新请移步原文地址:百度ueditor解决页面组件被覆盖问题: 在使用ueditor的过程中,会出现表单组件被ueditor覆盖的问题,解决的方式如下: ue ...
 - JZOJ5967 常数国
			
题目 像素有点低啊~ 算了凑合一下就好啦~ 题目大意 给你一个首尾相接的数列,每次对一个区间进行操作: 顺时针操作,如果当前值比vvv大,就交换.输出最后的vvv. 比赛思路 首先这题的时限这么仁慈, ...
 - mysql高级教程(二)-----性能分析
			
MySQL常见瓶颈 1.cpu SQL中对大量数据进行比较.关联.排序.分组 2.IO a.实例内存满足不了缓存数据或排序等需要,导致产生大量物理 IO. b.查询执行效率低,扫描过多数据行. 3.锁 ...
 - JDBC2 --- 获取数据库连接的方式二 --- 技术搬运工(尚硅谷)
			
/** * 方式二,对方式一的迭代 * 在如下的程序中,不出现第三方的api,使得程序具有更好的可移植性. * @throws Exception */ @Test public void testC ...
 - 010-利用Selenium+python自动输入博客账号密码登录
			
from selenium import webdriver import time def OpenUrl(): # 访问网址 driver.get(url) def Login(): # 查询登录 ...
 - LA3695 Distant Galaxy
			
Distant Galaxy https://vjudge.net/problem/UVALive-3695 You are observing a distant galaxy using a te ...
 - 洛谷P4022 熟悉的文章
			
题意:给定一个串集合s,每次给定一个串t,询问一个最大的L,使得存在一种划分能把t划分成若干个子串, 其中好的子串总长不小于0.9|t|.好的子串定义为长度不小于L且是s中某一个串的子串. 解:发现这 ...