このトピックでは、E-MapReduce(EMR)クラスターで Kafka サービスを構成する方法について説明します。Kafka の構成を変更してパブリック API をリッスンし、セキュリティグループルールを構成して、クライアントがインターネット経由でクラスター内の Kafka サービスにアクセスできるようにすることができます。
クラスターの作成時にインターネットベースのアクセスを有効にする
EMR コンソールで Dataflow クラスターを作成するときに、コアノードグループの [パブリックネットワーク IP を割り当てる] をオンにします。
セキュリティグループのポート 9093 を有効にすると、パブリック IP アドレスのポート 9093 を使用して Kafka サービスに直接アクセスできます。ポートを有効にする方法の詳細については、「セキュリティグループの管理」をご参照ください。
既存のクラスターでインターネットベースのアクセスを有効にする
Dataflow クラスターは仮想プライベートクラウド(VPC)にデプロイされます。次のいずれかの方法でインターネット経由で Kafka サービスにアクセスできます。エラスティック IP アドレス(EIP)を関連付けるか、Express Connect を使用します。
方法 1:EIP を関連付ける
基本情報 タブに移動します。
EMR コンソール にログオンします。左側のナビゲーションペインで、[ECS 上の EMR] をクリックします。
上部のナビゲーションバーで、クラスターが存在するリージョンを選択 し、ビジネス要件に基づいてリソースグループを選択します。
[ECS 上の EMR] ページで、目的のクラスターを見つけ、[クラスター名] をクリックします。
[基本情報] タブの [セキュリティ] セクションで、[クラスターセキュリティグループ] の横にあるリンクをクリックして、セキュリティグループのポート 9093 を有効にします。詳細については、「セキュリティグループの管理」をご参照ください。
Kafka ブローカーがデプロイされているすべての Elastic Compute Service(ECS)インスタンスに EIP を関連付けます。
[ノード] タブをクリックします。
[ノード] タブで、EIP を関連付けるノードを見つけ、[ノード名/ID] 列の [ID] をクリックします。
ECS コンソールで、EIP を ECS インスタンスに関連付けます。詳細については、「インスタンスへの EIP の関連付け」をご参照ください。
手順 b と 手順 c を繰り返して、Kafka ブローカーがデプロイされているすべての ECS インスタンスに EIP を関連付けます。
[ノード] タブの右上隅で、 を選択して、パブリック IP アドレスに関する情報を Dataflow クラスターに同期します。
Kafka サービスページの [構成] タブで、[kafka.public-access.enable] パラメーターの値を true に変更します。
クライアント構成をデプロイします。
Kafka サービスページの [構成] タブで、[クライアント構成のデプロイ] をクリックします。
表示されるダイアログボックスで、[実行理由] パラメーターを構成し、[OK] をクリックします。
[確認] メッセージで、[OK] をクリックします。
Kafka サービスを再起動します。
Kafka サービスページの [ステータス] タブで、[コンポーネント] セクションの [kafkabroker] を見つけ、[アクション] 列の をクリックします。
表示されるダイアログボックスで、[実行理由] パラメーターを構成し、[OK] をクリックします。
[確認] メッセージで、[OK] をクリックします。
方法 2:Express Connect をデプロイする
Express Connect をデプロイして、インターネットと VPC の間の接続を確立できます。詳細については、「Express Connect とは」をご参照ください。
Kafka にアクセスする
パブリック IP アドレスが構成されている KafkaBroker コンポーネントにアクセスする場合、URL は <ブローカーのパブリック IP アドレス>:9093 の形式になります。
たとえば、ブローカーのパブリック IP アドレスが 211.90.**.** の場合、Kafka サービスにアクセスするためのアドレスは 211.90.**.**:9093 です。
関連情報
Dataflow Kafka クラスターの作成方法の詳細については、「Dataflow Kafka クラスターの作成」をご参照ください。