zookeeper集群

利用zookeeper部署kafka集群

无人久伴 提交于 2019-12-04 06:12:39
1.准备工作: iptables -F #关闭防火墙 systemctl stop firewalld.service #关闭防火墙 准备三台虚拟机并放入/etc/hosts下 192.168.100.242 testceph 192.168.100.244 redis1 192.168.100.245 redis2 将testceph的/etc/hosts文件拷贝到其他两台虚拟机上 命令: [root@testceph ~]# for i in 244 245 > do > scp /etc/hosts 192.168.100.$i:/etc/ > done root@192.168.100.244's password: 输入密码 hosts 100% 238 231.1KB/s 00:00 root@192.168.100.245's password: 输入密码 hosts 100% 238 418.2KB/s 00:00 2.安装依赖包 [root@testceph ~]yum install -y gcc g++ make gcc-c++ kernel-devel automake autoconf libtool make wget tcl vim unzip git java 3.准备 zookeeper目录 三个节点 192.168.100.242 192.168

zookeeper集群启动异常: Cannot open channel to 2 at election address ……

点点圈 提交于 2019-12-04 06:08:22
WARN [WorkerSender[myid=1]:QuorumCnxManager@584] - Cannot open channel to 2 at election address cdh03/192.168.5.148:3888 java.net.ConnectException: Connection refused (Connection refused) at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:589) at

在 CentOS7 上安装 Zookeeper服务

 ̄綄美尐妖づ 提交于 2019-12-04 06:04:18
在 CentOS7 上安装 Zookeeper服务 1、创建 /usr/local/services/zookeeper 文件夹: mkdir -p /usr/local/services/zookeeper 2、进入到 /usr/local/services/zookeeper 目录中: cd /usr/local/services/zookeeper 3、下载 zookeeper-3.4.9.tar.gz: wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz 4、解压缩 zookeeper-3.4.9.tar.gz: tar -zxvf zookeeper-3.4.9.tar.gz 5、进入到 /usr/local/services/zookeeper/zookeeper-3.4.9/conf 目录中: cd zookeeper-3.4.9/conf/ 6、复制 zoo_sample.cfg 文件的并命名为为 zoo.cfg: cp zoo_sample.cfg zoo.cfg 7、用 vim 打开 zoo.cfg 文件并修改其内容为如下: # The number of milliseconds of each tick # zookeeper

zookeeper基于docker的安装

北慕城南 提交于 2019-12-04 05:44:32
单机模式、集群模式 docker-compose.yml文件 version: '3.1' services: zoo1: image: xxxx/zookeeper restart: always hostname: zoo1 ports: - 2181:2181 environment: ZOO_MY_ID: 1 ZOO_SERVERS: server.1=0.0.0.0:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888 zoo2: image: xxxx/zookeeper restart: always hostname: zoo2 ports: - 2182:2181 environment: ZOO_MY_ID: 2 ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=0.0.0.0:2888:3888 server.3=zoo3:2888:3888 zoo3: image: xxxx/zookeeper restart: always hostname: zoo3 ports: - 2183:2181 environment: ZOO_MY_ID: 3 ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888

Zookeeper

谁说我不能喝 提交于 2019-12-04 04:52:32
介绍   ZooKeeper 是一种分布式协调服务,用于管理大型主机。在分布式环境中协调和管理服务是一个复杂的过程。ZooKeeper 通过其简单的架构和 API 解决了这个问题。ZooKeeper 允许开发人员专注于核心应用程序逻辑,而不必担心应用程序的分布式特性。 ZK数据模型   Z ookeeper的数据模型就是一棵二叉树,和linux的目录结构一样       Zookeeper 的数据存储也同样是基于节点,这种节点叫做 Znode, Zookeeper 是为读多写少的场景所设计,Znode 并不是用来存储大规模业务数据,而是用于存储少量的状态和配置信息, 每个节点的数据最大不能超过 1MB 。    data:Znode 存储的数据信息。   ACL:记录 Znode 的访问权限,即哪些人或哪些 IP 可以访问本节点。   stat:包含 Znode 的各种元数据,比如事务 ID、版本号、时间戳、大小等等。   child:当前节点的子节点引用 基本操作    创建节点 create     删除节点 delete     判断节点是否存在 exists     获取节点数据 getData     设置节点数据 setData     获取节点下所有子节点 getChildren     exists , getData , getChildren 属于读操作

【Zookeeper系列二】ZooKeeper典型应用场景实践

混江龙づ霸主 提交于 2019-12-04 04:04:31
#0 系列目录# Zookeeper系列 【Zookeeper系列一】Zookeeper应用介绍与安装部署 【Zookeeper系列二】ZooKeeper典型应用场景实践 【Zookeeper系列三】ZooKeeper Java API使用 【Zookeeper系列四】ZooKeeper 分布式锁实现 【Zookeeper系列五】ZooKeeper 实时更新server列表 【Zookeeper系列六】Zookeeper 工作原理 Zookeeper源码 【Zookeeper源码一】Zookeeper 源码环境搭建 【Zookeeper源码二】Zookeeper 客户端创建连接过程分析 【Zookeeper源码三】Zookeeper 单机版服务器介绍 【Zookeeper源码四】Zookeeper 集群版服务器介绍 【Zookeeper源码五】Zookeeper 集群版建立连接过程 Zookeeper应用 基于ZooKeeper的分布式Session实现 ZooKeeper是一个 高可用的分布式数据管理与系统协调框架 。 基于对Paxos算法的实现,使该框架保证了分布式环境中数据的强一致性 ,也正是基于这样的特性,使得ZooKeeper解决很多分布式问题。网上对ZK的应用场景也有不少介绍,本文将介绍比较常用的项目例子,系统地对ZK的应用场景进行一个分门归类的介绍。 值得注意的是,

Dubbo(二):zookeeper 注册中心

一世执手 提交于 2019-12-04 01:19:28
zookeeper 注册中心 Zookeeper 是 Apacahe Hadoop 的子项目,是一个树型的目录服务,支持变更推送,适合作为 Dubbo 服务的注册中心,工业强度较高,可用于生产环境,并推荐使用 [1]。 流程说明: 服务提供者启动时: 向 /dubbo/com.foo.BarService/providers 目录下写入自己的 URL 地址 服务消费者启动时: 订阅 /dubbo/com.foo.BarService/providers 目录下的提供者 URL 地址。并向 /dubbo/com.foo.BarService/consumers 目录下写入自己的 URL 地址 监控中心启动时: 订阅 /dubbo/com.foo.BarService 目录下的所有提供者和消费者 URL 地址。 支持以下功能: 当提供者出现断电等异常停机时,注册中心能自动删除提供者信息 当注册中心重启时,能自动恢复注册数据,以及订阅请求 当会话过期时,能自动恢复注册数据,以及订阅请求 当设置 时,记录失败注册和订阅请求,后台定时重试 可通过 设置 zookeeper 登录信息 可通过 设置 zookeeper 的根节点,不配置将使用默认的根节点。 支持 * 号通配符 ,可订阅服务的所有分组和所有版本的提供者 使用 在 provider 和 consumer 中增加 zookeeper

Storm概念讲解和工作原理介绍

China☆狼群 提交于 2019-12-04 00:07:57
Strom的结构 Storm与传统关系型数据库 传统关系型数据库是先存后计算,而storm则是先算后存,甚至不存 传统关系型数据库很难部署实时计算,只能部署定时任务统计分析窗口数据 关系型数据库重视事务,并发控制,相对来说Storm比较简陋 Storm与Hadoop,Spark等是流行的大数据方案 与Storm关系密切的语言:核心代码用clojure书写,实用程序用python开发,使用java开发拓扑 topology Storm集群中有两种节点,一种是控制节点(Nimbus节点),另一种是工作节点(Supervisor节点)。所有Topology任务的 提交必须在Storm客户端节点上进行(需要配置 storm.yaml文件),由Nimbus节点分配给其他Supervisor节点进行处理。 Nimbus节点首先将提交的Topology进行分片,分成一个个的Task,并将Task和Supervisor相关的信息提交到 zookeeper集群上,Supervisor会去zookeeper集群上认领自己的Task,通知自己的Worker进程进行Task的处理。 和同样是计算框架的MapReduce相比,MapReduce集群上运行的是Job,而Storm集群上运行的是Topology。但是Job在运行结束之后会自行结束,Topology却只能被手动的kill掉,否则会一直运行下去

zookeeper 学习

人走茶凉 提交于 2019-12-04 00:05:33
zk 可视化客户端 zk 可视化工具: ZooInspector 参考: https://www.jianshu.com/p/f45af8027d7f 简介 特性 目录 还有 recipes 目录下面就是 demo ,, src 目录就是 zookeeper 的源码 配置 # The number of milliseconds of each tick 用于计算的时间单元 毫秒 : 比如 session 超时 : N* tickTime 。 所有的时间都是 以这个为单位 tickTime=5000 # The number of ticks that the initial # synchronization phase can take 用于集群,允许从节点连接并同步到 master 节点的初始化连接时间,以 tickTime 的倍数表示 initLimit=10 # The number of ticks that can pass between # sending a request and getting an acknowledgement 用于集群,master 主节点与从节点之间发生消息,请求和应答时间长度(心跳机制) syncLimit=5 # the directory where the snapshot is stored. # do not use

zookeeper 学习

本小妞迷上赌 提交于 2019-12-04 00:02:53
zk 可视化客户端 zk 可视化工具: ZooInspector 参考: https://www.jianshu.com/p/f45af8027d7f 简介 特性 目录 还有 recipes 目录下面就是 demo ,, src 目录就是 zookeeper 的源码 配置 # The number of milliseconds of each tick 用于计算的时间单元 毫秒 : 比如 session 超时 : N* tickTime 。 所有的时间都是 以这个为单位 tickTime=5000 # The number of ticks that the initial # synchronization phase can take 用于集群,允许从节点连接并同步到 master 节点的初始化连接时间,以 tickTime 的倍数表示 initLimit=10 # The number of ticks that can pass between # sending a request and getting an acknowledgement 用于集群,master 主节点与从节点之间发生消息,请求和应答时间长度(心跳机制) syncLimit=5 # the directory where the snapshot is stored. # do not use