zookeeper集群

Zookeeper系列(一)

空扰寡人 提交于 2019-12-05 05:28:50
一、ZooKeeper的背景 1.1 认识ZooKeeper ZooKeeper---译名为“动物园管理员”。动物园里当然有好多的动物,游客可以根据动物园提供的向导图到不同的场馆观赏各种类型的动物,而不是像走在原始丛林里,心惊胆颤的被动 物所观赏。为了让各种不同的动物呆在它们应该呆的地方,而不是相互串门,或是相互厮杀,就需要动物园管理员按照动物的各种习性加以分类和管理,这样我们才能更加放心安全的观赏动物。 回到企业级应用系统中,随着信息化水平的不断提高,企业级系统变得越来越庞大臃肿,性能急剧下降,客户抱怨频频。拆分系统是目前我们可选择的解决系统可伸缩性和性能问题的唯一行之有效的方法。但是拆分系统同时也带来了系统的复杂性——各子系统不是孤立存在的,它们彼此之间需要协作和交互,这就是我们常说的分布式系统0。各个子系统就好比动物园里的动物,为了使各个子系统能正常为用户提供统一的服务,必须需要一种机制来进行协调——这就是ZooKeeper(动物园管理员)。 1.2 为什么使用ZooKeeper 我们知道要写一个分布式应用是非常困难的,主要原因就是局部故障。一个消息通过网络在两个节点之间传递时,网络如果发生故障,发送方并不知道接收方是否接收到了这个消息。他可能在网络故障迁就收到了此消息,也坑没有收到,又或者可能接收方的进程死了。发送方了解情况的唯一方法就是再次连接发送方,并向他进行询问

zookeeper的安装与启动

纵饮孤独 提交于 2019-12-05 05:28:12
1、介绍 下面我开始安装zookeeper并启动,我这边使用的版本是3.4.10,操作系统是Ubuntu 16.10,jdk为1.8.0_101 我这边用了3台虚拟机来搭建一个zookeeper集群。 192.168.253.129 192.168.253.130 192.168.253.131 2、配置域名 首先先配置一下域名,在/etc/hosts文件中的内容为: 192.168.253.129 server01 192.168.253.130 server02 192.168.253.131 server03 如下图: 三台服务器分别对应三个域名。 3、配置 将压缩文件放到linux某个目录(我这边存放的目录是/home/zhuhuiming/software),然后解压缩压缩文件, tar -zxvf zookeeper-3.4.10.tar.gz 然后开始配置相关文件,在zookeeper/conf下,将zoo_sample.cfg文件复制一份命名为zoo.cfg,然后对文件进行编辑: 配置好后将/home/zhuhuiming/software/zookeeper-3.4.10文件拷贝到另外两个服务器对应的目录下,执行命令 scp -r /home/zhuhuiming/software/zookeeper-3.4.10 zhuhuiming@192.168.253

解决Zookeeper无法启动的问题

不问归期 提交于 2019-12-05 05:27:55
1.检查jdk是否正确安装:java或java -version 2.检查防火墙是否关闭:service iptables status 如果显示运行,关闭防火墙:service iptables stop 3.检查zookeeper的配置文件zoo.cfg是否配置正确,尤其虚拟机主机,对应端口是否正确 4。检查各台虚拟机的myid是否正确:echo x > myid(x为设定的id,与zoo.cfg里的配置server.x相对应) 5,检查端口是否被占用,netstat -nltp | grep 2181检查是否已被占用,如果有则把对应的进程kill掉(kill 进程的pid),然后再启动zookeeper 6.如果上面的操作还解决不了问题,那么我们接着到zookeeper-3.4.5的data目录下,可以看到如下所示的文件,其中version-2文件夹和zookeeper_server.pid两个文件都是需要删除掉的。 还有一种情况就是,启动zookeeper集群的某个节点时死活启动不了,把上面所说的三种情况都检查过了还是启动不了,这时我们可以先启动zookeeper的另外几个节点,等把其它节点启动好了,这个启动不了节点就自动启动好了!!! 来源: CSDN 作者: LeeWay19940201 链接: https://blog.csdn.net/LeeWay19940201

zookeeper启动的问题

五迷三道 提交于 2019-12-05 05:27:37
本来准备搭建yarn集群,但是我某个节点的zookeeper集群启动出现了小问题。决定先把这个问题解决整理了再继续尝试搭建yarn集群实现MapReduce计算。 问题描述如下 [root@node2 ~]# zkServer.sh start ZooKeeper JMX enabled by default Using config: /opt/software/zookeeper-3.4.10/bin/…/conf/zoo.cfg Starting zookeeper … STARTED [root@node2 ~]# zkServer.sh status ZooKeeper JMX enabled by default Using config: /opt/software/zookeeper-3.4.10/bin/…/conf/zoo.cfg Error contacting service. It is probably not running. [root@node2 ~]# jps 2256 QuorumPeerMain 2302 Jps [root@node2 ~]# emmm就是这样,start命令正常启动但是status命令出现Error contacting service. It is probably not running.无法显示状态

zookeeper不能正常启动问题

三世轮回 提交于 2019-12-05 05:27:22
[html] view plain copy [root@zookeeper1 zookeeper-3.4.5]# bin/zkServer.sh status JMX enabled by default Using config: /usr/local/zookeeper-3.4.5/bin/../conf/zoo.cfg Error contacting service. It is probably not running. [root@zookeeper1 zookeeper-3.4.5]# 于是尝试解决它,首先要想到的是是否安装了JDK,因为zookeeper的运行需要JVM环境,可以使用java和java -version命令来验证,如下所示,可以看到JDK已经正确安装。 [html] view plain copy [root@zookeeper1 zookeeper-3.4.5]# java 用法: java [-options] class [args...] (执行类) 或 java [-options] -jar jarfile [args...] (执行 jar 文件) 其中选项包括: -d32 使用 32 位数据模型 (如果可用) -d64 使用 64 位数据模型 (如果可用) -server 选择 "server" VM 默认 VM 是 server.

安装zookeeper集群,启动看似没问题!使用status查看出现错误

别说谁变了你拦得住时间么 提交于 2019-12-05 05:26:27
今天很久没搭建zookeeper集群,想在电脑上搭建一下伪集群出现如下错误: Error contacting service. It is probably not running. 在启动时出现了如下状态!本以为成功!想要在其中一个zookeeper的bin下status看一下状元结果出现错误如上错误! 问题:没有启动,可确实启动了: 解决: (1查看zookeeper集群中conf文件下的zoo_sample.cfg文件中dataDir是否配置了对应的data资源存储文件路径 (2如果你是同伊服务器上的集群查看clientPort的否端口号冲突 (3是否配置了zookeeper集群的server节点如: (4特别注意如果你是参考资料直接复制粘贴要注意上图中的ip是否和你的服务器ip对应 (5如果以上都仔细检查后status还是错误!那到每个zookeeper下的data(资源目录)将.pid后缀的文件删除! 最后再解释一下这个zookeeper_server.pid是什么,这个是一个再zk启动时才创建的一个文件,里面是一个pid,也就是这个zk运行的pid,zk的server脚本就是通过配置文件的data路径配置来找这个pid文件,从而确定server脚本要处理哪一个zk进程。 来源: CSDN 作者: 活于知道 链接: https://blog.csdn.net

配置zooKeeper集群出现路径不通问题的解决方案

旧街凉风 提交于 2019-12-05 05:26:16
在红帽虚拟机下搭建zooKeeper集群时候,各个主机的zk都能启动,查看状态时候出错。 非常纠结,找不到日志信息配置的地方,ls命令执行了一下,在执行命令的当前目录中存在一个zookeeper.out文件,这里面记录了启动的日志信息,可以从里面找出问题。我查看了一下,错误是 [myid=2]:QuorumCnxManager@368] - Cannot open channel to 1 at election address hadoop1/192.168.245.225:3888 java.net.ConnectException: Connection refused at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200) at java.net.SocksSocketImpl.connect(SocksSocketImpl

JMX enabled by default Using config: /usr/local/develope/zookeeper-clusters/zookeeper-server3/bin/.

泪湿孤枕 提交于 2019-12-05 05:25:56
JMX enabled by default Using config: /usr/local/develope/zookeeper-clusters/zookeeper-server3/bin/…/conf/zoo.cfg Error contacting service. It is probably not running. 出现这个问题有一下几种可能性: 1.防火墙没有关闭,就是对应的集群端口没有开放,所以各个节点之间没办法通信(zoo.cfg中最后自己配置的内容以及zookeeper自己的2181端口); 2.zookeeper中conf目录下的zoo.cfg配置文件有问题,查看日志dataLog文件的目录,以及data数据文件的目录是否正确; 3.myid文件中的内容是否和zoo.cfg中配 备注:查看端口是否开放lsof -i:端口号命令行,以80为例的,如果没有任何输出则说明没有开启该端口号; 下面是我自己搭建zookeeper集群的方法: 搭建zookeeper集群(注意端口号不能被占用) 1、进入到我们的zookeeper文件目录 cd /root/software/zookeeper-3.4.12 2、创建对应的目录和文件(位置可以自己定:我的位置是在zookeeper-3.4.12目录下创建的) mkdir data mkdir dataLog 3

zookeeper集群部署及启动后报错ZooKeeper JMX enabled by default...

这一生的挚爱 提交于 2019-12-05 05:25:13
部署Zookeeper集群 1.解压文件 [admin@admin01 modules]$ tar -zxvf zookeeper-3.4.5.tar.gz 2.修改文件配置信息 [admin@admin01 conf]$ pwd /home/admin/opt/softwares/zookeeper-3.4.5/conf [admin@admin01 conf]$ 在路径 /home/admin/opt/softwares/zookeeper-3.4.5/conf 下,首先将zoo_sample.cfg重命名为zoo.cfg然后修改里面的配置信息。具体的修改的信息如下图所示: 配置参数解读: 1)tickTime=2000:通信心跳数,Zookeeper服务器心跳时间,单位毫秒 2)initLimit=10:Leader和Follower初始通信时限 3)syncLimit=5:Leader 和 Follower 同步通信时限 4)dataDir:数据文件目录+数据持久化路径 5)clientPort=2181:客户端连接端口 Server.A=B:C:D。 A 是一个数字,表示这个是第几号服务器; B 是这个服务器的 ip 地址; C 是这个服务器与集群中的 Leader 服务器交换信息的端口; D 是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举

记一次zookeeper集群无法启动的解决(踩坑)过程

帅比萌擦擦* 提交于 2019-12-05 05:23:34
今天用自己写的脚本启动zookeeper集群(用hadoop102启动自己及hadoop103,hadoop104)的时候突然报错如下: Error contacting service. It is probably not running. 网上找了很久也没解决,查看zookeeper.out报的错误如下: Cannot open channel to 2 at election address hadoop103/192.168.10.103:3888 java.net.ConnectException: 拒绝连接 (Connection refused) 我ssh免密登录也配了,扑所迷离的问题.... 然后我查看自己写的脚本如下: #!/bin/bash echo "-------------------正在启动zookeeper集群-------- " ssh root@hadoop102 '/opt/module/zookeeper-3.4.6/bin/zkServer.sh start' ssh root@hadoop103 '/opt/module/zookeeper-3.4.6/bin/zkServer.sh start' ssh root@hadoop104 '/opt/module/zookeeper-3.4.6/bin/zkServer.sh start'