連線至 Confluent Kafka
開始之前
建立連線之前,請確定您:
-
設定必要的原則以啟用安全保存庫和加密密碼存取,例如使用加密密碼、使用保存庫及讀取加密密碼組合。如需詳細資訊,請參閱最低建議原則。
-
如果使用 TLS/ mTLS,請將 JKS 信任存放區或信任存放區和金鑰存放區轉換為
PKCS12格式,以用於連線中。-
使用 JDK 中的 keytool 公用程式可以轉換成 PKCS12 格式。
若為金鑰存放區,keytool 公用程式會提示您輸入密碼,如下列範例所示:keytool -importkeystore -srckeystore [MY_KEYSTORE.jks] -destkeystore [MY_KEYSTORE.p12] -srcstoretype JKS -deststoretype PKCS12 -deststorepass [PASSWORD_PKCS12]對於信任存放區,keytool 公用程式會提示輸入密碼,如下列範例所示:keytool -importkeystore -srckeystore [MY_TRUSTSTORE.jks] -destkeystore [MY_TRUSTSTORE.p12] -srcstoretype JKS -deststoretype PKCS12 -deststorepass [PASSWORD_PKCS12] -
轉換金鑰存放區和信任存放區之後,請將下列行新增至 Kafka 產生器特性檔,然後儲存您的變更:
ssl.truststore.type=PKCS12 ssl.keystore.type=PKCS12 - 將檔案上傳至進階選項之設定值區段中的連線產生器特性。
-
建立來源連線
建立來源 Confluent Kafka 連線:
連線就會顯示在「連線」清單中,您可以在此選取連線來檢視其詳細資訊。確定您同時建立與 Confluent Schema Registry 的連線,然後將這兩個連線指派給 Big Data 部署。
建立目標連線
建立目標 Confluent Kafka 連線:
連線就會顯示在「連線」清單中,您可以在此選取連線來檢視其詳細資訊。確定您同時建立與 Confluent Schema Registry 的連線,然後將這兩個連線指派給 Big Data 部署。
使用私人連結建立 Confluent Cloud 連線
專用連結可讓您透過虛擬網路中的專用端點,存取在第三方雲端上執行的 Confluent Cloud 叢集。
建立連線之前,請確定您具有下列項目:
- 建立 Oracle Cloud Infrastructure (OCI) 與目標第三方雲端之間的專用網路連線。
- 在 Confluent Cloud 新增專用連結的網路組態時,請確定選取「專用 DNS 解析」。
- 在您設定 Confluent Cloud 和 OCI 的第三方雲端中設定 DNS 區域,然後在其中設定 DNS 記錄。在 OCI 中,您可以在 VCN 的專用檢視內建立區域。您可以在區域內新增必要的 DNS 記錄。
您可以使用上面的指示來建立連線,但請取代步驟 5 和步驟 6,執行下列作業:
- 步驟 3e:
- 提供啟動安裝伺服器主機和連接埠詳細資訊。
- 您可以新增多個啟動安裝伺服器。
- 對於 3f:
- 對於「安全性」協定,請選取 SASL over Plaintext 。
- 請輸入使用者名稱及密碼 。
Kafka 連線錯誤疑難排解
大多數的連線問題都會導致 TimeoutException 錯誤。舉例而言:
A failure occurred sending a message to Kafka to topic [ggstest] org.apache.kafka.common.errors.TimeoutException: Topic ggstest not present in metadata after 60000/120000 ms.如果在 Replicat 報表檔案中出現此訊息,您可以:
- 確定目標主題存在,或檢查是否已在目標 Kafka 設定值內啟用自動主題建立。
- 確保沒有任何防火牆規則封鎖流量。
- 如果您使用專用端點在 OCI 上執行 Kafka,請確定使用內部 FQDN 作為 server.properties 和 Kafka 連線中的啟動安裝伺服器。
- 如果您使用專用端點連線至 Confluent Cloud:
- 確定在 OCI 和目標第三方雲端中正確設定 DNS 區域和 DNS 記錄。
- 確保 OCI 與目標雲端之間的網路連線正常運作。
- 測試是否可以從在連線至第三方雲端的相同子網路中執行的 OCI VM,使用 OpenSSL (
openssl s_client -connect <bootstrap>) 連線至目標 Confluent Cloud。 - 測試是否可以在連線至第三方雲端的相同子網路內,發布或使用在 OCI 上執行之 Kafka 從屬端的訊息。如果失敗,請檢查 OCI 和第三方雲端上的網路設定值。