您的位置 : 首页 > 归档 >

Docker安装KSQL

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

Docker环境准备

Docker的安装参考这篇文档。http://www.hbxjsc.com/446a/573b7c53ce54.htmlmac平台的可以参考这一篇文章。 git的安装和下载参考这里。 Java:最低版本1.8

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

启动Kafka集群

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

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

第二步:将目录更改为快速启http://www.hbxjsc.com/223c/68f17a6c4a15.html动,并在Docker中启动KSQL快速启动。

$ cd ksql/docs/quickhttp://www.hbxjsc.com/b77c/ccd4c819a408.htmlstart/
$ 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       bahttp://www.hbxjsc.com/eb0f/c59981cce777.htmlsh -c echo Waiting for K ...   Up                                                             
quickstart_schema-registry_1          /etc/confluent/docker/run        Up      0.0.0.0:8081->8081/tcp                                 
quhttp://www.hbxjsc.com/bc6d/583d5ddfa444.htmlickstart_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

http://www.hbxjsc.com/94ef/ddbef0c7c061.html确的输出内容如下:

_confluent-metrics
_schemas
pagevhttp://www.hbxjsc.com/6982/5f7bbd047a0f.htmliews
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&quhttp://www.hbxjsc.com/ff2c/30535cce9eb9.htmlot;:"User_2&quhttp://www.hbxjsc.com/a8c8/d1053ecbd424.htmlot;}
User_6   {"registertime":1498248577697,"gender":"OTHER","regionid":"Region_8","userid":"User_6"}
User_8   {"registertime":1494834474504,&qhttp://www.hbxjsc.com/cb12/d7134d390ee5.htmluot;gender":"MALE","regionid":"Region_5","userid":"User_8"}
上一篇:非Docker环境下安装KSQL 下一篇:KSQL架构原理解析