非Docker环境下安装KSQL

2018-01-08 文章推荐 访问量 184

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

关于Docker环境下安装KSQL,可以参考我的这篇文章《Docker安装KSQL》。

环境准备

安装Confluent Platform 3.3.0。此安装包括Kafka代理,ZooKeeper,Schema Registry,REST Proxy和Kafka Connect。如果您通过tar或zip安装了Confluent Platform,请进入到安装目录。 安装Maven 安装Git Java:最低版本1.8。在本地机器上安装Oracle Java JRE或JDK> = 1.8

注意:KSQL在开发环境上测试,请不要在生成环境进行测试。

启动Kafak

进入confluent-3.3.0目录并使用新的Confluent CLI(免费Confhttp://www.ddwclub.com/03d2/8930accc9f83.htmlluent开放源码分发的一部分)启动Confluent平台。ZooKeeper正在听localhost:2181,Kafka broker 监听localhost:9092,而Confluent Schema Registry正在听localhost:8081。

http://www.ddwclub.com/6818/5d82267352bd.html
$ ./bin/confluent start

正确的输出类似下面的内容

Starting zookeeper
zookeeper is [UP]
Starting kafka
kafka is [UP]
Starting schema-registry
schema-registry is [UP]
Starting kafka-rest
kafka-rest is [UP]
Starting connect
connect is [UP]

启动KSQL

克隆Confluent KSQL资源库。

$ git clone git@github.com:confluentinc/ksql.http://www.ddwclub.com/d3bf/877772ed4380.htmlgit

http://www.ddwclub.com/d07b/e39a7b9b8ce2.html将ksql目录更改为目录并编译代码。

$ cd ksql
$ mvn clean compile install -DskipTests

启动KSQL。该local参数在本地启动KSQL引擎。

$ ./bin/ksql-cli local

KSQL启动后,终端应该有类似于下面的内容。

ksql >

生成Kafka数据

执行下列步骤来产生数据到kafka的主题pageviews和users。

第一步:pageviews使用数据生成器生成Kafka数据到主题。以下示例连续生成DELIMITED格式的数据。

$ java -jar ksql-examples/target/ksql-examples-0.1-SNAPShttp://www.ddwclub.com/0edd/603d60f3f412.htmlHOT-standalone.jar \
    quickstart=pageviews format=delimited topic=pageviews maxInterval=10000

第二步:users使用数据生成器生成Kafka数据到主题。以下示例连续生成JSON格式的数据。

$http://www.ddwclub.com/b97f/9e30d04b8cb3.html java -jar ksql-examples/target/ksql-examples-0.1-SNAPSHOT-standalone.jar \
    quickstart=users format=json topic=users maxInterval=10000

下面我们使用命令行工具生成的主题数据进行其他测试。

使用Kafka命令行生成Kafka数据kafka-console-producer。以下示例使用DELIMITED格式的值生成数据。

$ kafka-console-producer --broker-list localhost:9092  \
                         --topic t1 \
                         --property parse.key=true \
                         --property key.separator=:
key1:v1,v2,v3
key2:v4,v5,v6
key3:v7,v8,v9
key1:v10,v11,v12

上面示例生成JSON格式的值的数据。

$ kafka-console-producer --broker-list localhost:9092 \
                         --topic t2 \
                      http://www.ddwclub.com/c4d5/6bb01734e9e9.html   --phttp://www.ddwclub.com/cda2/d68f3efb6372.htmlroperty parse.key=true \
   http://www.ddwclub.com/fbe1/c0e87b81180b.html                      --property key.separator=:
key1:{"id":"key1","col1":"v1","col2":"v2","col3":"v3"}
key2:{"id":"key2","col1":"v4","col2":"v5","col3":"v6"}
key3:{"id":"key3","col1&quohttp://www.ddwclub.com/f555/92adda5e04ac.htmlt;:"v7","col2":"v8","col3":"v9"}
key1:{"id":"key1","col1":"v10","col2":"v11","col3":"v12"}

参考资料

Non-Docker Setup for KSQL
本站是基于ThinkPHP3.2.3版本框架开发 Theme by WordPress 粤ICP备15112997号-1