Kafka集群的安装过程

发布时间:2021-08-03 10:40:16 作者:chen
来源:亿速云 阅读:164

这篇文章主要讲解了“Kafka集群的安装过程”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Kafka集群的安装过程”吧!

   1.下载kafka正式版

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


    2.在Linux下解压tar

tar -xzfkafka_2.9.2-0.8.1.1.tgz


   3.修改server.properties

进入kafka根目录config/server.properties

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

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

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

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

zookeeper.connect= dn1:2181,dn2:2181,dn3:2181

  4.配置producer.properties

# list of brokers used for bootstrapping knowledge about the rest of the cluster

# format: host1:port1,host2:port2 ...

metadata.broker.list=dn1:9092,dn2:9092,dn3:9092

  5.配置consumer.properties

# Zookeeper connection string

# comma separated host:port pairs, each corresponding to a zk

# server. e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002"

zookeeper.connect=dn1:2181,dn2:2181,dn3:2181


   6.验证是否安装成功

    1. start server

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

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

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


    1. Create a topic

>bin/kafka-topics.sh --zookeeper dn1:2181,dn2:2181,dn3:2181 --topic test1 --replication-factor 3 --partitions 1 --create

>bin/kafka-topics.sh --zookeeper dn1:2181,dn2:2181,dn3:2181 --topic test1 --describe


    1. Send somemessages

> bin/kafka-console-producer.sh --broker-list dn1:9092,dn2:9092,dn3:9092 --topic test1


    1. Start a consumer

>bin/kafka-console-consumer.sh --zookeeper dn1:2181,dn2:2181,dn3:2181 --from-beginning --topic test1

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


  7.分发到kafka集群节点

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


  1. 启动各个节点的kafka服务

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



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

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


    8.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$1anonfun$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/


  1. 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中元数据,数据文件还需手动删除。

感谢各位的阅读,以上就是“Kafka集群的安装过程”的内容了,经过本文的学习后,相信大家对Kafka集群的安装过程这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. kafka集群安装及管理(一)
  2. kafka集群的部署

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

kafka

上一篇:Python中递归求出列表的最大值

下一篇:如何解决某些HTML字符打不出来的问题

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》