如何將 HDInsight 上的 Apache Kafka 設定為自動建立主題
根據預設,HDInsight 上的 Apache Kafka 不會啟用自動建立主題。 您可以使用 Apache Ambari,針對現有的叢集啟用自動建立主題。 您也可以在使用 Azure Resource Manager 範本建立新的 Kafka 叢集時,啟用自動建立主題。
Apache Ambari Web UI
若要透過 Ambari Web UI 針對現有的叢集啟用自動建立主題,請使用下列步驟:
從 Azure 入口網站,選取 Kafka 叢集。
從 [叢集儀表板] 中,選取 [Ambari 首頁]。
出現提示時,使用叢集的登入 (系統管理員) 認證進行驗證。 相反地,您可以直接從
https://CLUSTERNAME.azurehdinsight.net/
其中CLUSTERNAME
連線到Ambari是Kafka叢集的名稱。從頁面左邊的清單中,選取 [Kafka] 服務。
選取頁面中間的 [設定]。
在 [篩選] 欄位中,輸入
auto.create
的值。此設定會篩選屬性清單,並顯示
auto.create.topics.enable
設定。將
auto.create.topics.enable
的值變更為true
,然後選取 [儲存]。 新增附註,然後再次選取 [儲存]。依序選取 [Kafka] 服務、[重新啟動] 和 [重新啟動所有受影響的]。 出現提示時,選取 [確認全部重新啟動]。
注意
您也可以透過 Ambari REST API 設定 Ambari 值。 這通常比較困難,因為您必須進行多個 REST 呼叫來擷取目前的組態、修改它等等。如需詳細資訊,請參閱 使用 Apache Ambari REST API 的受控 HDInsight 叢集檔。
Resource Manager 範本
使用 Azure Resource Manager 範本建立 Kafka 叢集時,您可以藉由將 auto.create.topics.enable
加入至 kafka-broker
來直接設定它。 下列 JSON 程式碼片段示範如何將此值設定為 true
:
"clusterDefinition": {
"kind": "kafka",
"configurations": {
"gateway": {
"restAuthCredential.isEnabled": true,
"restAuthCredential.username": "[parameters('clusterLoginUserName')]",
"restAuthCredential.password": "[parameters('clusterLoginPassword')]"
},
"kafka-broker": {
"auto.create.topics.enable": "true"
}
}
}
後續步驟
在本文件中,您已了解如何針對 HDInsight 上的 Apache Kafka 啟用自動建立主題。 若要深入了解 Kafka 的使用方式,請參閱下列連結: