トピックを自動的に作成するように HDInsight 上の Apache Kafka を構成する方法
既定では、HDInsight 上の Apache Kafka では、自動的にトピックは作成されません。 Apache Ambari を使って、既存のクラスターでの自動トピック作成を有効にすることができます。 Azure Resource Manager テンプレートを使って新しい Kafka クラスターを作成するときに、自動トピック作成を有効にすることもできます。
Apache Ambari Web UI
Ambari Web UI を使って既存のクラスターでトピックの自動作成を有効にするには、次の手順のようにします。
Azure portal 上で、ご自身の Kafka クラスターを選択します。
クラスター ダッシュボード上で [Ambari ホーム] を選択します。
認証を求められたら、クラスターのログイン (管理者) 資格情報を使用して認証を行います。 代わりに、
https://CLUSTERNAME.azurehdinsight.net/
から直接 Ambari に接続することもできます。その際、CLUSTERNAME
はご自身の Kafka クラスターの名前になります。ページの左側にある一覧で Kafka サービスを選びます。
ページ中央の [Configs](構成) を選択します。
[フィルター] フィールドに値「
auto.create
」を入力します。プロパティの一覧にこの設定フィルターが適用されて、
auto.create.topics.enable
設定が表示されます。auto.create.topics.enable
の値をtrue
に変更して、[保存] を選択します。 ノートを追加して、もう一度 [保存] を選択します。Kafka サービスを選択し、 [Restart](再起動) を選択して、 [Restart all affected](影響を受けるものをすべて再起動) を選択します。 メッセージが表示されたら、 [Confirm restart all](すべて再起動) を選択します。
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 の使用について詳しくは、次のリンクをご覧ください。