更新时间:2022-02-21 GMT+08:00

配置说明

操作步骤

  1. 编辑dms_kafka_client_jaas.conf文件,配置access_key,secret_key和project_id。

    DMS Kafka API基于access_key,secret_key和projectID鉴权,配置dms_kafka_client_jaas.conf,内容如下:

    KafkaClient {
      com.huawei.middleware.kafka.sasl.client.KafkaLoginModule required
      access_key="XXXXXX"
      secret_key="XXXXXX"
      project_id="XXXXXX";
    };

    注意:把XX替换为服务帐号的access_key,secret_key和project_id。

    如果需要访问其他租户授权的队列,则需要配置授权者的Project ID,即配置target_project_id为授权者的Project ID。
    KafkaClient {
      com.huawei.middleware.kafka.sasl.client.KafkaLoginModule required
      access_key="XXXXXX"
      secret_key="XXXXXX"
      project_id="XXXXXX"
      target_project_id="";
    };

  2. 配置启用SASL,(“/path”需修改为实际路径,如下两种选择一种即可)。

    1. 使用JVM参数设置,进程启动参数增加。
      -Djava.security.auth.login.config=/path/kafka_client_jaas.conf
    2. 在代码中设置参数(需要保证在Kafka Producer和Consumer启动之前)。
      System.setProperty("java.security.auth.login.config", "/path/kafka_client_jaas.conf");

  3. 在consumer.properties增加如下行。

    connections.max.idle.ms=30000

  4. 配置文件consumer.properties/producer.properties主要参数说明。

    表1 主要参数说明

    参数

    说明

    bootstrap.servers

    DMS服务端的地址,配置为IP或者域名。

    -

    ssl.truststore.location

    证书的路径。

    /path/client.truststore.jks(注意:修改为自己的路径)

    ssl.truststore.password

    证书的密码。

    -

    security.protocol

    安全协议。

    SASL_SSL

    sasl.mechanism

    服务名称。

    DMS(注意:必须全大写)

    Kafka其它参数请参看Kafka官网说明

  5. 为调试运行Kafka,可修改log4j.properties,打开kafka debug日志:

    log4j.rootLogger=DEBUG, stdout 
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c:%L)%n
    log4j.logger.org.apache.kafka.clients=DEBUG
    log4j.logger.kafka=INFO, stdout
    log4j.additivity.kafka=false
    log4j.logger.org.apache.kafka=DEBUG, stdout
    log4j.additivity.org.apache.kafka=false

  6. 开始编写代码,API接口请参考Kafka官网说明