您的位置:首页 > 其它

Kafka集群安装

2015-05-25 16:37 471 查看
下载kafka正式版

http://kafka.apache.org/downloads.html

Linux下解压tar

tar -xzfkafka_2.9.2-0.8.1.1.tgz

修改server.properties

进入kafka根目录config/server.properties

主要修改的有3个参数如下:

broker.id=0 //broker的标识(正数),集群内各个broker.id不能重复。

port=9092 //端口号,单节点内各个port不能重复(为了方便看最好不同节点端口也不要重复)。

log.dir =/tmp //存储log的地方(数据文件)。

验证是否安装成功

start server

>bin/zookeeper-server-start.sh config/zookeeper.properties

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

第一行是启动kafka自身带动zookeeper,如果集群有zookeeper可以忽略。

Create a topic

>bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

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

Send somemessages

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

Start a consumer

>bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

kafka-console-producer.sh和kafka-console-cousumer.sh只是系统提供的命令行工具。这里启动是为了测试是否能正常生产消费,验证流程正确性,在实际开发中还是要自行开发自己的生产者与消费者。

分发到kafka集群节点

cp kafka安装文件并修正3中的参数

启动各个节点的kafka服务

nohup./kafka-server-start.sh config/server.properties > output2>&1 &

Kafka的具体使用方法请参照官网

http://kafka.apache.org/documentation.html

Web UI
安装

8.1 Kafka webconsole UI

下载:https://github.com/claudemamo/kafka-web-console

编译:目前只提供sbt。命令:sbt dist(会生产zip包方便部署和启动)

解压

unzip kafka-web-console-2.1.0-SNAPSHOT.zip

cd kafka-web-console-2.1.0-SNAPSHOT/bin

第一次启动时要加个参数:

./kafka-web-console -DapplyEvolutions.default=true

默认是9000端口,如需修改启动如下:

./kafka-web-console -DapplyEvolutions.default=true-Dhttp.port=19000

不然会报错:

[warn] play - Run with -DapplyEvolutions.default=true if you want to run them automatically (be careful)

Oops, cannot start the server.

@6k1jkg3be: Database 'default' needs evolution!

at play.api.db.evolutions.EvolutionsPlugin$$anonfun$onStart$1$$anonfun$apply$1.apply$mcV$sp(Evolutions.scala:484)

​查看帮助 和 后台运行:

./kafka-web-console -h

nohup ./kafka-web-console >/dev/null 2>&1 &

Web端地址:http://localhost:9000/

建议:这个第三方WEBUI比较直观,而且简单方便使用。

8.2KafkaOffsetMonitor UI

下载包

https://github.com/quantifind/KafkaOffsetMonitor/releases/tag/v0.2.0

官网:
http://quantifind.github.io/KafkaOffsetMonitor/
编译:提供了jar包,不需要自己编译

运行命令

java –cpKafkaOffsetMonitor-assembly-0.2.0.jar \

com.quantifind.kafka.offsetapp.OffsetGetterWeb\

--zk zk-01,zk-02 \

--port 8080 \

--refresh 5.minutes \

--retain 1.day

Web端地址:http://localhost:port/

8.3kafkaManager UI

下载https://github.com/yahoo/kafka-manager

Yahoo的出的kafka管理界面

下载源码,运行命令:sbtclean dist生产zip包。

解压就可以用。

运行命令:

./kafka-manager-Dconfig.file=../conf/application.conf -Dhttp.port=8080

Web端地址:http://localhost:port/

kafka常用命令

创建topic

/kafka-topics.sh --create --zookeeper 192.168.153.128:2181 --replication-factor 1--partitions 1 --topic test123

查看topic信息

./kafka-topics.sh --describe --topic test123 --zookeeper 192.168.153.128:2181

修改topic分区

./kafka-topics.sh --alter --topic test123 --partitions 2 --zookeeper 192.168.153.128:2181

删除topic

./kafka-run-class.shkafka.admin.DeleteTopicCommand --topic test1 --zookeeper192.168.35.122:2181,192.168.35.123:2181

只是删除了zookeeper中元数据,数据文件还需手动删除。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: