結論:Amazon MSKは「KafkaをAWSでマネージド運用するサービス」
Amazon Managed Streaming for Apache Kafka(Amazon MSK)は、Apache Kafka を AWS 上でフルマネージドに利用できるサービスです。Kafka は、アプリケーションやシステムが発生させるイベントやログを、リアルタイムに受け渡し・蓄積・配信するためによく使われる分散ストリーミング基盤です。
ただし、AWS Certified Cloud Practitioner(CLF-C02)の公式試験ガイド上では、記事執筆時点で Amazon MSK は「out of scope(試験範囲外)」に分類されています。一方で、Amazon Kinesis は in-scope(試験範囲内)です。つまり、Cloud Practitioner 対策としては、MSK を深掘りするよりも、まずは「MSKはKafkaのマネージド版」「Kinesisとの違いをざっくり見分けられる」程度まで押さえるのが効率的です。
Amazon MSKとは何か
AWS公式ドキュメントでは、Amazon MSK はApache Kafka を使ってストリーミングデータを処理するアプリケーションを構築・実行するためのフルマネージドサービスと説明されています。AWS がクラスターの作成・更新・削除などの制御プレーンを提供し、利用者は Kafka の producer / consumer としてデータを送受信できます。
また、Amazon MSK はオープンソース版 Apache Kafka を実行するため、既存の Kafka クライアント、ツール、プラグインを活かしやすい点が大きな特徴です。
イメージしやすい例
たとえば、ECサイトで「注文された」「決済が完了した」「発送された」といったイベントをリアルタイムに流し、別のシステムがそれを受け取って処理するような構成では、Kafka 系の基盤が使われることがあります。Amazon MSK は、その Kafka 基盤を AWS が管理してくれるサービスです。
Amazon MSKでAWSが肩代わりしてくれること
自前で Apache Kafka を構築する場合、通常はサーバー準備、クラスター設定、パッチ適用、障害対応、スケーリング、監視などを自分で考える必要があります。Amazon MSK では、これらの運用負荷を大きく減らせます。
- Kafka クラスターの作成・更新・削除
- 高可用性を考慮したクラスター基盤の運用
- パッチ適用や置き換えなどの運用支援
- 監視やログ連携
- スケーリング支援
要するに、「Kafkaは使いたいが、Kafka基盤の面倒はできるだけ見たくない」という場面で選ばれるサービスです。
MSK Provisioned と MSK Serverless
Amazon MSK には、代表的に次の考え方があります。
- MSK Provisioned:ブローカーや構成を比較的細かく管理したい場合に向く
- MSK Serverless:クラスター容量の管理やスケーリングを極力意識したくない場合に向く
MSK Serverless は、AWS公式ドキュメント上でクラスター容量の管理やスケーリングをせずに Apache Kafka を実行できるクラスタータイプと説明されています。Cloud Practitioner ではここまで深く問われる可能性は高くありませんが、サービスの方向性としては理解しておくと整理しやすくなります。
Cloud Practitioner試験で本当に大事なポイント
ここは重要です。Cloud Practitioner 対策としては、Amazon MSK を細部まで覚えるより、次の見分け方を優先するのが実践的です。
| サービス | 何をするサービスか | Cloud Practitionerでの扱い |
|---|---|---|
| Amazon MSK | Apache Kafka を AWS 上でフルマネージド利用する | 記事執筆時点の CLF-C02 公式ガイドでは試験範囲外 |
| Amazon Kinesis | AWSネイティブなリアルタイムデータストリーミング基盤 | 試験範囲内 |
| Amazon MQ | ActiveMQ Classic / RabbitMQ 向けのマネージドメッセージブローカー | MSKと混同しないことが大切 |
Amazon MSKとAmazon Kinesisの違い
試験対策で最も混同しやすいのが、MSK と Kinesis です。
Amazon MSK
- Apache Kafka を使いたいときの選択肢
- 既存の Kafka エコシステムを活かしやすい
- Kafka の producer / consumer、トピック、ブローカーといった概念が前提
Amazon Kinesis
- AWS ネイティブなストリーミングサービス
- AWS の他サービスと組み合わせやすい
- Cloud Practitioner ではこちらの方が優先度が高い
見分け方のコツは、「問題文に Apache Kafka という明示があるか」です。Kafka をそのまま使いたいなら MSK、AWS の代表的なストリーミング基盤として問われるなら Kinesis をまず考えると整理しやすくなります。
Amazon MSKとAmazon MQの違い
Amazon MQ は、Apache ActiveMQ Classic と RabbitMQ 向けのマネージドメッセージブローカーです。つまり、同じ「メッセージをやり取りする基盤」に見えても、前提となる技術が異なります。
- Kafka を使う → Amazon MSK
- ActiveMQ / RabbitMQ を使う → Amazon MQ
試験では、製品名やプロトコル名がヒントになることがあります。Kafka なら MSK、RabbitMQ や ActiveMQ なら Amazon MQ、という対応を押さえておくと混乱しにくくなります。
Cloud Practitioner向けの覚え方
- Amazon MSK = Apache Kafka のフルマネージドサービス
- Kafka を AWS 上で運用しやすくするためのサービス
- Cloud Practitioner では細かい Kafka 設定より、サービスの位置づけ理解が大事
- しかも記事執筆時点の CLF-C02 公式試験ガイドでは Amazon MSK は試験範囲外
- そのため優先順位としては Kinesis の理解の方が高い
試験直前の確認ポイント
- Amazon MSK は何の略か説明できるか
- 「Kafka をマネージドで使うサービス」と一言で言えるか
- Kinesis との違いを「Kafkaベースか、AWSネイティブか」で説明できるか
- Amazon MQ との違いを「Kafka か、ActiveMQ/RabbitMQ か」で説明できるか
- CLF-C02 では、MSK より Kinesis の方が優先度が高いと理解しているか
参考情報(AWS公式)
- Amazon MSK とは:https://docs.aws.amazon.com/msk/latest/developerguide/what-is-msk.html
- Amazon MSK の機能:https://aws.amazon.com/msk/features/
- MSK Serverless:https://docs.aws.amazon.com/msk/latest/developerguide/serverless.html
- Amazon Kinesis Data Streams とは:https://docs.aws.amazon.com/streams/latest/dev/introduction.html
- Amazon MQ とは:https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/welcome.html
- AWS Certified Cloud Practitioner (CLF-C02) Exam Guide:https://docs.aws.amazon.com/pdfs/aws-certification/latest/cloud-practitioner-02/cloud-practitioner-02.pdf
まとめ
Amazon MSK は、Apache Kafka を AWS 上でフルマネージド利用するためのサービスです。AWS認定試験の学習では、まず「Kafka のマネージド版」という本質を短く押さえ、そのうえで Kinesis との違い、Amazon MQ との違い を見分けられるようにするのが効果的です。
ただし、Cloud Practitioner(CLF-C02)対策としては、記事執筆時点の公式試験ガイドでは Amazon MSK は試験範囲外です。したがって、MSK は高レベル理解にとどめ、優先的には Kinesis などの in-scope サービスを先に固めるのが合格に直結しやすい学習方針です。
