全般
Q: Amazon MQ とは何ですか?
QAmazon MQ は、クラウド内でメッセージブローカーの設定や運用を簡単に行えるようにしてくれる、Apache ActiveMQ および RabbitMQ向けのマネージド型メッセージブローカーサービスです。ActiveMQ コンソール、RabbitMQ コンソール、JMS、AMQP 0.9.1、AMQP 1.0、STOMP、MQTTV3、WebSocket などのメッセージング用の業界標準 API とプロトコルに直接アクセスできます。いくつかの手順でこれらの標準を使用して新しい Amazon MQ ブローカーを作成することも、メッセージングコードを書き換えることなく既存のメッセージブローカーを Amazon MQ に移行することもできます。
Q: Amazon MQ はどのような利用者に適していますか?
Amazon MQ は、業界標準のメッセージング API とプロトコルを採用して、メッセージブローカー自体を管理するという運用上の負担なしに、クラウド上のアプリケーションを切り離してスケーリングすることを計画している企業の IT プロフェッショナル、開発者、アーキテクトに適しています。
Q: Amazon MQ は私に代わって何を管理してくれるのですか?
Amazon MQ は、メッセージブローカーをセットアップし、インフラストラクチャとオープンソースのブローカーエンジンソフトウェアをプロビジョニングするプロセスを管理します。ブローカーが稼働すると、Amazonが継続的なソフトウェアアップグレード、セキュリティ更新、障害検出、および復旧を管理します。
いくつかの手順を踏むだけで、Amazon MQ マルチ AZ 配置ブローカーを作成できます。 Amazon MQ は、デプロイ内のノードを自動的に管理し、高可用性を実現するためのデータをレプリケートし、定期的にパッチをデプロイし、AWS サービスとの統合を管理し、重要なメトリックスを表示し、ブローカーエンジンのバージョンアップグレードをサポートするので、オープンソースバージョンの最新の改善点を活用できます。
Q: Amazon MQ と、自分で管理する Amazon EC2 の ActiveMQ や RabbitMQ はどのように使い分ければよいですか?
Amazon MQ では、ブローカーのプロビジョニング、セキュリティパッチ、セットアップ、設定、ブローカーのバージョンアップグレード、復旧などの管理タスクについて心配する必要はありません。運用オーバーヘッドと関連コストの削減を希望する場合、Amazon MQ が適しています。機能や設定をカスタマイズしたり、カスタムプラグインを使用したりするための制御を強化したい場合は、メッセージブローカーを Amazon EC2 に直接インストールして実行することを検討してください。
特定のユースケースでは、RabbitMQ のノード間データ転送により、セルフマネージドクラスターのコストが高くなることがあります。Amazon MQ では、RabbitMQ ブローカーのノード間データ転送には料金はかかりません。
Q: Amazon MQ の使用を開始するには、どうすればよいですか?
Amazon MQ では、クラウド内のメッセージブローカーの設定や運用を簡単に行えます。Amazon MQ を使用すれば、 AWS マネジメントコンソール、CLI、API コールを使用して、本番環境に対応したメッセージブローカーを数分で起動できます。多くの場合、Amazon MQ ブローカーのエンドポイントを更新するだけで、既存のアプリケーションに接続してメッセージの送信を開始できます。
Create a Connected メッセージブローカー で簡単なチュートリアルを試して、今すぐ使用を開始しましょう。
Q. どの AWS リージョンで Amazon MQ が提供されていますか?
Amazon MQ のリージョン別利用状況については、ここに記載されています。
Amazon MQ への移行
Q: ActiveMQ や RabbitMQ 以外のメッセージブローカーを使用している場合、どのように移行できますか?
Amazon MQ には、Java Message Service (JMS) や .NET Message Service (NMS) などの一般的なメッセージング API、および AMQP、STOMP、MQTT、WebSocket といったプロトコルとの互換性があります。このため、どのような標準に準拠したメッセージブローカーからでも、アプリケーション内のメッセージングコードを書き換えることなく Amazon MQ に切り替えられます。多くの場合、Amazon MQ ブローカーのエンドポイントを更新するだけで、既存のアプリケーションに接続して、メッセージの送信を開始できます。
Apache ActiveMQ
Q: Apache ActiveMQ とは何ですか?
Apache ActiveMQ は、オープンソースのマルチプロトコルの Java ベースのメッセージブローカーです。
Q: Amazon MQ はどのバージョンの ActiveMQ をサポートしていますか?
Amazon MQ はデフォルトで ActiveMQ クラシックバージョン 5.17 をサポートしています。お客様は ActiveMQ 5.15 や 5.16 などの古いバージョンを選択できますが、Amazon MQ ではそれらを推奨していません。
Q: ActiveMQ の新しいバージョンは Amazon MQ でどのようにサポートされますか?
Amazon MQ では、新しい ActiveMQ バージョンのサポートを継続的に追加していきます。サポートされる新しいバージョンの数は、オープンソースのメンテナーによるリリースの頻度と内容によって異なります。
Q: ブローカーでサポートされている ActiveMQ バージョンを指定する方法を教えてください。
AWS マネジメントコンソールまたは CreateBroker API を使用して新しいブローカーを作成するときに、ActiveMQ バージョン (例:ActiveMQ 5.17.6) を指定できます。Amazon MQ は、AWS マネジメントコンソールでデフォルトで利用可能な最新バージョンを提供します。
Q: ブローカーをサポートされている最新の ActiveMQ バージョンにアップグレードする方法を教えてください。
ブローカーは、サポートされている次のメジャー、マイナー、またはパッチバージョンにいつでも手動でアップグレードできます。マイナーバージョン自動アップグレードを有効にすると、Amazon MQ は次のメンテナンス期間中にブローカーをサポートされている最新のパッチバージョンにアップグレードします。Amazon MQ は、現在のマイナーバージョンのサポート終了時に、すべてのブローカーを次にサポートされているマイナーバージョンにアップグレードします。
Q: Amazon MQ の ActiveMQ のバージョンがサポート終了になった場合はどうなりますか?
Amazon MQ は、ActiveMQ バージョンサポートカレンダーに記載されているサポート終了日までの ActiveMQ バージョンをサポートします。Amazon MQ は、バージョンのサポートが終了する少なくとも 90 日前に通知します。Amazon MQ は、現在のマイナーバージョンのサポート終了時に、すべてのブローカーを次のサポート対象バージョンにアップグレードします。
Q: 特定のバージョンで ActiveMQ ブローカーを作成できないのはなぜですか?
Amazon MQ は、バージョンが Amazon の品質、パフォーマンス、またはセキュリティ基準を満たしていない場合など、事前の通知なしに特定のバージョンのサポートを終了することがあります。万が一、このようなケースが発生した場合、Amazon MQ はこれらのバージョンでの新しいブローカーの作成を防ぎ、既存のブローカーを当社の基準を満たす次のサポート対象バージョンにアップグレードします。特定の状況では、対処すべき問題によって別のスケジュールを決定する可能性があります。
Q: Amazon MQ for ActiveMQ ではどのタイプのストレージを利用できますか?
Amazon MQ for ActiveMQ は、Amazon Elastic File System (Amazon EFS) を使用して最適化された耐久性と Amazon Elastic Block Store (EBS) を使用して最適化されたスループットの 2 種類のブローカーストレージをサポートします。複数のアベイラビリティーゾーン全体で高い耐久性とレプリケーションを活用するには、Amazon EFS によって耐久性に最適化されたブローカーを使用します。大量のアプリケーションで高いスループットを活用するには、EBS によってスループットに最適化されたブローカーを使用します。
Q: Amazon MQ のブローカーのネットワークとは何ですか?
Amazon MQ for ActiveMQ は Apache ActiveMQ の一部である「ブローカーのネットワーク」機能を利用しています。ブローカーのネットワークは、メッシュ状に接続された複数のブローカーで構成されます。ネットワーク内のブローカーは、それぞれのブローカーがホストするクライエントと送信先に関する情報を共有します。ブローカーはこの情報を使って、ネットワークを通してメッセージをルーティングします。Amazon MQ では、ネットワーク内のブローカーは、アクティブ-スタンバイブローカー (ネットワーク内の各アクティブブローカーには、共有ストレージを備えたスタンバイノードがあり、アクティブノードに障害が発生した場合に引き継ぎます) か、または単一インスタンスのブローカー (ノードに障害が発生した場合、再起動するまで使用できなくなります) のどちらかです。ネットワーク内の各ブローカーは独自のメッセージストアを維持し、耐久性が最適化されたストレージを使用して、アクティブ/スタンバイブローカーのリージョン内の複数のアベイラビリティーゾーン(AZ)に複製されます。ネットワーク内のノードは、メッセージを互いに転送するので、メッセージはいつでも単一のブローカーによって格納されます。ブローカー障害の場合に高速再接続のある高可用性を必要とする場合や、水平方向にスケーリングする必要がある場合は、ブローカーのネットワークを使用する必要があります。
RabbitMQ
Q: ラビットMQ とは何ですか?
RabbitMQ は、さまざまなメッセージングユースケースをサポートするオープンソースのマルチプロトコルメッセージブローカーです。
Q: Amazon MQ はどのバージョンの RabbitMQ をサポートしていますか?
Amazon MQ はデフォルトで RabbitMQ バージョン 3.13 をサポートしています。お客様は RabbitMQ 3.8、3.9、3.10、3.11、3.12 などの古いバージョンを選択できますが、Amazon MQ ではそれらを推奨していません。
Q: RabbitMQ の新しいバージョンは Amazon MQ でどのようにサポートされますか?
Amazon MQ では、新しい RabbitMQ バージョンのサポートを継続的に追加していきます。サポートされる新しいバージョンの数は、オープンソースのメンテナーによるリリースの頻度と内容によって異なります。
Q: ブローカーでサポートされている RabbitMQ バージョンを指定する方法を教えてください。
AWS マネジメントコンソールまたは CreateBroker API を使用して新しいブローカーを作成するときに、RabbitMQ バージョン (例:RabbitMQ 3.13) を指定できます。Amazon MQ は、AWS マネジメントコンソールでデフォルトで利用可能な最新バージョンを提供します。
Q: ブローカーをサポートされている最新の RabbitMQ バージョンにアップグレードする方法を教えてください。
ブローカーは、サポートされている次のメジャーまたはマイナーバージョンにいつでも手動でアップグレードできます。マイナーバージョン自動アップグレードを有効にすると、Amazon MQ は次のメンテナンス期間中にブローカーをサポートされている最新のパッチバージョンにアップグレードします。Amazon MQ は、現在のマイナーバージョンのサポート終了時に、すべてのブローカーを次にサポートされているマイナーバージョンにアップグレードします。RabbitMQ バージョン 3.13 以降、Amazon MQ がお客様に代わってパッチバージョンを管理し、すべてのブローカーがマイナーバージョンの最新のパッチバージョンを使用しているようにします。
Q: Amazon MQ の RabbitMQ のバージョンがサポート終了になった場合はどうなりますか?
Amazon MQ は、RabbitMQ バージョンサポートカレンダーに記載されているサポート終了日までの RabbitMQ バージョンをサポートします。Amazon MQ は、バージョンのサポートが終了する少なくとも 90 日前に通知します。Amazon MQ は、サポート終了後に、そのバージョンのすべてのブローカーを次にサポートされているバージョンにアップグレードします。現在サポートされている RabbitMQ バージョンはすべて、相互に下位互換性があります。
Q: 特定のバージョンで RabbitMQ ブローカーを作成できないのはなぜですか?
Amazon MQ は、ブローカーのパフォーマンス、信頼性、またはセキュリティに影響する問題がバージョンにある場合など、事前の通知なしに特定のバージョンのサポートを終了することがあります。万が一、このようなケースが発生した場合、Amazon MQ は影響を受けるバージョンでの新しいブローカーの作成を防ぎ、既存のブローカーを次にサポートされているバージョンにアップグレードします。特定の状況では、対処すべき問題によって別のスケジュールを決定する可能性があります。
Q: Amazon MQ の RabbitMQ では、どのようなプラグインを利用できますか?
Amazon MQ for RabbitMQ には、すべてのブローカーに管理、シャベル、フェデレーション、そして一貫性のあるハッシュ交換のためのプラグインが含まれています。
統合
Q: Amazon MQ は AWS のほかのサービスとどのように連携しますか?
Amazon EC2、Amazon ECS、AWS Lambda などの AWS コンピューティングサービスで実行されるアプリケーションであれば、Amazon MQ を使用できます。Amazon MQ は以下の AWS サービスとも統合されています:
- Amazon CloudWatch - メトリクスを監視し、アラームを生成
- Amazon CloudWatch Logs - Amazon MQ のブローカーから Amazon CloudWatch Logs にログをパブリッシュ
- AWS CloudTrail - Amazon MQ API コールのログ作成、継続的な監視し保持します
- AWS CloudFormation - メッセージブローカーの生成、アップデート、削除プロセスを自動化
- AWS イベントブリッジパイプ — Amazon MQ メッセージブローカーをソースとして使用
- AWS Lambda — Amazon MQ メッセージブローカーをソースとして使用する
- AWS Identity and Access Management (IAM) - サービス API の認証と認可
- AWS Key Management Service (KMS) - データの暗号化に使用するキーの作成および制御
可用性
Q: Amazon MQ で高可用性を確保するにはどうすればよいですか?
マルチ AZ ブローカーは、AWS マネジメントコンソールで数回クリックするか、AWS SDK を使用して作成できます。まず、 Amazon MQ コンソールで、Amazon MQ クラスターを作成する AWS リージョンとブローカーエンジンタイプを選択します。RabbitMQ では 3 ノードクラスターデプロイメント、ActiveMQ ではアクティブ/スタンバイデプロイメント、またはブローカーのメッシュネットワークから選択できます。
Q. Amazon MQ クラスターを作成すると、基盤となるリソース (Amazon EC2 インスタンスなど) は EC2 コンソールに表示されますか?
いいえ。EC2 インスタンスは Amazon MQ サービスによって管理されているため、EC2 アカウントには表示されません。一部のネットワークリソース (elastic network interfaces (ENI)、VPC エンドポイント) は Amazon EC2 アカウントに表示され、ブローカーに接続できます。
Q. Amazon MQ ブローカー内でプロビジョニングするには何が必要ですか?
作成したすべてのブローカーにブローカーインスタンスとブローカーストレージをプロビジョニングする必要があります。Amazon MQ サービスで提供されるキーの代わりに、既存の VPC、サブネット、セキュリティグループ、またはカスタマー管理キーを選択できます。
Configurations
Q. デフォルトの壊れた設定を変更したり、新しい設定を Amazon MQ にアップロードしたりできますか?
はい、Amazon MQではカスタム設定を作成して、新しいクラスターにも既存のクラスターにも適用することができます。カスタム構成の詳細については、構成ドキュメントを参照してください。
暗号化
Q: Amazon MQ のデータを暗号化するために、独自のカスタムキーを使用するにはどうすればよいですか?
Amazon MQ は AWS Key Management Service (AWS KMS) をサポートしており、Amazon MQ の保存データを暗号化するためのキーを作成および管理します。ブローカーの作成時に、データの暗号化のために使用する KMS キーを、Amazon MQ のサービスアカウント内の KMS キー、Amazon MQ で作成および管理されるアカウント内の KMS キー、またはユーザーが作成して管理するアカウント内の KMS キーの 3 つのオプションから選択できます。保管時の暗号化に加えて、Amazon MQ とクライアントアプリケーション間で転送されるすべてのデータは TLS/SSL を使用して安全に送信されます。
モニタリング
Q: Amazon MQ ブローカーをモニタリングする方法を教えてください。
Amazon MQ と Amazon CloudWatch は統合されているため、キューだけでなくブローカーインスタンスのメトリクスを表示および分析できます。Amazon MQ コンソール、CloudWatch コンソール、コマンドラインから、または API を使用してプログラムでメトリクスを表示および分析できます。メトリクスは毎分自動的に収集され、CloudWatch にプッシュされます。
料金
Q: Amazon MQ の使用に対してどのように課金されますか?
Amazon MQ では、実際に使用した分のみ料金が発生します。ブローカーインスタンスの使用量、ストレージの使用量、および標準データ転送料金が請求されます。Amazon MQ は、1 年間の無料利用枠を使用して簡単に開始できます。詳細については、Amazon MQ の料金を参照してください。
Q: RabbitMQ 用 Amazon MQ でのノード間データ転送の料金は発生しますか?
いいえ。ノード間のデータ転送はすべてサービスに含まれており、追加料金はありません。
Q.Amazon MQ ではリザーブドインスタンスの料金を設定していますか?
いいえ、Amazon MQ にはリザーブドインスタンスの料金はありません。
Q. ブローカーブートボリュームのプロビジョニングと支払いは必要ですか?
いいえ、プロビジョンする各ブローカーには、Amazon MQ サービスによって管理されるブートボリュームストレージが含まれています。
コンプライアンス
Q. Amazon MQ の対象となるコンプライアンスプログラムにはどのようなものがありますか?
Amazon MQ は以下のプログラムに準拠しているか、対象となります:
- HIPAA 対応
- PCI DSS に準拠しています
- SOC 1、2、3に準拠
- ISO 9001、27001、27017、および27018認定
AWS のサービスとコンプライアンスプログラムの全リストについては、「コンプライアンスプログラムによる AWS 対象範囲内サービス」を参照してください。
サービスレベルアグリーメント
Q: Amazon MQ SLA ではどのようなことが保証されますか?
Amazon MQ SLA では、Amazon MQ の月間稼働率が 99.9% 以上であることが保証されています。
Q: SLA サービスクレジットの資格を有しているかどうかを知るにはどうすればよいですか?
Amazon MQ のマルチ AZ ブローカーの月間稼働率が、毎月の請求サイクルで 99.9% 未満の場合、Amazon MQ の SLA クレジットの対象となります。
SLA の利用規約に関するすべての詳細、およびクレジット請求方法の詳細については、Amazon MQ SLA の詳細ページをご参照ください。