全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 阿里云办公 培训与认证 物联网
消息队列 MQ

Kafka 消息接入说明

更新时间:2017-09-12 15:43:11

接入说明

  1. 使用 Kafka 消息服务之前,先在 MQ 控制台上申请资源,否则将无法通过鉴权认证,以及相关的运维功能。具体步骤如下:

    1. 申请 Topic 资源,消息类型选择 Kafka 消息
    2. 申请 Consumer ID。
  2. Kafka服务端版本是0.10.1,Client版本建议0.10及以上。

  3. 建议查看各个客户端的 开源 Demo 访问地址,使用之前请仔细阅读 README.md。

  4. 目前客户端 Demo 包括 Java, Python, Go, PHP, NodeJs, C++, Logstash, SpringCloud,其它客户端暂时请参照已有 Demo 自行调试,后续会陆续完善。

  5. 欢迎加钉钉群咨询,用钉钉扫描群二维码

访问域名

Region 域名
公网 kafka-ons-internet.aliyun.com:8080
华东1 kafka-cn-hangzhou.aliyun.com:8080
华北2 kafka-cn-beijing.aliyun.com:8080
华东2 kafka-cn-shanghai.aliyun.com:8080
华南1 kafka-cn-shenzhen.aliyun.com:8080

下面以 Java 语言为例,详细说明接入过程。

MQ-Kafka Java Demo

下载连接

1、Maven 依赖配置

  1. <dependency>
  2. <groupId>org.apache.kafka</groupId>
  3. <artifactId>kafka-clients</artifactId>
  4. <version>0.10.1.0</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>com.aliyun.openservices</groupId>
  8. <artifactId>ons-sasl-client</artifactId>
  9. <version>0.1</version>
  10. </dependency>

2、配置 AccessKey,SecretKey。

MQ-Kafka 利用服务账号 AccessKey,SecretKey 对消息通道进行鉴权。创建文本文件 kafka_client_jaas.conf,内容如下:

  1. KafkaClient {
  2. com.aliyun.openservices.ons.sasl.client.OnsLoginModule required
  3. AccessKey="***"
  4. SecretKey="***";
  5. };

注意:把***替换为服务账号的 AccessKey,SecretKey。

3、设置 kafka_client_jaas.conf 的路径:

有两种办法进行设置(这里假设kafka_client_jaas.conf放在/home/admin下面,实际部署时请注意修改为自己的路径):

程序启动时,启动 JVM 参数:

  1. -Djava.security.auth.login.config=/home/admin/kafka_client_jaas.conf

或者在代码中设置参数(需要保证在 Kafka Producer 和 Consumer 启动之前):

  1. System.setProperty("java.security.auth.login.config", “/home/admin/kafka_client_jaas.conf");

4、下载根证书

下载地址

下载后放入某个目录下,这里假设为”/home/admin”

5、主要参数配置

参数
bootstrap.servers 请根据 region 进行选择
ssl.truststore.location /home/admin/kafka.client.truststore.jks(请注意修改为自己的路径)
ssl.truststore.password KafkaOnsClient
security.protocol SASL_SSL
sasl.mechanism ONS

Kafka 其它参数遵照 Kafka 官网说明

6、 执行运行语句:

sh run_demo.sh -Dkafka.ons.TOPIC=kafka-test

注意:请将 Topic 更改为申请的 Topic。

7、查看执行结果:

produce ok:kafka-test-*

看到类似以上结果表示 Demo 运行成功。

本文导读目录