全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 钉钉智能硬件
消息队列 MQ

Kafka 消息接入说明

更新时间:2017-12-15 20:40:00

接入说明

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

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

  3. 消息队列 Kafka 提供多种客户端语言的 Demo,详情前往 消息队列 Kafka Demo 库 查看,使用之前请仔细阅读 README.md。

  4. 目前消息队列 Kafka 已提供 Demo 包括 Java、C++、Python、Go、PHP、NodeJs、Logstash、SpringCloud、Filebeat、Stream 等,更多语言及插件的 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

注意:除了公网,其它 Region 都需要在对应 Region 的 ECS 上面访问,比如华东1的 topic 需要在华东1的 ECS 上面才能访问。

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

MQ-Kafka Java Demo

下载连接

1、Maven 依赖配置

<dependency>
       <groupId>org.apache.kafka</groupId>
       <artifactId>kafka-clients</artifactId>
       <version>0.10.0.0</version>
</dependency>
<dependency>
<groupId>com.aliyun.openservices</groupId>
      <artifactId>ons-sasl-client</artifactId>
      <version>0.1</version>
</dependency>

2、配置 AccessKey,SecretKey。

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

KafkaClient {

   com.aliyun.openservices.ons.sasl.client.OnsLoginModule required

   AccessKey="***"

   SecretKey="***";

};

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

3、设置 kafka_client_jaas.conf 的路径:

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

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

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

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

 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 运行成功。

本文导读目录