2016-03-17 113 views
2

我正在嘗試使用Apache Kafka appender進行log4j2。我能夠成功地在卡夫卡上發佈我的日誌。我的問題是我是否可以通過TLS/SSL進行發佈。我找不到有關如何爲log4j2 kafka appender配置安全傳輸的文檔,或者我可能很懶。任何幫助表示讚賞。log4j2 kafka appender通過TLS/SSL

回答

1

1)建立SSL卡夫卡服務器上,遵循)在卡夫卡server.properties概述了docs.confluent.io/2.0.0/kafka/ssl.html

2中的步驟,添加以下

listeners=SSL://:9092 
ssl.keystore.location=<Folder>/kafka.server.keystore.jks 
ssl.keystore.password=<password> 
ssl.key.password=changeme 
ssl.truststore.location=<Folder>/kafka.server.truststore.jks 
ssl.truststore.password=<password> 
ssl.client.auth=required 
security.inter.broker.protocol=SSL 

3)在客戶端卡夫卡想要超過卡夫卡發送其日誌的應用程序(log4j2.xml文件)中,添加以下SSL屬性卡夫卡下附加器配置,如下面

<Kafka name="Kafka" topic="kafka.ssl.log4j2.test.topic"> 
    <!--JsonLayout complete="true" compact="false" eventEol="true" properties="true" locationInfo="true"/--> 
    <PatternLayout> 
     <Pattern>[%-5level] [%t] [%C : %M : %F : %L] : %X : %m%n</Pattern> 
    </PatternLayout> 
    <Property name="bootstrap.servers">localhost:9092</Property> 
    <!-- 
    <Property name="security.protocol">SSL</Property> 
    <Property name="ssl.truststore.location">truststore location of client</Property> 
    <Property name="ssl.truststore.password">password</Property> 
    <Property name="ssl.keystore.location">keystore location of client</Property> 
    <Property name="ssl.keystore.password">password</Property> 
    <Property name="ssl.key.password">key password</Property> 
    --> 
</Kafka> 

4)就是這樣。您現在應該能夠將日誌發送到LogStash或具有Kafka插件的任何其他應用程序,以便從Kafka獲取日誌。

+0

我的答案的一部分已被自動格式化,所以我沒有看到我發佈的內容 –

相關問題