managing-amazon-msk について
Standard および Express ブローカーを持つ Amazon MSK Provisioned クラスターの運用知識を提供するスキルです。障害調査、サイズ選定、ストレージ、クライアント設定、監視、トピック管理、ストリーミング関連の作業を扱います。
主な機能
- 01パフォーマンスとコンシューマーラグの調査
- 02ブローカー構成とストレージの計画
- 03Kafka クライアントとクラスターの設定
- 04トピックとレプリケーションの管理
- 05CloudWatch 監視とアラームの設定
- 06付属スクリプトによるサイズ選定
活用シーン
- 01レイテンシーやコンシューマーラグの調査
- 02クラスター構成の選定と料金見積もり
- 03認証とブローカー設定の構成
- 04レプリケーションやストリーム配信の計画
MCP 対応
利用可能な場合は AWS MCP サーバーのツールでコマンドを実行し、使えない場合は AWS CLI またはシェルを使用します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ aws/ agent-toolkit-for-aws --skill managing-amazon-mskインストール後、Claude Code で/managing-amazon-mskを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/configure-clients.mdconfigure-cluster.mddata-delivery-for-general-purpose-s3.mdmaintenance-operations.mdmanage-storage.mdmanage-topics.mdmonitor-and-alarm.mdmsk-replicator.mdsize-and-choose-cluster.mdstreaming-tables-troubleshooting.mdstreaming-tables.mdtroubleshoot-consumer-lag.mdtroubleshoot-performance.mdzk-to-kraft-migration.mdscripts/msk_sizing.py詳細
Amazon MSK
概要
Standard および Express ブローカータイプを使用する Amazon MSK Provisioned クラスターの運用に関する専門知識です。パフォーマンスのトラブルシューティング、コンシューマーラグの診断、ストレージ管理、クラスターのサイジング、クライアント設定、CloudWatch のモニタリングを扱います。
接続時は、AWS MCP サーバーで利用できるツールを使用してコマンドを実行してください。サンドボックス化された実行、監査ログ、可観測性を提供します。MCP サーバーを利用できない場合は、必要に応じて AWS CLI またはシェルを使用してください。
Standard ブローカーは、ストレージにお客様が管理する EBS ボリュームを使用します。インスタンスタイプ(kafka.m5/m7g ファミリー)を選択し、EBS をプロビジョニングして、ストレージのスケーリングを管理します。
Express ブローカーは、express.m7g で始まるインスタンスタイプを使用し、ほぼすべての MSK ワークロードでデフォルトとして推奨されます。通常、手間が少ないだけでなく、コストも低くなります。ブローカーあたり最大 3 倍のイングレス(MSK Express ブローカータイプ)により、同じ負荷に必要なブローカー数が減り、ストレージ料金は、縮小できない EBS に事前にプロビジョニングするのではなく、実際に保持されているデータに対して GB 時間単位で課金されます。また、スケーリングは 20 倍高速で、パーティションのリバランスは 180 倍高速(インテリジェントなリバランス)、復旧は 90%高速(MSK Express ブローカータイプ)で、メンテナンスウィンドウもありません。Express ブローカーには、お客様が管理する EBS がありません。Express クラスターに対して EBS の拡張やプロビジョンドスループットを推奨しないでください。Express ブローカーでは、レプリケーション係数は 3、min.insync.replicas=2 に固定されます。Standard と Express の選択基準の詳細については、size-and-choose-cluster.md を参照してください。
必要なワークフローはどれですか?
まずブローカータイプを特定します。aws kafka describe-cluster-v2 --cluster-arn <arn> を実行してください。Provisioned.BrokerNodeGroupInfo.InstanceType を確認します。express. で始まる場合は Express クラスターです。
| お客様の意図 | 参照 |
|---|---|
| CPU 使用率の高さ、レイテンシの高さ、クラスターの遅延、トラフィックシェーピング | troubleshoot-performance.md |
| コンシューマーラグの増加、リバランスの頻発、停止したコンシューマーグループ | troubleshoot-consumer-lag.md |
| ディスク容量の逼迫、保持期間の計画、階層型ストレージ | manage-storage.md |
| Standard と Express の選択、クラスターのサイズ設定、パーティション数の上限、ブローカー数、月額コスト | size-and-choose-cluster.md |
| プロデューサー/コンシューマーの設定、IAM/SCRAM/TLS 認証 | configure-clients.md |
MSK 設定(server.properties)の作成/適用、custom.advertised.listeners を使ったブローカーのカスタムドメイン名(advertised listeners、静的/カスタムのブートストラップエンドポイント)— 検証ルール、適用/ロールバック、スケーリング、動的なブローカーごとの kafka-configs.sh オーバーライドから静的プロパティへの移行 | configure-cluster.md |
| カスタムドメインのクライアント側接続:NLB + ACM 証明書 + Route 53 によるフロントエンド化、TLS ハンドシェイク/終端、NLB 経由の mTLS、クロスゾーン負荷分散 | configure-clients.md(Custom Domain Name Connectivity セクション) |
Kafka トピックの作成、更新、削除、一覧表示、説明、ネイティブのトピック API/CfnTopic と Kafka 管理クライアントの使い分け | manage-topics.md |
| MSK Replicator の設定、移行、DR、アクティブ/アクティブ・アクティブ/パッシブ、クロスアカウントレプリケーション、セルフマネージドから MSK への移行または MSK 間の移行、ループ防止/トピック命名の動作 | msk-replicator.md |
パーティションごとのレプリケーションスループット、Replicator に必要なパーティション数、Replicator のスケーリングでスループットが増加しない理由、Replicator のクォータ(トピック数、イングレス、レコードサイズ)、ReplicationLatency/MessageLag/ReplicatorThroughput | msk-replicator.md(パーティション数のサイズ設定セクション) |
| モニタリング、ダッシュボード、アラームの設定 | monitor-and-alarm.md |
| CloudWatch メトリクスの全一覧(Standard または Express) | 戦略的な推奨事項やメトリクスの解釈方法については、monitor-and-alarm.md を優先してください。この参照ファイルに含まれていないメトリクスを理解する必要がある場合に限り、ドキュメント(全一覧については MSK Standard CloudWatch Metrics、MSK Express CloudWatch Metrics)を検索してください |
| ローリング再起動の影響、パッチ適用、メンテナンス時のレジリエンス | maintenance-operations.md |
| 完全マネージド型サービスで低コストに、ストリーミングデータを S3 Tables 上の Apache Iceberg テーブルに配信する(Streaming Tables)— 設定、IAM、スキーマ、チャネルの作成/更新/削除/一覧表示/説明 | streaming-tables.md |
| 完全マネージド型サービスで低コストに、トピックデータを JSON/ByteArray/String オブジェクトとして S3 バケットに配信する(Data Delivery for General Purpose S3 buckets)— 設定、IAM、出力キーのテンプレート、チャネルの作成/更新/削除/一覧表示/説明 | data-delivery-for-general-purpose-s3.md |
| Kafka からレイクハウス/データレイクを構築する、ストリーミングデータを Athena でクエリ可能にする | streaming-tables.md |
| MSK で Kafka Connect S3 Sink または Amazon Data Firehose の代替手段を利用する、運用作業なしでストリーミングデータを S3 に配信する | data-delivery-for-general-purpose-s3.md |
| Streaming Tables/Data Delivery の CloudWatch メトリクスとアラーム、DLQ エラー、配信失敗、チャネル状態の遷移、鮮度の遅延 | streaming-tables-troubleshooting.md |
| 「MSK Serverless/Standard ブローカーで Streaming Tables/Data Delivery を利用できますか?」— 利用条件の案内 | streaming-tables.md(回答は常に、Express ブローカーのみ利用可能です。Standard と Serqverless では Firehose、Flink、または Kafka Connect を使用してください — Amazon MSK の Firehose 統合) |
| MSK で現在サポートされている Kafka のバージョンは何ですか? | サポート対象の Apache Kafka バージョン |
| MSK は KRaft クラスターをサポートしていますか?ZooKeeper モードと KRaft モードのクラスター間で移行するにはどうすればよいですか? | zk-to-kraft-migration.md |
| MSK Express の現在のクォータ(イングレス、エグレス、パーティション数、ブローカー数など)は何ですか? | MSK Express のクォータ |
| MSK Standard の現在のクォータ(パーティション数、ブローカー数など)は何ですか? | MSK Standard のクォータ、およびパーティション数の上限については MSK Standard のベストプラクティス |
| MSK Express または Standard ブローカーで、ブローカーレベルのどのような設定変更ができますか? | MSK の設定 |
利用可能なスクリプト
scripts/msk_sizing.py— ブローカー数、インスタンスの選択、コストなどのサイジングに関する質問では、必ず実行してください。AWS 認証情報とpricing:GetProducts権限が利用可能な場合は、AWS Pricing API からリアルタイムの料金を取得します。利用できない場合は、埋め込みのus-east-1スナップショットにフォールバックするため、認証情報の有無にかかわらず実行できます。必須のワークフローとスクリプトのリファレンスについては、size-and-choose-cluster.md を参照してください。
ガードレール — このスキルのファイルの保存場所(MCP とローカルインストール)
このスキルは 2 通りの方法で読み込めます。その方法によって、references/ ドキュメントと scripts/ ファイルという、スキルに同梱された独自のファイルの参照先が異なります。リファレンスを読む前、またはスクリプトを実行する前に、スキルがどのように読み込まれたかを確認してください。
- AWS MCP の
retrieve_skillツール呼び出しを通じて読み込まれた場合。 スキルはローカルファイルシステムにインストールされていません。リファレンスファイルとスクリプトはディスク上に存在しません。fileパラメーターを指定して、同じretrieve_skillツールから各リファレンスやスクリプトを取得し(例:file="references/configure-clients.md"またはfile="scripts/msk_sizing.py")、そのツールが返す内容を使ってスクリプトを実行してください。これらのパスをローカルまたは作業ディレクトリからfile_readで読み込んだり、ファイルシステムを検索したりしないでください。該当ファイルは存在せず、たまたま名前が一致するローカルファイルがあっても、このスキルとは無関係です。 - ローカルにインストールされている場合(スキルが
.claude/skills/managing-amazon-msk/、~/.claude/skills/managing-amazon-msk/、.kiro/skills/managing-amazon-msk/などのローカルスキルディレクトリにある場合)。このドキュメント全体に記載されている相対パスを使って、ローカルのスキルディレクトリからリファレンスを読み込み、スクリプトを実行してください。
この違いは、スキルにパッケージ化されたファイルのみに適用されます。セッション中に作成された、またはユーザーから提供された成果物は、スキルの読み込み方法にかかわらず、ユーザーの作業ディレクトリから読み込み、そこに書き込んでください。retrieve_skill を通じて顧客データを取得したり、書き込んだりしないでください。
一般的なワークフロー
Amazon MSK 設定の作成と適用、およびカスタムドメイン名の設定 — Amazon MSK 設定(fileb:// による実際の改行の要件を満たした server.properties)を作成し、update-cluster-configuration で適用して、custom.advertised.listeners でブローカーのカスタムドメイン名を設定する方法については、configure-cluster.md を参照してください。カスタムドメインの接続を提供する NLB、証明書、DNS については、configure-clients.md を参照してください。