第12章 AWSメッセージング AWSメッセージング、オーケストレーション、モニタリング、アクセス管理サービス
この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com
大規模に稼働するシステムでは、複数のコンポーネントが相互に影響し合い、タスクを実行するために連携する。、これをオーケストレーションと呼ぶ。アプリケーションコンポーネント間のこの通信と調整は、異なるAWSサービスによって管理することができ、ユースケースに基づいてサービスを選択することができる。この章では、複数のサブスクライバにメッセージをブロードキャストするために使用できるAmazon Simple Notification Service (SNS)や、異なるAWSサービスやカスタムサービスを特定の順序で調整し実行するために使用できるAWS Step Functionsのようなオーケストレーションのコアサービスを深く掘り下げていく。
Amazon Managed Streaming for Apache Kafka(MSK)、Amazon Kinesis、Amazon Simple Queue Service(SQS)、Amazon SNSなど、AWSクラウド環境でpub/subデザインパターンを実現するのに役立つAWSサービスの説明から始める。その後、Amazon CloudWatch、AWS IAM、Amazon Cognitoなどのモニタリング、認証認可、認証サービスに移る。
Kafka 用 Amazon マネージド・ストリーミング
第8章でパブ/サブアーキテクチャ、メッセージブローカー、メッセージキューについて説明した。この章では、これらの概念の上にアプリケーションを設計するためにAWSが提供するいくつかのサービスを紹介する。Apache Kafka はオープンソースのメッセージブローカーであり、イベントドリブンアーキテクチャを設計するために広く使用されているイベントストリーミングプラットフォームである。AWSはApache KafkaのマネージドサービスであるAmazon MSKを提供し、演算子の負担を軽減している。MSKは、クラスタの作成、更新、削除などのコントロールプレーン演算子や、イベントのプロデューサやコンシューマなどのデータプレーン演算子を顧客に公開している。
MSKクラスタをセットアップする際、ブローカーノードの数と種類、および各AZのストレージ容量を指定する。高いクラスタ可用性を確保するには、最低2つのAZを選択する必要がある。MSKはブローカーの障害を自動的に検出し、同じIPアドレスを持つ健全なノードと置き換える。AWS環境の他の多くのサービスと同様に、MSKはサーバーレスとプロビジョニングの2つのキャパシティモードで提供される。サーバーレスオプションを選択すれば、インフラ構成はAWSに任せることができ、プロビジョニングオプションを選択すれば、ノードやストレージ構成を選択することができる。ブローカーノード間の調整と同期はZooKeeperノードでマネージされ、MSKがこれらのノードを作成してくれる。MSKは最近のバージョン3.7.xでは KRaftモードもサポートしている。KRaftはZooKeeperの機能を扱うことができる。
MSKクラスタのセットアップにおける次の設定は、ネットワーク、セキュリティ、およびモニタリングに関するものである。ブローカーを起動するAZとサブネットを選択し、セキュリティ対策を定義する必要がある。まず、クライアントがMSKクラスタにアクセスする方法について説明する: ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access