You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2016/03/21 19:03:51 UTC
karaf-decanter git commit: KARAF-4431 - Upgrade to kafka 0.9.0.0
KARAF-4368 - Add SSL support to Kafka appender
Repository: karaf-decanter
Updated Branches:
refs/heads/master 5d38ae374 -> e9bd89f16
KARAF-4431 - Upgrade to kafka 0.9.0.0
KARAF-4368 - Add SSL support to Kafka appender
Project: http://git-wip-us.apache.org/repos/asf/karaf-decanter/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf-decanter/commit/e9bd89f1
Tree: http://git-wip-us.apache.org/repos/asf/karaf-decanter/tree/e9bd89f1
Diff: http://git-wip-us.apache.org/repos/asf/karaf-decanter/diff/e9bd89f1
Branch: refs/heads/master
Commit: e9bd89f163ed190f2c6e0dbf1e0744c44c105848
Parents: 5d38ae3
Author: Jean-Baptiste Onofré <jb...@apache.org>
Authored: Mon Mar 21 19:02:40 2016 +0100
Committer: Jean-Baptiste Onofré <jb...@apache.org>
Committed: Mon Mar 21 19:02:40 2016 +0100
----------------------------------------------------------------------
appender/kafka/pom.xml | 2 +-
...org.apache.karaf.decanter.appender.kafka.cfg | 32 ++++++++++++-
.../decanter/appender/kafka/KafkaAppender.java | 47 ++++++++++++++++++++
assembly/src/main/feature/feature.xml | 2 +-
4 files changed, 80 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf-decanter/blob/e9bd89f1/appender/kafka/pom.xml
----------------------------------------------------------------------
diff --git a/appender/kafka/pom.xml b/appender/kafka/pom.xml
index ebdb19f..488eb24 100644
--- a/appender/kafka/pom.xml
+++ b/appender/kafka/pom.xml
@@ -41,7 +41,7 @@
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
- <version>0.8.2.2</version>
+ <version>0.9.0.0</version>
</dependency>
</dependencies>
http://git-wip-us.apache.org/repos/asf/karaf-decanter/blob/e9bd89f1/appender/kafka/src/main/cfg/org.apache.karaf.decanter.appender.kafka.cfg
----------------------------------------------------------------------
diff --git a/appender/kafka/src/main/cfg/org.apache.karaf.decanter.appender.kafka.cfg b/appender/kafka/src/main/cfg/org.apache.karaf.decanter.appender.kafka.cfg
index 28802ed..ee606d0 100644
--- a/appender/kafka/src/main/cfg/org.apache.karaf.decanter.appender.kafka.cfg
+++ b/appender/kafka/src/main/cfg/org.apache.karaf.decanter.appender.kafka.cfg
@@ -34,4 +34,34 @@
# value.serializer=org.apache.kafka.common.serialization.StringSerializer
# Name of the topic
-# topic=decanter
\ No newline at end of file
+# topic=decanter
+
+# Security (SSL)
+# security.protocol=SSL
+
+# SSL truststore location (Kafka broker) and password
+# ssl.truststore.location=${karaf.etc}/keystores/keystore.jks
+# ssl.truststore.password=karaf
+
+# SSL keystore (if client authentication is required)
+# ssl.keystore.location=${karaf.etc}/keystores/clientstore.jks
+# ssl.keystore.password=karaf
+# ssl.key.password=karaf
+
+# (Optional) SSL provider (default uses the JVM one)
+# ssl.provider=
+
+# (Optional) SSL Cipher suites
+# ssl.cipher.suites=
+
+# (Optional) SSL Protocols enabled (default is TLSv1.2,TLSv1.1,TLSv1)
+# ssl.enabled.protocols=TLSv1.2,TLSv1.1,TLSv1
+
+# (Optional) SSL Truststore type (default is JKS)
+# ssl.truststore.type=JKS
+
+# (Optional) SSL Keystore type (default is JKS)
+# ssl.keystore.type=JKS
+
+# Security (SASL)
+# For SASL, you have to configure Java System property as explained in http://kafka.apache.org/documentation.html#security_ssl
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/karaf-decanter/blob/e9bd89f1/appender/kafka/src/main/java/org/apache/karaf/decanter/appender/kafka/KafkaAppender.java
----------------------------------------------------------------------
diff --git a/appender/kafka/src/main/java/org/apache/karaf/decanter/appender/kafka/KafkaAppender.java b/appender/kafka/src/main/java/org/apache/karaf/decanter/appender/kafka/KafkaAppender.java
index a81f1b0..241d843 100644
--- a/appender/kafka/src/main/java/org/apache/karaf/decanter/appender/kafka/KafkaAppender.java
+++ b/appender/kafka/src/main/java/org/apache/karaf/decanter/appender/kafka/KafkaAppender.java
@@ -80,7 +80,54 @@ public class KafkaAppender implements EventHandler {
String valueSerializer = getValue(config, "value.serializer", "org.apache.kafka.common.serialization.StringSerializer");
properties.put("value.serializer", valueSerializer);
+ String securityProtocol = getValue(config, "security.protocol", null);
+ if (securityProtocol != null)
+ properties.put("security.protocol", securityProtocol);
+
+ String sslTruststoreLocation = getValue(config, "ssl.truststore.location", null);
+ if (sslTruststoreLocation != null)
+ properties.put("ssl.truststore.location", sslTruststoreLocation);
+
+ String sslTruststorePassword = getValue(config, "ssl.truststore.password", null);
+ if (sslTruststorePassword != null)
+ properties.put("ssl.truststore.password", sslTruststorePassword);
+
+ String sslKeystoreLocation = getValue(config, "ssl.keystore.location", null);
+ if (sslKeystoreLocation != null)
+ properties.put("ssl.keystore.location", sslKeystoreLocation);
+
+ String sslKeystorePassword = getValue(config, "ssl.keystore.password", null);
+ if (sslKeystorePassword != null)
+ properties.put("ssl.keystore.password", sslKeystorePassword);
+
+ String sslKeyPassword = getValue(config, "ssl.key.password", null);
+ if (sslKeyPassword != null)
+ properties.put("ssl.key.password", sslKeyPassword);
+
+ String sslProvider = getValue(config, "ssl.provider", null);
+ if (sslProvider != null)
+ properties.put("ssl.provider", sslProvider);
+
+ String sslCipherSuites = getValue(config, "ssl.cipher.suites", null);
+ if (sslCipherSuites != null)
+ properties.put("ssl.cipher.suites", sslCipherSuites);
+
+ String sslEnabledProtocols = getValue(config, "ssl.enabled.protocols", null);
+ if (sslEnabledProtocols != null)
+ properties.put("ssl.enabled.protocols", sslEnabledProtocols);
+
+ String sslTruststoreType = getValue(config, "ssl.truststore.type", null);
+ if (sslTruststoreType != null)
+ properties.put("ssl.truststore.type", sslTruststoreType);
+
+ String sslKeystoreType = getValue(config, "ssl.keystore.type", null);
+ if (sslKeystoreType != null)
+ properties.put("ssl.keystore.type", sslKeystoreType);
+
this.topic = getValue(config, "topic", "decanter");
+
+ // workaround for KAFKA-3218
+ Thread.currentThread().setContextClassLoader(null);
this.producer = new KafkaProducer<>(properties);
}
http://git-wip-us.apache.org/repos/asf/karaf-decanter/blob/e9bd89f1/assembly/src/main/feature/feature.xml
----------------------------------------------------------------------
diff --git a/assembly/src/main/feature/feature.xml b/assembly/src/main/feature/feature.xml
index ddd2b8a..79da000 100644
--- a/assembly/src/main/feature/feature.xml
+++ b/assembly/src/main/feature/feature.xml
@@ -143,7 +143,7 @@
<feature name="decanter-appender-kafka" version="${project.version}" description="Karaf Decanter Kafka Appender">
<feature version="${project.version}">decanter-common</feature>
- <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.kafka-clients/0.8.2.2_1</bundle>
+ <bundle dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.kafka-clients/0.9.0.0_1</bundle>
<bundle>mvn:org.apache.karaf.decanter.appender/org.apache.karaf.decanter.appender.kafka/${project.version}</bundle>
<configfile finalname="/etc/org.apache.karaf.decanter.appender.kafka.cfg">mvn:org.apache.karaf.decanter.appender/org.apache.karaf.decanter.appender.kafka/${project.version}/cfg</configfile>
</feature>