クラスタ内のトピックを一覧表示するには、 Google Cloud コンソール、Google Cloud CLI、クライアント ライブラリ、Managed Kafka API、オープンソースの Apache Kafka API を使用します。
トピックを一覧表示するために必要なロールと権限
トピックを一覧表示するために必要な権限を取得するには、プロジェクトに対する Managed Kafka 閲覧者 (roles/managedkafka.viewer)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。
この事前定義ロールには、トピックのリストに必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
トピックを一覧表示するには、次の権限が必要です。
-
トピックを一覧表示する:
managedkafka.topics.list -
トピックを取得する:
managedkafka.topics.get
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
Managed Kafka 閲覧者(roles/managedkafka.viewer)IAM ロールの詳細については、Managed Service for Apache Kafka の事前定義ロールをご覧ください。
トピックを一覧表示する
コンソール
Google Cloud コンソールで、[クラスタ] ページに移動します。
プロジェクトで作成したクラスタが一覧表示されます。
トピックを表示するクラスタをクリックします。
クラスタの詳細ページが表示されます。クラスタの詳細ページの [リソース] タブに、トピックが一覧表示されます。
gcloud
-
Google Cloud コンソールで Cloud Shell をアクティブにします。
Google Cloud コンソールの下部にある Cloud Shell セッションが開始し、コマンドライン プロンプトが表示されます。Cloud Shell はシェル環境です。Google Cloud CLI がすでにインストールされており、現在のプロジェクトの値もすでに設定されています。セッションが初期化されるまで数秒かかることがあります。
gcloud managed-kafka topics listコマンドを実行します。gcloud managed-kafka topics list CLUSTER_ID \ --location=LOCATION_ID \ --limit=LIMITこのコマンドは、指定された Managed Service for Apache Kafka クラスタ内にあるすべてのトピックのリストを取得します。オプション フラグを使用して、出力をフィルタ、制限、並べ替えることができます。
次のように置き換えます。
- CLUSTER_ID: トピックを一覧表示するクラスタの名前。
- LOCATION_ID: クラスタのロケーション。
- LIMIT: 省略可。一覧表示するトピックの最大数。
Kafka CLI
このコマンドを実行する前に、Compute Engine VM に Kafka コマンドライン ツールをインストールします。VM は、Managed Service for Apache Kafka クラスタに接続されているサブネットに到達できる必要があります。 Kafka コマンドライン ツールでメッセージを生成して使用するの手順に沿って操作します。
次のように kafka-topics.sh コマンドを実行します。
kafka-topics.sh --list \
--bootstrap-server=BOOTSTRAP_ADDRESS \
--command-config client.properties
次のように置き換えます。
- BOOTSTRAP_ADDRESS: Managed Service for Apache Kafka クラスタのブートストラップ アドレス。
REST
リクエストのデータを使用する前に、次のように置き換えます。
-
PROJECT_ID: 実際の Google Cloud プロジェクト ID -
LOCATION: クラスタのロケーション -
CLUSTER_ID: クラスタの ID
HTTP メソッドと URL:
GET https://managedkafka.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/topics
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{
"topics": [
{
"name": "projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/topics/__remote_log_metadata",
"partitionCount": 50,
"replicationFactor": 3,
"configs": {
"remote.storage.enable": "false",
"cleanup.policy": "delete",
"retention.ms": "-1"
}
},
{
"name": "projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/topics/TOPIC_ID",
"partitionCount": 3,
"replicationFactor": 3
}
]
}
Go
このサンプルを試す前に、 クライアント ライブラリをインストールするにある Go の設定手順を行ってください。詳細については、 Managed Service for Apache Kafka Go API リファレンス ドキュメントをご覧ください。
Managed Service for Apache Kafka に対する認証を行うには、アプリケーションのデフォルト認証情報(ADC)を設定します。詳細については、ローカル開発環境の ADC を設定するをご覧ください。
Java
このサンプルを試す前に、 クライアント ライブラリをインストールするにある Java の設定手順を行ってください。詳細については、 Managed Service for Apache Kafka Java API リファレンス ドキュメントをご覧ください。
Managed Service for Apache Kafka に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、 ローカル開発環境の ADC の設定をご覧ください。
Python
このサンプルを試す前に、 クライアント ライブラリをインストールするの Python の設定手順を行ってください。詳細については、 Managed Service for Apache Kafka Python API リファレンス ドキュメントをご覧ください。
Managed Service for Apache Kafka に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の ADC の設定をご覧ください。