Zookeeper--(一)初识与安装

Zookeeper

1.1 ZooKeeper简介

  1. 中间件,提供协调服务。
  2. 作用于分布式系统,发挥其优势,可以为大数据服务。
  3. 支持java,提供java和c语言的客户端API

1.2 分布式系统概念

  1. 很多台计算机组成一个整体,一个整体一致对外并且处理同一请求。
  2. 内部的每台计算机都可以互相通信(rest/rpc)。
  3. 客户端到服务端的一次请求到响应结束会历经多台计算机。

负载可以大大增加,用户请求可以分流到不同服务中去
image

image

1.3 zk的相关特性

  1. 一致性:数据一致性,数据按照顺序分批入库。
  2. 原子性:事务要么成功要么失败,不会局部化。
  3. 单一视图:客户端连接集群中的任一zk节点,数据都是一致的。
  4. 可靠性:每次对zk的操作状态都会保存在服务端。
  5. 实时性:客户端可以读取到zk服务端的最新数据。

单机zookeeper安装

JDK安装

  • tar -zxvf xxx.tar.gz 解压jdk压缩包
  • vim /etc/profile 修改环境变量
export JAVA_HOME=/usr/jdk8
export CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
  • source /etc/profile 刷新环境变量

zookeeper下载、安装及配置环境变量

  1. 下载https://archive.apache.org/dist/zookeeper/一个版本
  2. 通过tar -zxvf 解压文件,mv 重命名然后移动到/usr/local目录下
  3. 添加环境变量vim /etc/profile
export JAVA_HOME=/usr/jdk8
export ZOOKEEPER_HOME=/usr/local/zookeeper
export CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar
export PATH=$PATH:$ZOOKEEPER_HOME/bin:$JAVA_HOME/bin
  1. source /etc/profile更新配置

zookeeper文件夹主要目录

  • bin:主要的运行命令
  • conf:存放配置文件,需要修改zk.cfg
  • contrib:附加的一些功能。
  • dist-maven:mvn编译后的目录
  • docs:文档
  • Lib:需要依赖的Jar包
  • revipes:案例demo代码
  • src:源码

zookeeper配置文件介绍,运行zk

zoo.cfg配置

  • tickTime:于计算的时间单元。比如session超时:N* tickTime
  • initLimit:用于集群,允许从节点连接并同步到 master 节点的初始化连接时间,以 tickTime 的倍数来表示
  • syncLimit:用于集群,master 主节点与从节点之间发送消息,请求和应答时间长度。(心跳机制)
  • dataDir:必须配置
  • dataLogDir:日志目录,如果不配置会和 dataDir 公用
dataDir=/usr/local/zookeeper/dataDir
dataLogDir=/usr/local/zookeeper/dataLogDir

创建dataDir
  • clientPort:连接服务器的端口,默认2181

运行zk

  1. 进入zookeeper/bin 执行
  • ./zkServer.sh start 运行
ZooKeeper JMX enabled by default
Using config: /data/tools/software/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
  • ./zkServer.sh status 查询状态
ZooKeeper JMX enabled by default
Using config: /data/tools/software/zookeeper/bin/../conf/zoo.cfg
Mode: standalone

猜你喜欢

转载自blog.csdn.net/ouzhuangzhuang/article/details/86649943