zookeeper和kafka都是基于java的
zookeeper
1.安装jdk
官网下载rpm文件 rpm -ivh 文件.rpm
2.下载zookeeper
tar -xv 压缩文件 -C 目录
3.编写
conf/zoo.cfg
tickTime=2000
dataDir=/var/data/zookeeper
dataLogDir=/opt/logs/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=host1:2888:3888
server.2=host2:2888:3888
server.3=host3:2888:3888
4.bin/zkServer.sh start bin/zkServer.sh stop bin/zkServer.sh status
5.容易出错的地方1.dataDir和dataLogDir没有建立 mkdir -p path/to/path 2.端口被占用 3.dateDir/myid没有建立,内容为节点的id,上文配置中三个节点对应1、2、3
kafka
1.安装java
2.启动zookeeper
3.下载kafka,解压缩 tar -xv 压缩文件 -C 目录
4.编写config/server.properties
需要指定brokerid,集群中brokerid要唯一
端口默认是9092
指定listeners=plaintext://host:port
还要指定zookeeper集群和log文件夹
5.启动 bin/kafka-server-start.sh config/server.properties
6.关闭 bin/kafka-server-stop.sh
7.查看三个broker的方法:
使用zookeeper中的 bin/zkCli.sh -server host:port(zookeeper的host和port)
然后 ls /brokers/ids 查看brokers的id
8.创建topic
bin/kafka-topics.sh --create --zookeeper host:port --replication-factor=3 --partitions=2 --topic test
9.查看topic详情
bin/kafka-topics.sh --describe --zookeeper host:port(zookeeper地址) --topic test
10.查看topic列表
bin/kafka-topics.sh --list --zookeeper host:port(zookeeper地址) --topic test
11.查看日志
bin/kafka-console-consumer.sh --bootstrap-server host:port(kafka地址) --topic test --from-beginning
12.生产日志
bin/kafka-console-producer.sh --broker-list host:port(kafka地址) --topic test