分享方式:


如何在 HDInsight 上設定 Apache Kafka 以自動建立主題

根據預設,HDInsight 上的 Apache Kafka 不會啟用自動主題建立。 您可以使用 Apache Ambari 為現有的叢集啟用自動主題建立。 您也可以在使用 Azure Resource Manager 範本建立新的 Kafka 叢集時啟用自動主題建立。

Apache Ambari Web UI

若要透過Ambari Web UI在現有叢集上啟用自動主題建立,請使用下列步驟:

  1. 從 Azure 入口網站 中,選取您的 Kafka 叢集。

  2. [叢集儀錶板] 中,選取 [Ambari 首頁]。

    Image of the portal with cluster dashboard selected.

    出現提示時,請使用叢集的登入 (admin) 認證進行驗證。 相反地,您可以直接從 https://CLUSTERNAME.azurehdinsight.net/ 其中 CLUSTERNAME 連線到 Amabri 是 Kafka 叢集的名稱。

  3. 從頁面左側清單中選取 Kafka 服務。

    Apache Ambari service list tab.

  4. 選取頁面中間的 [設定]。

    Apache Ambari service configs tab.

  5. 在 [篩選] 欄位中,輸入 的值 auto.create

    Apache Ambari search filter field.

    這個設定會篩選屬性清單,並顯示 auto.create.topics.enable 設定。

  6. 將的值 auto.create.topics.enable 變更為 true,然後選取 [ 儲存]。 新增附注,然後再次選取 [ 儲存 ]。

    Image of the auto.create.topics.enable entry.

  7. 選取 Kafka 服務,選取 [重新啟動],然後選取 [ 重新啟動所有受影響的]。 出現提示時,選取 [ 確認全部重新啟動]。

    `Apache Ambari restart all affected`.

注意

您也可以透過Ambari REST API 設定Ambari值。 這通常比較困難,因為您必須進行多個 REST 呼叫來擷取目前的組態、修改它等等。如需詳細資訊,請參閱 使用 Apache Ambari REST API 管理 HDInsight 叢集檔。

Resource Manager 範本

使用 Azure Resource Manager 樣本建立 Kafka 叢集時,您可以在 中kafka-broker新增它來直接設定auto.create.topics.enable。 下列 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,請參閱下列連結: