Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

安装Kafka #31

Open
vonzhou opened this issue Jul 28, 2020 · 0 comments
Open

安装Kafka #31

vonzhou opened this issue Jul 28, 2020 · 0 comments

Comments

@vonzhou
Copy link
Owner

vonzhou commented Jul 28, 2020

安装ZK

➜  Workspace tar -zxf zookeeper-3.4.6.tar.gz
➜  Workspace mkdir -p data/zookeeper

配置文件:

➜  zookeeper-3.4.6 cat conf/zoo.cfg
tickTime=2000
dataDir=/Users/vonzhou/Workspace/data/zookeeper
clientPort=2181

启动:

➜  zookeeper-3.4.6 bin/zkServer.sh start
JMX enabled by default
Using config: /Users/vonzhou/Workspace/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

验证:

➜  zookeeper-3.4.6 telnet 127.0.0.1 2181
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
srvr
Zookeeper version: 3.4.6-1569965, built on 02/20/2014 09:09 GMT
Latency min/avg/max: 0/0/0
Received: 1
Sent: 0
Connections: 1
Outstanding: 0
Zxid: 0x0
Mode: standalone
Node count: 4
Connection closed by foreign host.

安装Kafka

➜  Workspace tar -zxf kafka_2.11-0.9.0.1.tgz
➜  kafka_2.11-0.9.0.1 bin/kafka-server-start.sh -daemon config/server.properties

创建一个topic:

➜  kafka_2.11-0.9.0.1 bin/kafka-topics.sh --create --zookeeper 127.0.0.1:2181 --replication-factor 1 --partitions 1 --topic test
Created topic "test".

向这个topic发送消息:

➜  kafka_2.11-0.9.0.1 bin/kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic test
Test msg 0
Test msg 1

从这个topic订阅消息:

➜  kafka_2.11-0.9.0.1 bin/kafka-console-consumer.sh --zookeeper 127.0.0.1:2181 --topic test --from-beginning
Test msg 0
Test msg 1
^CProcessed a total of 2 messages

image

重要配置

  • boker.id :集群中每个broker的唯一标识,默认是0,最好设置成和机器名有相关性的整数。
  • port :broker的监听端口,默认是9092.
  • zookeeper.connect :用于保存broker元数据的ZK地址,冒号分隔的一组 hostname:port/path ,path不指定标识根路径。
  • log.dirs : 存放日志的目录,可以逗号分隔的多个
  • auto.create.topics.enable :是否开启默认创建topic,默认true。
  • num.partitions:主题的分区个数,默认是1.
  • log.retention.ms:决定消息多久以后会被删除,默认是168小时。
  • log.retention.bytes:决定了一个分区可以保留的数据量,如果同时指定了log.retention.ms 和 log.retention.bytes,则任意一个满足都会删除。
  • log.segment.bytes:日志片段的大小,默认是1GB。
  • log.segment.ms:指定了日志片段的关闭时间,而不是非要等到满足log.segment.bytes。
  • message.max.bytes:单个消息的大小(压缩后的),默认是1MB。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant