mac 安转zookeeper+kafka

安装版本

zookeeper:3.8.0

kafka:2.13-3.2.0

一、安转zookeeper


zookeeper下载


    https://zookeeper.apache.org/releases.html#download
    https://archive.apache.org/dist/zookeeper/

解压

tar -zxvf apache-zookeeper-3.8.0-bin.tar.gz
mv apache-zookeeper-3.8.0-bin zookeeper

配置核心文件

cd zookeeper/
mkdir data
cd zookeeper/conf
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
    
clientPort=2181
server.1=127.0.0.1:2888:3888
dataDir=/Users/sijing.tong/Public/bin/zookeeper/data

主要配置项

tickTime

Zookeeper心跳时间,以毫秒为单位,默认2000ms(2s).

它用来控制心跳和超时,默认情况下最小的会话超时时间为两倍的 tickTime。
比如:tickTime=2000

initLimit

用于集群初始化时,follower(从)节点连接并同步到leader(主)节点的初始化连接时间,以tickTime的倍数来表示.
比如:initLimit=10
当已经超过10个 tickTime长度后 ,Zookeeper服务器还没有收到leader客户端的返回信息,那么表明这个客户端连接失败。

总的时间长度就是 10*2000=20 s

syncLimit

用于集群通信期间,leader(主)节点与leader(从)节点之间发送消息,请求和应答时间长度(心跳机制)。

比如:syncLimit=5

leader和follower之间发送消息, 请求和应答的最大时间长度超过5个tickTime后,说明leader和follower之间超时了。

总的时间长度就是 5*2000=10 s

clientPort连接服务器的端口,默认是2181 dataDir 快照日志目录,存放内存数据库快照的位置,必须配置
dataLogDir事务日志目录,不配置则和dataDir共用   
dataDir存放内存数据库快照的位置
 server.{x}={ip}:{port1}:{port2}

{x} : 服务器编号(也就是myid里面的值) 
{ip}: 服务器的 ip 地址;
{port1} : Flower 跟 Leader的通信端口,简称服务端内部通信的端口(默认2888);
{port2} : 选举端口(默认是3888)。如果是伪集群的配置方式,由于 ip 都是一样,要给它们分配不同的端口号。
比如:

伪集群,同一个ip,端口不同即可
    server.1=ip:2888:3888
    server.2=ip:4888:5888
    server.3=ip:6888:7888
zookeeper集群,不同ip。端口号可以相同
    server.1=ip1:2888:3888
    server.2=ip2:2888:3888
    server.3=ip3:2888:3888
单机
server.1=ip1:2888:3888


         

环境变量

vim ~/.bash_profile

#zookeeper
export ZOOKEEPER_HOME=/Public/bin/zookeeper
export PATH=$PATH:${ZOOKEEPER_HOME}/bin

source ~/.bash_profile


启动并查看状态

./bin/zkServer.sh start|stop|restart|status

客户端查看

./bin/zkCli.sh -server localhost:2181
./bin/zkCli.sh 

[zk: localhost:2181(CONNECTED) 15] ls /
[zookeeper]
[zk: localhost:2181(CONNECTED) 16] ls /zookeeper 
[config, quota]
[zk: localhost:2181(CONNECTED) 17] quit


zookeeper 可视化工具


1.ZooInspector
Apache官方基于Java的zookeeper可视化工具
https://issues.apache.org/jira/secure/attachment/12436620/ZooInspector.zip
解压ZooInspector
java -jar ZooInspector/build/zookeeper-dev-ZooInspector.jar

mac环境打开界面看不到,听说是编码问题,我就换了一个工具

2.PrettyZoo
https://github.com/vran-dev/PrettyZoo/releases


二、安转kafka

kafka下载

https://kafka.apache.org/downloads

解压

tar -zxf kafka_2.13-3.2.0.tgz 
mv kafka_2.13-3.2.0 kafka

环境变量

vim ~/.bash_profile
 
#kafka
export KAFKA_HOME=/Users/sijing.tong/Public/bin/kafka
export PATH=$PATH:${KAFKA_HOME}/bin 

source ~/.bash_profile

配置核心文件

vim config/server.properties 

broker.id=0 
listeners=PLAINTEXT://localhost:9092 
log.dirs=/Public/bin/kafka/logs 
zookeeper.connect=localhost:2181

启动

./bin/kafka-server-start.sh ../config/server.properties &


创建topics


2.8+的kafka,已经不需要依赖zookeeper来创建topic,新版本使用 --bootstrap-server 参数

./bin/kafka-topics.sh --bootstrap-server localhost:9092--create --topic my_test_topic --partitions 1
./bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test_topic

查看主题

./bin/kafka-topics.sh --list --bootstrap-server localhost:9092

创建生产者和消费者
 

./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test_topic

./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic --from-beginning

         
         
        
       

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值