centos7下zookeeper集群安装部署

1. 安装环境(如下图示例)(三台虚拟机):

Host

Ip

Software

Port

Usage

Server-1

192.168.146.200

Zookeeper 3.3.6

2181

Node-1

Server-2

192.168.146.201

Zookeeper 3.3.6

2181

Node-2

Server-3

192.168.146.202

Zookeeper 3.3.6

2181

Node-3

2. 安装步骤:

1、下载zookeeper并解压

官网推荐下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/

解压至/usr/local/software目录(目录可以自由指定):

tar -zxvf zookeeper-3.3.6.tar.gz -C /usr/local/software

2、编辑配置文件

进入conf目录,cp生成一个zk能识别的配置文件名:zoo.cfg,如下:

[root@server-1 conf]# cp zoo_sample.cfg  zoo.cfg

 

执行命令vim zoo.cfg对文件进行修改:

 

保存 :wq

注意:另外两个节点配置同上

上面红色框住的内容即是我们修改的内容:

  ①、tickTime:基本事件单元,这个时间是作为Zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,每隔tickTime时间就会发送一个心跳;最小 的session过期时间为2倍tickTime

  ②、dataDir:存储内存中数据库快照的位置,除非另有说明,否则指向数据库更新的事务日志。注意:应该谨慎的选择日志存放的位置,使用专用的日志存储设备能够大大提高系统的性能,如果将日志存储在比较繁忙的存储设备上,那么将会很大程度上影像系统性能。

  ③、client:监听客户端连接的端口。

  ④、initLimit:允许follower连接并同步到Leader的初始化连接时间,以tickTime为单位。当初始化连接时间超过该值,则表示连接失败。

  ⑤、syncLimit:表示Leader与Follower之间发送消息时,请求和应答时间长度。如果follower在设置时间内不能与leader通信,那么此follower将会被丢弃。

  ⑥、server.A=B:C:D

    A:其中 A 是一个数字,表示这个是服务器的编号;

    B:是这个服务器的 ip 地址;

    C:Leader选举的端口;

    D:Zookeeper服务器之间的通信端口。

3、创建myid文件

  1. cd /usr/local/software/zookeeper-3.3.6/data 创建myid文件,然后在文件中写上对应的节点编号例如:
  2. server.0=192.168.146.200:2888:3888   #myid文件中写0就可以呢
  3. 后面的机器依次在相应目录创建myid文件,写上相应配置数字即可。

4、配置环境变量(非必须)

为了能够在任意目录启动zookeeper集群,我们需要配置环境变量。

  1. 进入vim /etc/profile
  2. 添加配置

#set zookeeper environment

export ZK_HOME=/usr/local/software/zookeeper-3.3.6

export PATH=$PATH:$ZK_HOME/bin

  1. 刷新文件,使环境变量生效:soure /etc/profle

5、启动zookerper服务

(1)启动命令 :zkServer.sh start

(2)停止命令: zkServer.sh stop

(3)重启命令:zkServer.sh restart

(4)查看集群节点状态:zkServer.sh status

centos7下kafka集群安装部署

安装步骤

1、下载并解压:

在线或者本地上传:

wget http://mirror.bit.edu.cn/apache/kafka/2.2.0/kafka_2.11-2.2.0.tgz

解压:

tar zxvf kafka_2.11-2.2.0.tgz -C /opt/

2、编辑配置文件

进入到config目录,编辑配置文件:server.properties

[root@server-1 config]# vim server.properties

 

 

 

 

同样的操作在server-2和server-3上修改一下broker.id和host.name。

3、启动KAFKA

(1) 切换到bin目录中,查看相关脚本:

(2) [root@server-1 bin]# ./kafka-server-start.sh -daemon ../config/server.properties     // -daemon:以后台方式启动

(3) 同样的,启动server-2和server-3

[root@server-2 bin]# ./kafka-server-start.sh -daemon ../config/server.properties

[root@server-3 bin]# ./kafka-server-start.sh -daemon ../config/server.properties

关闭命令:

4、检查测试

(4) 登录zookeeper(切换到zk的bin目录下),先连接zk:

[root@server-1 bin]# ./zkCli.sh -server 192.168.146.200:2181 //IP为zookeeper所在服务器的IP

附录:KAFKA简单命令

  1. 创建topic

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic topicName    //topicName 指定测试的topic

  1. 查看主题:

bin/kafka-topics.sh --list --zookeeper localhost:2181

 

  1. 发送一些消息:

bin/kafka-console-producer.sh --broker-list 10.1.80.128:9092 --topic topicName  //topicName 指定测试的topic

  1. 立即删除某个topic下的数据

bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic topicName --config cleanup.policy=delete   //topicName 指定测试的topic

  1. 查看topic内容:

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic topicName --from-beginning   //topicName 指定测试的topic