クラウド移行やテストのシナリオでは、グループの自動作成を有効にすることで、コードから直接グループを作成できます。これにより、コンソールでの手動作成が不要になり、操作が簡素化され、効率が向上します。
前提条件
ApsaraMQ for Kafka インスタンスを購入し、デプロイ済みである必要があります。インスタンスは、次の条件を満たす必要があります。
項目 | 説明 |
ステータス | サービス中。 |
バージョン | メジャーバージョンが 2.2.0 で、マイナーバージョンが最新であること。 |
インスタンスのステータスとバージョンは、ApsaraMQ for Kafka コンソールの インスタンスの詳細 ページの 基本情報 セクションで確認できます。
注意事項
本番環境では、グループの自動作成を長期間有効にしないでください。クライアントによる不適切な使用は、制御不能なリソース消費につながる可能性があります。これにより、運用保守コストが増加し、システムの不安定化を引き起こす可能性があります。ApsaraMQ for Kafka コンソールで手動でグループを作成するか、OpenAPI を呼び出して一元管理してください。詳細については、「グループの作成」および「CreateConsumerGroup」をご参照ください。
操作手順
ApsaraMQ for Kafka コンソールにログインします。概要 ページの リソースの分布 セクションでリージョンを選択します。
インスタンスリスト ページで、対象インスタンスの名前をクリックします。
設定情報 セクションで、フリーユーズグループ スイッチをオンにします。
重要カスタムグループ名は、グループの命名規則に従う必要があります。
グループ名は 3~128 文字である必要があります。
グループ名には、英字、数字、ハイフン (-)、アンダースコア (_) のみ使用できます。また、少なくとも 1 つの英字または数字を含む必要があります。
自動作成されるグループの数は、ご利用の ApsaraMQ for Kafka インスタンスの仕様の上限を超えることはできません。上限に達した場合、グループは自動作成されません。詳細については、「制限事項」をご参照ください。
ApsaraMQ for Kafka コンソールでグループの自動作成を有効にすると、自動作成されたグループが Group の管理 ページに表示されます。これらのグループの説明は「自動作成」となります。
この機能を使用して作成されたグループの場合、対応するグループ情報がコンソールの Group の管理 ページに表示されます。自動作成 列は はい に設定されます。
「グループの動的作成」機能が有効な場合、ApsaraMQ for Kafka はコンソールで作成されていないグループが API を呼び出して、メッセージの消費やオフセットのコミットなどの操作を行うことを許可します。この機能が無効な場合、コンソールで作成されていないグループはメッセージを消費できません。この機能を無効にする際はご注意ください。
グループの自動作成の無効化は非同期プロセスです。このプロセス中、ノードは再起動されません。インスタンスのステータスは [アップグレード中] に変わります。機能が無効になると、ステータスは [サービス中] に戻ります。この機能が無効化されている間は、新しいグループを自動で作成しないでください。
グループの自動作成を有効にせずに Assign メソッドを使用してコンシューマーオフセットをコミットした場合でも、対応するグループが Kafka クラスター上に作成されます。この機能はデフォルトで有効になっています。無効にするには、チケットを起票してください。
サーバーサイドは、コンシューマーオフセットの有効期限が切れた後、自動作成されたグループをクリーンアップします。
グループの無料利用を有効にした後、コンシューマーサイドで API を呼び出してグループを使用できます。サンプルコードは次のとおりです。
props.put(ConsumerConfig.GROUP_ID_CONFIG, "newConsumerGroup"); consumer.subscribe(Collections.singletonList("newTopicName")); // グループが存在せず、その名前が有効な場合、自動的に作成されます。 consumer.poll(Duration.ofSeconds(1));
関連ドキュメント
自動作成されたグループを使用して Topic をサブスクライブした後、コンソールでその Topic をサブスクライブしているグループを表示できます。詳細については、「Topic をサブスクライブしているグループの表示」をご参照ください。
コンソールまたは API を使用してグループを作成するには、「グループの作成」および「CreateConsumerGroup」をご参照ください。