本文将引导您完成设置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"}
: » Docker安装KSQL
原创文章,作者:306829225,如若转载,请注明出处:https://blog.ytso.com/252364.html