diff --git a/spring-boot-samples/README.adoc b/spring-boot-samples/README.adoc
index ab6b03a734..c2d27ec1ad 100644
--- a/spring-boot-samples/README.adoc
+++ b/spring-boot-samples/README.adoc
@@ -119,6 +119,9 @@ The following sample applications are provided:
| link:spring-boot-sample-junit-jupiter[spring-boot-sample-junit-jupiter]
| Demonstrates JUnit Jupiter-based testing
+| link:spring-boot-sample-kafka[spring-boot-sample-kafka]
+| consumer and producer using Apache Kafka
+
| link:spring-boot-sample-liquibase[spring-boot-sample-liquibase]
| Database migrations with Liquibase
diff --git a/spring-boot-samples/pom.xml b/spring-boot-samples/pom.xml
index 51f5dbed35..e3a90ee1cc 100644
--- a/spring-boot-samples/pom.xml
+++ b/spring-boot-samples/pom.xml
@@ -57,6 +57,7 @@
spring-boot-sample-jta-narayanaspring-boot-sample-jta-jndispring-boot-sample-junit-jupiter
+ spring-boot-sample-kafkaspring-boot-sample-liquibasespring-boot-sample-logbackspring-boot-sample-oauth2-client
diff --git a/spring-boot-samples/spring-boot-sample-kafka/pom.xml b/spring-boot-samples/spring-boot-sample-kafka/pom.xml
new file mode 100644
index 0000000000..e0d3ca2717
--- /dev/null
+++ b/spring-boot-samples/spring-boot-sample-kafka/pom.xml
@@ -0,0 +1,50 @@
+
+
+ 4.0.0
+
+
+ spring-boot-samples
+ org.springframework.boot
+ ${revision}
+
+ spring-boot-sample-kafka
+ Spring Boot Kafka Sample
+ Spring Boot Kafka Sample
+
+
+ ${basedir}/../..
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-json
+
+
+ org.springframework.kafka
+ spring-kafka
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+ org.springframework.kafka
+ spring-kafka-test
+ test
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+
diff --git a/spring-boot-samples/spring-boot-sample-kafka/src/main/java/sample/kafka/Consumer.java b/spring-boot-samples/spring-boot-sample-kafka/src/main/java/sample/kafka/Consumer.java
new file mode 100644
index 0000000000..a18227b40a
--- /dev/null
+++ b/spring-boot-samples/spring-boot-sample-kafka/src/main/java/sample/kafka/Consumer.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright 2012-2018 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package sample.kafka;
+
+import org.springframework.kafka.annotation.KafkaListener;
+import org.springframework.stereotype.Component;
+
+@Component
+class Consumer {
+
+ @KafkaListener(topics = "testTopic")
+ public void processMessage(SampleMessage message) {
+ System.out.println("Received sample message [" + message + "]");
+ }
+
+}
\ No newline at end of file
diff --git a/spring-boot-samples/spring-boot-sample-kafka/src/main/java/sample/kafka/Producer.java b/spring-boot-samples/spring-boot-sample-kafka/src/main/java/sample/kafka/Producer.java
new file mode 100644
index 0000000000..3297bb4780
--- /dev/null
+++ b/spring-boot-samples/spring-boot-sample-kafka/src/main/java/sample/kafka/Producer.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright 2012-2018 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package sample.kafka;
+
+import org.springframework.kafka.core.KafkaTemplate;
+import org.springframework.stereotype.Component;
+
+@Component
+public class Producer {
+
+ private final KafkaTemplate