【问题标题】:how to send message to kafka topic protected with SSL如何向受 SSL 保护的 kafka 主题发送消息
【发布时间】:2017-08-19 00:34:12
【问题描述】:

谁能建议我们需要设置哪些属性才能使用 java KafkaProducer 向受 SSL 保护的 kafka 主题发送消息,我是 kafka 的新手,无法向受 SSL 保护的 kafka 发送一条消息

【问题讨论】:

    标签: java ssl apache-kafka kafka-producer-api


    【解决方案1】:

    我假设您已经知道如何为 SSL 配置 Kafka。您需要为 SSL 加密和 SSL 身份验证添加配置设置。基本上,这是一个基本的生产者结构。

    Properties props = new Properties();
    props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "localhost:9092");
    
    //configure the following three settings for SSL Encryption
    props.put(CommonClientConfigs.SECURITY_PROTOCOL_CONFIG, "SSL");
    props.put(SslConfigs.SSL_TRUSTSTORE_LOCATION_CONFIG, "/var/private/ssl/kafka.client.truststore.jks");
    props.put(SslConfigs.SSL_TRUSTSTORE_PASSWORD_CONFIG,  "test1234");
    
    // configure the following three settings for SSL Authentication
    props.put(SslConfigs.SSL_KEYSTORE_LOCATION_CONFIG, "/var/private/ssl/kafka.client.keystore.jks");
    props.put(SslConfigs.SSL_KEYSTORE_PASSWORD_CONFIG, "test1234");
    props.put(SslConfigs.SSL_KEY_PASSWORD_CONFIG, "test1234");
    
    props.put(ProducerConfig.ACKS_CONFIG, "all");
    props.put(ProducerConfig.RETRIES_CONFIG, 0);
    props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer");
    props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer");
    
    Producer<String, String> producer = new KafkaProducer<String, String>(props);
    TestCallback callback = new TestCallback();
    Random rnd = new Random();
    for (long i = 0; i < 100 ; i++) {
       ProducerRecord<String, String> data = new ProducerRecord<String, String>(
               "test-topic", "key-" + i, "message-"+i );
       producer.send(data, callback);
    }
    
    producer.close();
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-13
    • 2017-12-15
    • 2019-02-14
    • 2020-08-18
    • 2019-02-27
    • 1970-01-01
    相关资源
    最近更新 更多