You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: Set up TLS encryption for communication between Kafka clients and Kafka brokers as well as between Kafka brokers. Set up SSL authentication of clients.
3
+
description: Set up TLS encryption for communication between Kafka clients and Kafka brokers, Set up SSL authentication of clients.
4
4
ms.service: hdinsight
5
5
ms.topic: how-to
6
6
ms.custom: hdinsightactive
7
-
ms.date: 03/31/2022
7
+
ms.date: 02/03/2023
8
8
---
9
9
10
10
# Set up TLS encryption and authentication for Apache Kafka in Azure HDInsight
@@ -14,9 +14,6 @@ This article shows you how to set up Transport Layer Security (TLS) encryption,
14
14
> [!Important]
15
15
> There are two clients which you can use for Kafka applications: a Java client and a console client. Only the Java client `ProducerConsumer.java` can use TLS for both producing and consuming. The console producer client `console-producer.sh` does not work with TLS.
16
16
17
-
> [!Note]
18
-
> HDInsight Kafka console producer with version 1.1 does not support SSL.
19
-
20
17
## Apache Kafka broker setup
21
18
22
19
The Kafka TLS broker setup will use four HDInsight cluster VMs in the following way:
@@ -30,7 +27,6 @@ The Kafka TLS broker setup will use four HDInsight cluster VMs in the following
30
27
The summary of the broker setup process is as follows:
31
28
32
29
1. The following steps are repeated on each of the three worker nodes:
33
-
34
30
1. Generate a certificate.
35
31
1. Create a cert signing request.
36
32
1. Send the cert signing request to the Certificate Authority (CA).
@@ -62,7 +58,7 @@ Use the following detailed instructions to complete the broker setup:
62
58
cd ssl
63
59
```
64
60
65
-
1. On each of the worker nodes, execute the following steps using the code snippet below.
61
+
1. On each of the worker nodes, execute the following steps using the code snippet.
66
62
1. Create a keystore and populate it with a new private certificate.
67
63
1. Create a certificate signing request.
68
64
1. SCP the certificate signing request to the CA (headnode0)
@@ -72,8 +68,17 @@ Use the following detailed instructions to complete the broker setup:
1. Under **Custom kafka-broker** set the **ssl.client.auth** property to `required`. This step is only required if you are setting up authentication and encryption.
133
+
1. Under **Custom kafka-broker** set the **ssl.client.auth** property to `required`.
129
134
135
+
136
+
> [!Note]
137
+
> Note: This step is only required if you are setting up authentication and encryption.
@@ -208,7 +198,7 @@ These steps are detailed in the following code snippets.
208
198
ssl.truststore.password=MyClientPassword123
209
199
```
210
200
211
-
1. Start the admin client with producer and consumer options to verify that both producers and consumers are working on port 9093. Please refer to [Verification](apache-kafka-ssl-encryption-authentication.md#verification) section belowfor steps needed to verify the setup using console producer/consumer.
201
+
1. Start the admin client with producer and consumer options to verify that both producers and consumers are working on port 9093. Refer to [Verification](apache-kafka-ssl-encryption-authentication.md#verification) section for steps needed to verify the setup using console producer/consumer.
212
202
213
203
## Client setup (with authentication)
214
204
@@ -222,7 +212,7 @@ The following four steps summarize the tasks needed to complete the client setup
222
212
1. Switch to the CA machine (active head node) to sign the client certificate.
223
213
1. Go to the client machine (standby head node) and navigate to the `~/ssl` folder. Copy the signed cert to client machine.
224
214
225
-
The details of each step are given below.
215
+
The details of each step are given.
226
216
227
217
1. Sign in to the client machine (standby head node).
228
218
@@ -327,26 +317,6 @@ Run these steps on the client machine.
1. Open another ssh connection to client machine and start console consumer and provide the path to `client-ssl-auth.properties` as a configuration file for the consumer.
0 commit comments