Kafka安装和常用操作命令
Kafka安装:
下载kafka_2.10-0.8.2.1
1.关闭防火墙
2.修改配置文件 server.properties
broker.id=1
log.dirs= /usr/kafka_2.10-0.8.2.1/data //最后不要写log
zookeeper.connect=master:2181,slave01:2181,slave02:2181
delete.topic.enable = true //删除话题的时候需要设置其为true
num.partitions=3//建议默认3个分区,如果AIP里面你的分区数大于系统规定的则抛出异常
log.dirs= /usr/kafka_2.10-0.8.2.1/data //最后不要写log
zookeeper.connect=master:2181,slave01:2181,slave02:2181
delete.topic.enable = true //删除话题的时候需要设置其为true
num.partitions=3//建议默认3个分区,如果AIP里面你的分区数大于系统规定的则抛出异常
//分发给其他两台服务器,每台机器的broker.id必须唯一
3.配置环境变量
3.配置环境变量
常用操作命令:
//启动。指定启动的配置文件, 输出到run_data目录, 2>&1所有正确错误的都输出, &后台运行
kafka-server-start.sh $KAFKA_HOME/config/server.properties >>$KAFKA_HOME/run_data 2>&1 &
kafka-server-start.sh $KAFKA_HOME/config/server.properties >>$KAFKA_HOME/run_data 2>&1 &
//创建话题 指定zookeeper集群中任意一个主机都可以
kafka-topics.sh --create --zookeeper master:2181 --replication-factor 3 --partitions 1 --topic topic1
kafka-topics.sh --create --zookeeper master:2181 --replication-factor 3 --partitions 3 --topic topic2
kafka-topics.sh --create --zookeeper master:2181 --replication-factor 3 --partitions 1 --topic topic1
kafka-topics.sh --create --zookeeper master:2181 --replication-factor 3 --partitions 3 --topic topic2
//副本数量为3,那么至少得启动3个kafka的server,否则会抛出异常。
//话题描述清单
kafka-topics.sh --describe --zookeeper slave01:2181 --topic topic1
kafka-topics.sh --describe --zookeeper slave01:2181 --topic topic1
//发送消息(生产者)
//轮循写入分区,即012 012 012
//第一次打开生产者是写入0分区,退出后,第二次打开生产者写入1分区
kafka-console-producer.sh --broker-list localhost:9092 --topic topic2
//2)当前broker(节点)没有kafka服务时,需要指定一个有kafka服务的broker(zookeeper集群中任意一个),
kafka-console-producer.sh --broker-list slave02:9092 --topic topic2
//轮循写入分区,即012 012 012
//第一次打开生产者是写入0分区,退出后,第二次打开生产者写入1分区
kafka-console-producer.sh --broker-list localhost:9092 --topic topic2
//2)当前broker(节点)没有kafka服务时,需要指定一个有kafka服务的broker(zookeeper集群中任意一个),
kafka-console-producer.sh --broker-list slave02:9092 --topic topic2
//接收队列消息(消费者) from-beginning如果不加,那么在消费者没有启动的时候,或者说它不在线之前的信息收不到
kafka-console-consumer.sh --zookeeper localhost:2181 --topic topic2 --from-beginning
kafka-console-consumer.sh --zookeeper localhost:2181 --topic topic2 --from-beginning
//删除话题 需要server.properties中设置delete.topic.enable=true否则只是标记删除或者直接重启。
kafka-topics.sh --delete --zookeeper \localhost:2181 --topic topic1
kafka-topics.sh --delete --zookeeper \localhost:2181 --topic topic1
//查看所有话题
kafka-topics.sh --list --zookeeper localhost:2181
kafka-topics.sh --list --zookeeper localhost:2181