Docker安装KSQL

SQL herman 1211浏览 0评论
公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:xttblog,发送下载链接帮助你免费下载!
本博客日IP超过1800,PV 2600 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog,之前的微信号好友位已满,备注:返现
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
视频教程免费领

本文将引导您完成设置Kafka集群并启动Docker环境的KSQL的步骤。完成这些步骤后,您可以开始使用KSQL来查询Kafka群集。

Docker环境准备

  • Docker的安装参考这篇文档。mac平台的可以参考这一篇文章
  • git的安装和下载参考这里
  • Java:最低版本1.8

如有不会安装的,请自行搜索相关软件的安装。

启动Kafka集群

第一步:克隆Confluent KSQL资源库。

$ git clone git@github.com:confluentinc/ksql.git

第二步:将目录更改为快速启动,并在Docker中启动KSQL快速启动。

$ cd ksql/docs/quickstart/
$ docker-compose up -d

第三步:从主机上启动容器上的KSQL CLI。

$ docker-compose exec ksql-cli ksql-cli local --bootstrap-server kafka:29092

OK,到目前位置,我们的Docker环境下的KSQL已经安装完毕了。下面我需要进一步的验证,我们的环境是否安装正确。

验证Docker下的KSQL环境

第一步:验证六个Docker容器是否已创建。

$ docker-compose ps

如果是up状态,你执行上面的命令后,应该可以看到下面的输出内容。

        Name                        Command               State                           Ports                          
-------------------------------------------------------------------------------------------------------------------------
quickstart_kafka_1                    /etc/confluent/docker/run        Up      0.0.0.0:29092->29092/tcp, 0.0.0.0:9092->9092/tcp       
quickstart_ksql-cli_1                 perl -e while(1){ sleep 99 ...   Up                                                             
quickstart_ksql-datagen-pageviews_1   bash -c echo Waiting for K ...   Up                                                             
quickstart_ksql-datagen-users_1       bash -c echo Waiting for K ...   Up                                                             
quickstart_schema-registry_1          /etc/confluent/docker/run        Up      0.0.0.0:8081->8081/tcp                                 
quickstart_zookeeper_1                /etc/confluent/docker/run        Up      2181/tcp, 2888/tcp, 0.0.0.0:32181->32181/tcp, 3888/tcp

第二步:docker-compose文件已经运行了一个数据生成器,它预先填充两个Kafka主题pageviews和users模拟数据。下面验证数据生成器是否创建了两个Kafka主题,包括pageviews和users。

$ docker-compose exec kafka kafka-topics --zookeeper zookeeper:32181 --list

正确的输出内容如下:

_confluent-metrics
_schemas
pageviews
users

第三步:使用它kafka-console-consumer来查看每个主题的几个消息。该主题pageviews具有一个键,它是一个模拟时间戳和一个DELIMITED格式的值。主题users具有用户ID和Json格式的值的键。

$ docker-compose exec kafka kafka-console-consumer --topic pageviews --bootstrap-server kafka:29092 --from-beginning --max-messages 3 --property print.key=true

正确的输出内容如下:

1491040409254    1491040409254,User_5,Page_70
1488611895904    1488611895904,User_8,Page_76
1504052725192    1504052725192,User_8,Page_92
$ docker-compose exec kafka kafka-console-consumer --topic users --bootstrap-server kafka:29092 --from-beginning --max-messages 3 --property print.key=true

正确的输出内容如下:

User_2   {"registertime":1509789307038,"gender":"FEMALE","regionid":"Region_1","userid":"User_2"}
User_6   {"registertime":1498248577697,"gender":"OTHER","regionid":"Region_8","userid":"User_6"}
User_8   {"registertime":1494834474504,"gender":"MALE","regionid":"Region_5","userid":"User_8"}

业余草公众号

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加QQ1群:135430763(2000人群已满),QQ2群:454796847(已满),QQ3群:187424846(已满)。QQ群进群密码:xttblog,想加微信群的朋友,之前的微信号好友已满,请加博主新的微信号:xttblog,备注:“xttblog”,添加博主微信拉你进群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作可添加助理微信进行沟通!

本文原文出处:业余草: » Docker安装KSQL