次の方法で共有


トピックを自動的に作成するように HDInsight 上の Apache Kafka を構成する方法

既定では、HDInsight 上の Apache Kafka では、自動的にトピックは作成されません。 Apache Ambari を使って、既存のクラスターでの自動トピック作成を有効にすることができます。 Azure Resource Manager テンプレートを使って新しい Kafka クラスターを作成するときに、自動トピック作成を有効にすることもできます。

Apache Ambari Web UI

Ambari Web UI を使って既存のクラスターでトピックの自動作成を有効にするには、次の手順のようにします。

  1. Azure portal 上で、ご自身の Kafka クラスターを選択します。

  2. クラスター ダッシュボード上で [Ambari ホーム] を選択します。

    クラスター ダッシュボードが選ばれたポータルの画像。

    認証を求められたら、クラスターのログイン (管理者) 資格情報を使用して認証を行います。 代わりに、https://CLUSTERNAME.azurehdinsight.net/ から直接 Ambari に接続することもできます。その際、CLUSTERNAME はご自身の Kafka クラスターの名前になります。

  3. ページの左側にある一覧で Kafka サービスを選びます。

    Apache Ambari のサービス一覧タブ。

  4. ページ中央の [Configs](構成) を選択します。

    Apache Ambari のサービス構成タブ。

  5. [フィルター] フィールドに値「auto.create」を入力します。

    Apache Ambari の検索フィルター フィールド。

    プロパティの一覧にこの設定フィルターが適用されて、auto.create.topics.enable 設定が表示されます。

  6. auto.create.topics.enable の値を true に変更して、[保存] を選択します。 ノートを追加して、もう一度 [保存] を選択します。

    auto.create.topics.enable エントリの画像。

  7. Kafka サービスを選択し、 [Restart](再起動) を選択して、 [Restart all affected](影響を受けるものをすべて再起動) を選択します。 メッセージが表示されたら、 [Confirm restart all](すべて再起動) を選択します。

    Apache Ambari で影響を受けるものがすべて再起動されます。

Note

Ambari REST API を使って Ambari の値を設定することもできます。 現在の構成の取得やその変更のために複数の REST 呼び出しを行う必要があるため、通常はこの方法の方が困難です。詳細については、Apache Ambari REST API を使用した Managed 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 の使用について詳しくは、次のリンクをご覧ください。