일반
Q: Amazon MQ란 무엇인가요?
Amazon MQ는 클라우드에서 메시지 브로커를 쉽게 설정하고 운영할 수 있도록 지원하는 Apache ActiveMQ 및 RabbitMQ용 관리형 메시지 브로커 서비스입니다. ActiveMQ 콘솔 및 RabbitMQ 콘솔과 JMS, NMS, 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 Management Console, CLI 또는 API 직접 호출을 사용하여 몇 분 만에 프로덕션용 메시지 브로커를 시작할 수 있습니다. 대부분의 경우 기존 애플리케이션에 연결하도록 Amazon MQ 브로커의 엔드포인트를 업데이트하는 간단한 방법으로 메시지 전송을 시작할 수 있습니다.
간략한 자습서인 Create a Connected Message Broker(연결된 메시지 브로커 생성)을 통해 지금 바로 시작하세요.
Q: Amazon MQ를 제공하는 AWS 리전은 어디인가요?
Amazon MQ를 제공하는 리전은 여기에서 확인할 수 있습니다.
Amazon MQ로 마이그레이션
Q: ActiveMQ 또는 RabbitMQ가 아닌 다른 메시지 브로커를 사용하고 있는 경우 마이그레이션하려면 어떻게 해야 하나요?
Amazon MQ는 Java 메시지 서비스(JMS) 및 .NET 메시지 서비스(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 Classic 버전 5.17을 지원합니다. ActiveMQ 5.15 또는 5.16과 같은 이전 버전을 선택해도 되지만 권장하지는 않습니다.
Q: Amazon MQ에서 새 버전의 ActiveMQ는 어떻게 지원되나요?
Amazon MQ는 새로운 ActiveMQ 버전에 대한 지원을 지속적으로 추가할 예정입니다. 지원되는 새 버전의 수는 오픈 소스 유지 관리자가 릴리스하는 빈도와 내용에 따라 달라집니다.
Q: 브로커에 지원되는 ActiveMQ 버전을 지정하려면 어떻게 해야 하나요?
AWS Management Console 또는 CreateBroker API를 통해 새 브로커를 생성할 때 ActiveMQ 버전(예: ActiveMQ 5.17.6)을 지정할 수 있습니다. Amazon MQ는 기본적으로 AWS Management Console에서 사용할 수 있는 최신 버전을 제공합니다.
Q: 브로커를 지원되는 최신 ActiveMQ 버전으로 업그레이드하려면 어떻게 해야 하나요?
언제든지 지원되는 다음 메이저, 마이너 또는 패치 버전으로 수동으로 브로커를 업그레이드할 수 있습니다. 자동 마이너 버전 업그레이드를 켜면 Amazon MQ를 통해 다음 유지 관리 기간 동안 브로커가 지원되는 최신 패치 버전으로 업그레이드됩니다. 현재 마이너 버전의 지원이 종료되면 지원되는 다음 마이너 버전으로 모든 브로커가 업그레이드됩니다.
Q: Amazon MQ의 ActiveMQ 버전이 지원 종료되면 어떻게 되나요?
Amazon MQ는 ActiveMQ 버전 지원 일정에 명시된 지원 종료일까지 ActiveMQ 버전을 지원합니다. Amazon MQ는 버전이 지원 종료되기 최소 90일 전에 통지합니다. 현재 마이너 버전의 지원이 종료되면 지원되는 다음 버전으로 모든 브로커가 업그레이드됩니다.
Q: 특정 버전에서 ActiveMQ 브로커를 생성할 수 없는 이유는 무엇인가요?
특정 버전이 Amazon의 품질, 성능 또는 보안 기준을 충족하지 않는 경우와 같은 일부 경우에는 사전 통지 없이 특정 버전에 대한 지원을 종료할 수 있습니다. 드물지만 이러한 경우가 발생하면 이러한 버전으로 새 브로커를 생성하는 것이 차단되고 기존 브로커는 기준에 맞는 다음 지원 버전으로 업그레이드됩니다. 해결해야 할 문제에 따라 상황별로 업그레이드 시기가 달라질 수 있습니다.
Q: Amazon MQ for ActiveMQ에서 어떤 유형의 스토리지를 사용할 수 있나요?
Amazon MQ for ActiveMQ는 Amazon Elastic File System(Amazon EFS)을 사용하여 내구성을 최적화하고 Amazon Elastic Block Store(EBS)를 사용하여 처리량을 최적화하는 두 가지 유형의 브로커 스토리지를 지원합니다. 여러 가용 영역에서 높은 내구성과 복제를 활용하려면 Amazon EFS가 지원하는 내구성 최적화 브로커를 사용합니다. 대용량 애플리케이션의 높은 처리량을 활용하려면 EBS가 지원하는 처리량 최적화 브로커를 사용합니다.
Q: Amazon MQ에서 브로커 네트워크란 무엇인가요?
Amazon MQ for ActiveMQ는 Apache ActiveMQ의 일부인 ‘브로커 네트워크’ 기능을 사용합니다. 브로커 네트워크는 메시로 연결된 다수의 브로커로 구성됩니다. 네트워크의 브로커는 각 브로커가 호스트하는 클라이언트 및 대상에 대한 정보를 공유합니다. 브로커는 이 정보를 사용하여 네트워크를 통해 메시지를 라우팅합니다. Amazon MQ에서 네트워크의 브로커는 활성-대기 브로커(네트워크의 각 활성 브로커에는 대기 노드가 있고 이 대기 노드는 공유 스토리지를 통해 활성 노드에 장애가 발생할 경우 활성 노드를 대신함)이거나 단일 인스턴스 브로커(노드에 장애가 발생할 경우 다시 시작하기 전까지 노드를 사용할 수 없음)일 수 있습니다. 네트워크의 각 브로커는 내구성이 최적화된 스토리지를 사용하여 활성/대기 브로커에 대한 리전 내의 여러 가용 영역(AZ)에 복제되는 고유한 메시지 저장소를 유지 관리합니다. 네트워크의 노드는 서로에게 메시지를 전달하므로 지정된 시점에서 메시지는 단일 브로커에 의해 저장됩니다. 브로커 장애 시 빠른 재연결을 통해 고가용성을 유지해야 하거나 수평적 규모 조정 기능이 필요한 경우에는 브로커 네트워크를 사용해야 합니다.
RabbitMQ
Q: RabbitMQ란 무엇인가요?
RabbitMQ는 다양한 메시징 사용 사례를 지원하는 오픈 소스 다중 프로토콜 메시지 브로커입니다.
Q: Amazon MQ에서는 어떤 버전의 RabbitMQ를 지원하나요?
Amazon MQ는 기본적으로 RabbitMQ 버전 3.13을 지원합니다. RabbitMQ 3.8, 3.9, 3.10, 3.11, 3.12와 같은 이전 버전을 선택해도 되지만 Amazon MQ는 이를 권장하지는 않습니다.
Q: Amazon MQ에서 새 버전의 RabbitMQ는 어떻게 지원되나요?
Amazon MQ는 새로운 RabbitMQ 버전에 대한 지원을 지속적으로 추가할 예정입니다. 지원되는 새 버전의 수는 오픈 소스 유지 관리자가 릴리스하는 빈도와 내용에 따라 달라집니다.
Q: 브로커에 지원되는 RabbitMQ 버전을 지정하려면 어떻게 해야 하나요?
AWS Management Console 또는 CreateBroker API를 통해 새 브로커를 생성할 때 RabbitMQ 버전(예: RabbitMQ 3.13)을 지정할 수 있습니다. Amazon MQ는 기본적으로 AWS Management Console에서 사용할 수 있는 최신 버전을 제공합니다.
Q: 브로커를 지원되는 최신 RabbitMQ 버전으로 업그레이드하려면 어떻게 해야 하나요?
언제든지 지원되는 다음 메이저 또는, 마이너 버전으로 수동으로 브로커를 업그레이드할 수 있습니다. 자동 마이너 버전 업그레이드를 켜면 Amazon MQ를 통해 다음 유지 관리 기간 동안 브로커가 지원되는 최신 패치 버전으로 업그레이드됩니다. 현재 마이너 버전의 지원이 종료되면 지원되는 다음 마이너 버전으로 모든 브로커가 업그레이드됩니다. RabbitMQ 버전 3.13부터는 Amazon MQ가 사용자를 대신하여 패치 버전을 관리하고 모든 브로커가 마이너 버전의 최신 패치 버전을 사용하고 있는지 확인합니다.
Q: Amazon MQ의 RabbitMQ 버전이 지원 종료되면 어떻게 되나요?
Amazon MQ는 RabbitMQ 버전 지원 일정에 명시된 지원 종료일까지 RabbitMQ 버전을 지원합니다. Amazon MQ는 버전이 지원 종료되기 최소 90일 전에 통지합니다. 지원이 종료되면 해당 버전의 모든 브로커가 지원되는 다음 버전으로 업그레이드됩니다. 현재 지원되는 모든 RabbitMQ 버전은 이전 버전과 서로 호환됩니다.
Q: 특정 버전에서 RabbitMQ 브로커를 생성할 수 없는 이유는 무엇인가요?
버전에 브로커의 성능, 신뢰성 또는 보안에 영향을 미치는 문제가 있는 경우와 같은 일부 경우에는 사전 통지 없이 특정 버전에 대한 지원을 종료할 수 있습니다. 드물지만 이러한 경우가 발생하면 영향을 받은 버전에서 새 브로커를 생성하는 것이 차단되고 기존 브로커는 지원되는 다음 버전으로 업그레이드됩니다. 해결해야 할 문제에 따라 상황별로 업그레이드 시기가 달라질 수 있습니다.
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 EventBridge 파이프 - Amazon MQ 메시지 브로커를 소스로 사용
- AWS Lambda - Amazon MQ 메시지 브로커를 소스로 사용
- AWS Identity and Access Management(IAM) - 서비스 API의 인증 및 권한 부여
- AWS Key Management Service(KMS) - 데이터 암호화에 사용하는 키 생성 및 제어
가용성
Q: Amazon MQ에서 고가용성을 보장하려면 어떻게 해야 하나요?
AWS Management Console에서 클릭 몇 번으로 또는 AWS SDK를 사용하여 다중 AZ 브로커를 생성할 수 있습니다. 먼저 Amazon MQ 콘솔에서 AWS 리전 및 브로커 엔진 유형을 선택하여 Amazon MQ 클러스터를 생성합니다. RabbitMQ에 대한 3노드 클러스터 배포, 활성-대기 배포 또는 ActiveMQ에 대한 브로커 메시 네트워크 중에서 선택할 수 있습니다.
Q: Amazon MQ 클러스터를 생성할 때 Amazon EC2 인스턴스 등의 기본 리소스가 EC2 콘솔에 표시되나요?
아니요. EC2 인스턴스는 Amazon MQ 서비스에서 관리하므로 EC2 계정에서 볼 수 없습니다. 일부 네트워킹 리소스[탄력적 네트워크 인터페이스(ENI), VPC 엔드포인트]는 브로커 연결을 위해 Amazon EC2 계정에서 볼 수 있습니다.
Q: Amazon MQ 브로커 내에서 프로비저닝해야 하는 것은 무엇인가요?
생성하는 모든 브로커와 함께 브로커 인스턴스와 브로커 스토리지를 프로비저닝해야 합니다. Amazon MQ 서비스에서 제공하는 키 대신 기존 VPC, 서브넷, 보안 그룹 또는 고객 관리형 키를 선택할 수 있습니다.
구성
Q: 기본 브로커 구성을 변경하거나 새 구성을 Amazon MQ에 업로드할 수 있나요?
예. Amazon MQ를 사용하면 사용자 지정 구성을 생성하여 새 클러스터와 기존 클러스터에 적용할 수 있습니다. 사용자 지정 구성에 대한 자세한 내용은 구성 설명서를 참조하세요.
암호화
Q: 사용자 지정 키로 Amazon MQ의 데이터를 암호화하려면 어떻게 해야 하나요?
Amazoz MQ는 AWS Key Management Service(AWS KMS)를 지원하므로 Amazon MQ에서 고객의 저장 데이터 암호화를 위한 키를 생성하고 관리할 수 있습니다. 브로커를 생성할 때, Amazon MQ 서비스 계정의 KMS 키, Amazon MQ가 생성 및 관리하는 계정의 KMS 키 또는 사용자가 생성하고 관리하는 계정의 KMS 키라는 세 가지 옵션 중에서 데이터를 암호화하는 데 사용할 KMS 키를 선택할 수 있습니다. 저장 중 암호화 외에도 Amazon MQ와 클라이언트 애플리케이션 간에 전송되는 모든 데이터는 TLS/SSL을 사용하여 안전하게 전송됩니다.
모니터링
Q: Amazon MQ 브로커를 모니터링하려면 어떻게 해야 하나요?
Amazon MQ는 Amazon CloudWatch와 통합되므로 브로커 인스턴스뿐 아니라 대기열에 대한 지표를 보고 분석할 수 있습니다. Amazon MQ 콘솔, CloudWatch 콘솔, 명령줄에서 또는 프로그래밍 방식으로 API를 통해 지표를 보고 분석할 수 있습니다. 지표는 1분마다 자동으로 수집되어 CloudWatch로 푸시됩니다.
요금
Q: Amazon MQ 사용 요금은 어떻게 부과되나요?
Amazon MQ는 사용한 만큼만 요금이 부과됩니다. 브로커 인스턴스 사용량, 스토리지 사용량 및 표준 데이터 전송 요금이 부과됩니다. 1년 동안 프리 티어를 사용하여 Amazon MQ를 쉽게 시작할 수 있습니다. 자세한 내용은 Amazon MQ 요금을 참조하세요.
Q: Amazon MQ for RabbitMQ의 노드 간 데이터 전송에 요금이 부과되나요?
아니요. 모든 노드 간 데이터 전송은 추가 비용 없이 서비스에 포함됩니다.
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 세부 정보 페이지를 참조하세요.