AWS 프리 티어는 1년동안 매달 750시간의 Amazon ElastiCache용 마이크로 캐시 노드를 제공합니다.
Amazon ElastiCache는 클라우드의 인 메모리 캐시를 손쉽게 배포, 작동 및 확장할 수 있는 웹 서비스입니다. 이 서비스는 더 느린 디스크 기반 데이터베이스에 전적으로 의존하기보다는, 신속하며 관리되는 인 메모리 캐싱 시스템에서 정보를 검색할 수 있는 기능을 지원해 웹 애플리케이션의 성능을 향상시킵니다. Amazon ElastiCache는 광범위하게 사용되는 메모리 객체 캐싱 시스템인 Memcached의 프로토콜 표준을 따르므로 코드, 애플리케이션 및 현재 기존 Memcached 환경에서 일반적으로 사용하는 도구가 이 서비스에서 원활하게 작동합니다.
Amazon ElastiCache는 인 메모리 캐시 환경의 관리, 모니터링 및 운영을 간소화하고 작업 부하를 줄여 애플리케이션의 차별화 부분에 집중할 수 있습니다. 아래 동영상을 재생하여 간략한 서비스 개요와 시작하는 방법에 대해 살펴보십시오.
가입이 간단하고 사용 요금은 종량 과금제입니다.
Amazon ElastiCache를 사용하면 고객의 애플리케이션 아키텍처에 인 메모리 캐시를 단 몇 분 만에 추가할 수 있습니다. 각각 Memcached 소프트웨어를 실행하는 캐시 노드의 컬렉션으로 구성된 캐시 클러스터를 AWS Management Console에서 몇 번의 클릭만으로 실행할 수 있습니다. 그런 다음 변화하는 워크로드의 수요에 맞춰 캐시 노드를 추가 또는 삭제하여 캐시 클러스터와 관련된 메모리의 양을 몇 분 만에 확장할 수 있습니다. 또한 Amazon ElastiCache는 실패한 캐시 노드를 자동으로 감지 및 교체하여 오버로드된 데이터베이스로 인해 웹 사이트와 애플리케이션 로드 시간이 저하되는 위험을 완화하는 탄력적인 시스템을 제공합니다. Amazon ElastiCache는 Amazon CloudWatch와 통합하여 캐시 노드와 관련된 주요 성능 지표의 가시성을 향상시킵니다.
이 페이지에는 다음과 같은 범주의 정보가 담겨 있습니다. 아래를 클릭하면 해당 항목으로 이동합니다.
간편한 배포 – Amazon ElastiCache를 사용하면 Memcached 호환 캐시 환경을 매우 쉽게 배포할 수 있습니다. AWS Management Console 또는 간단한 API 호출을 사용하여 인프라 프로비저닝 또는 설치와 캐시 소프트웨어 유지관리에 대한 걱정 없이 몇 분이면 프로덕션용 캐시 클러스터의 성능을 활용할 수 있습니다.
철저한 관리 – 패치 관리, 고장 감지 및 복구 등 시간 소모적인 관리 작업은 Amazon ElastiCache가 자동으로 처리해 주기 때문에 사용자는 애플리케이션 개발 같은 보다 가치 있는 일에 집중할 수 있습니다.
호환성 – Amazon ElastiCache를 사용하면 Memcached 환경에 네이티브 액세스할 수 있습니다. 덕분에 기존에 사용하던 도구 및 애플리케이션과 원활하게 호환됩니다. 또한 Amazon ElastiCache에서는 캐시 엔진 버전 관리를 통해 캐시 클러스터를 어느 Memcached 버전에 탑재할지도 추가로 제어할 수 있습니다.
탄력성 – 간단하게 API를 호출하거나 AWS Management Console에서 클릭만 몇 번 하면 애플리케이션 로드에 부합하도록 캐시 클러스터에 캐시 노드를 추가하거나 캐시 클러스터에서 캐시 노드를 삭제할 수 있습니다. 자동 검색을 사용하면 노드가 Amazon ElastiCache 클러스터에 추가 또는 삭제될 경우 ElastiCache 클라이언트가 캐시 노드를 자동 검색할 수 있습니다.
안정성 – Amazon ElastiCache는 자동 고장 감지 및 복구를 포함하여 중요 프로덕션 배포의 안정성을 높여주는 다양한 기능을 갖고 있습니다. Amazon ElastiCache는 다른 Amazon Web Services에서 사용하는 안정성이 높은 동일한 인프라에서 실행됩니다.
다른 Amazon Web Services와 연동 – Amazon ElastiCache는 Amazon Relational Database Service(Amazon RDS), Amazon SimpleDB, Amazon Elastic Compute Cloud(Amazon EC2), Amazon CloudWatch 및 Amazon Simple Notification Service(Amazon SNS) 등 다른 Amazon Web Services와 연동됩니다. 예를 들어, Amazon EC2에서 실행 중인 애플리케이션은 안전하게 연결되고 동일한 지역의 Amazon ElastiCache Cluster에 액세스하는 데 걸리는 지연 시간이 짧습니다. 또한 Amazon CloudWatch를 사용하면 추가 비용 없이 캐시 적중 및 캐시 누락과 같은 여러 메트릭에 대한 세부 모니터링 통계를 얻을 수 있습니다. 또한 Amazon ElastiCache 노드의 고장 복구와 같은 주요 이벤트에 대한 이메일 알림을 받고 Amazon SNS를 사용하도록 애플리케이션을 설정할 수 있습니다.
보안 – Amazon ElastiCache는 캐시 클러스터를 보호하기 위한 여러 가지 방법을 제공합니다.
Amazon ElastiCache는 캐시 클러스터에 대한 네트워크 액세스를 제어하는 방화벽 설정을 구성할 수 있는 웹 서비스 인터페이스를 제공합니다.
Amazon ElastiCache는 Amazon Virtual Private Cloud(Amazon VPC)에서 캐시 클러스터를 실행할 수 있게 해줍니다. Amazon VPC를 사용하면 캐시 노드에 사용할 IP 범위를 지정하여 캐시 클러스터를 분리하고 Amazon VPC 내의 기존 애플리케이션에 연결할 수 있습니다. VPC에서의 Amazon ElastiCache에 대한 자세한 내용은 Amazon ElastiCache 사용 설명서를 참조하십시오.
비용 효율성 – Amazon ElastiCache는 다중 노드 캐시 클러스터를 설정하고 관리하는 데 드는 관리 비용을 절감해 줍니다. 애플리케이션 사용 패턴이 변화함에 따라 최적의 성능을 위해 캐시 클러스터에 있는 캐시 노드 수를 늘리거나 줄일 수 있어 실제로 사용한 리소스에 대해서만 종량 과금제로 청구됩니다. 온 디맨드 가격 덕분에 장기 약정 없이 시간당 메모리 용량/컴퓨팅 파워에 대해서만 종량 과금제로 청구됩니다. 따라서 Amazon ElastiCache를 비용 효율적으로 사용할 수 있으며 하드웨어를 계획, 구매, 유지관리하는 데 따르는 비용과 복잡성이 사라집니다.
미리 구성된 매개 변수 – Amazon ElastiCache 노드는 선택한 노드 유형에 적합한 합리적인 매개 변수 및 설정 세트로 미리 구성되어 있습니다. Memcached 클러스터를 간단히 시작하여 추가 구성 없이 몇 분 내에 애플리케이션을 연결할 수 있습니다. 캐시 매개 변수 그룹을 통해 추가로 제어할 수 있습니다.
자동 고장 감지 및 복구 – Amazon ElastiCache는 캐시 클러스터의 상태를 모니터링하고 네트워크 파티셔닝, 호스트 하드웨어 또는 소프트웨어 고장 발생 시 자동으로 캐시 노드를 대체합니다. 대체된 캐시 노드는 고장이 발생한 캐시 노드와 동일한 DNS 이름을 가지도록 설계되어 있어 끝점 목록의 클라이언트 쪽 새로 고침의 필요성을 없애 줍니다.
세부 모니터링 및 메트릭 – Amazon ElastiCache는 추가 비용 없이 Memcached 배포에 대한 세부 Amazon CloudWatch 메트릭을 제공합니다. AWS Management Console을 사용하여 캐시 노드에 대한 핵심 운영 메트릭(메모리 용량/컴퓨팅 파워 사용률, 캐시 적중, 캐시 누락 및 캐시 연결 수 포함)을 볼 수 있습니다.
자동 소프트웨어 패치 – Amazon ElastiCache는 최신 패치로 배포를 강화하는 캐시 소프트웨어를 업데이트합니다. 캐시 클러스터가 캐시 엔진 버전 관리를 통해 패치되는 때 및 경우를 제어할 수 있습니다.
푸시 버튼 확장 – AWS Management Console을 몇 번 클릭하거나 간단한 API 호출을 사용하여 캐시 노드를 추가하거나 삭제함으로써 배포를 강화하는 메모리 리소스를 확장하거나 축소할 수 있습니다. 자동 검색을 사용하면 배포 중인 캐시 노드가 변경될 경우 ElastiCache 클라이언트가 캐시 노드를 자동 검색할 수 있습니다.
무료로 Amazon ElastiCache 시작 Amazon ElastiCache를 처음 사용하는 경우 무료로 시작할 수 있습니다.
사용한 부분에 대해서만 지불. 최소 요금이 없습니다. AWS 월 사용량 계산기를 사용해 월별 청구액을 추산할 수 있습니다.
온 디맨드 캐시 노드
온 디맨드 캐시 노드를 사용하면 장기 약정 없이 캐시 노드에서 실행한 캐시 용량에 대해서만 시간당 종량 과금제로 청구됩니다. 따라서 하드웨어를 계획, 구매, 유지 관리하는 데 수반되는 비용과 복잡성이 사라지고 일반적으로 비싼 고정 비용이 훨씬 저렴한 가변 비용으로 전환됩니다.
사용한 캐시 노드 시간을 기준으로 요금이 책정됩니다. 이러한 사용 시간은 캐시 노드가 시작되어 종료될 때까지의 시간입니다. 1시간 미만의 캐시 노드 사용 시간은 1시간으로 청구됩니다.
예약 캐시 노드
예약 캐시 노드를 이용하면 1년 또는 3년 약정으로 예약하려는 각 캐시 노드에 대해 저렴한 사전 확약금을 일시불로 결제할 수 있습니다. 이에 대한 보답으로, 예약한 캐시 노드에 대해 지속적으로 시간당 사용 요금이 상당히 할인되는 혜택을 얻을 수 있습니다. Amazon ElastiCache는 세 가지 예약 캐시 노드 유형(Light, Medium, Heavy 사용률 예약 캐시 노드)을 제공하므로 실질 시간당 요금으로 사전 확약금으로 지불한 금액을 상쇄할 수 있습니다. 예약 캐시 노드에 대한 자세한 내용은 Reserved Cache Nodes 페이지를 참조하십시오.
Light 사용률 예약 캐시 노드
Medium 사용률 예약 캐시 노드
Heavy 사용률 예약 캐시 노드
데이터 전송
Amazon ElastiCache는 캐시 보안 그룹의 일부로 정의한 Amazon EC2 인스턴스에서/로의 액세스/데이터 전송을 허용하여 강력한 네트워크 수준 보안을 제공합니다.
동일한 가용 영역 내의 Amazon EC2와 Amazon ElastiCache 간의 데이터 전송에 대한 비용은 없습니다.
동일한 지역의 서로 다른 가용 영역에서 Amazon EC2 인스턴스와 Amazon ElastiCache 노드 간에 데이터를 전송할 경우, 수신/송신 GB당 0.01 USD의 표준 Amazon EC2 지역 데이터 전송 요금이 적용되고, Amazon EC2 인스턴스에서 수신 또는 송신되는 데이터 전송 요금만 청구됩니다. Amazon ElastiCache 노드 자체에서 수신 또는 송신 트래픽에 대한 Amazon ElastiCache 데이터 전송 비용은 없습니다.
AWS의 프리 티어의 일환으로, 신규 AWS 고객은 모든 AWS 서비스를 합산해 1년 동안 매달 15GB의 무료 데이터 전송 혜택을 받게 됩니다.
표준 또는 RRS 객체의 삭제 요청에 대해서는 요금이 청구되지 않습니다. Glacier에 보관되는 객체의 경우 90일 전에 삭제된 객체에 대해 GB당 0.03 USD의 비례 배분된 요금이 부과됩니다. 자세히 알아보기
Glacier는 복원이 거의 발생하지 않고 데이터가 장기간 저장될 것이라는 예상을 바탕으로 설계되었습니다. 매달 무료로 월평균 Glacier 스토리지의 5%(일일 단위로 비례 배분)까지 복원할 수 있습니다. 한 달에 이 데이터 양보다 많이 복원하려면 GB당 0.01 USD의 복원 수수료를 지불해야 합니다. 자세히 알아보기
표준 또는 RRS 객체의 삭제 요청에 대해서는 요금이 청구되지 않습니다. Glacier에 보관되는 객체의 경우 90일 전에 삭제된 객체에 대해 GB당 0.033 USD의 비례 배분된 요금이 부과됩니다. 자세히 알아보기
Glacier는 복원이 거의 발생하지 않고 데이터가 장기간 저장될 것이라는 예상을 바탕으로 설계되었습니다. 매달 무료로 월평균 Glacier 스토리지의 5%(일일 단위로 비례 배분)까지 복원할 수 있습니다. 한 달에 이 데이터 양보다 많이 복원하려면 GB당 0.011 USD의 복원 수수료를 지불해야 합니다. 자세히 알아보기
표준 또는 RRS 객체의 삭제 요청에 대해서는 요금이 청구되지 않습니다. Glacier에 보관되는 객체의 경우 90일 전에 삭제된 객체에 대해 GB당 0.036 USD의 비례 배분된 요금이 부과됩니다. 자세히 알아보기
Glacier는 복원이 거의 발생하지 않고 데이터가 장기간 저장될 것이라는 예상을 바탕으로 설계되었습니다. 매달 무료로 월평균 Glacier 스토리지의 5%(일일 단위로 비례 배분)까지 복원할 수 있습니다. 한 달에 이 데이터 양보다 많이 복원하려면 GB당 0.012 USD의 복원 수수료를 지불해야 합니다. 자세히 알아보기
Amazon ElastiCache를 사용하면 읽기 중심의 여러 애플리케이션 워크로드(예: 소셜 네트워킹, 게임, 미디어 공유 및 Q&A 포털) 또는 컴퓨팅 중심의 워크로드(예: 추천 엔진)에서 지연 시간을 크게 단축하고 처리량을 상당히 높일 수 있습니다. 캐싱은 중요한 데이터를 메모리에 저장함으로써 액세스 지연 시간을 줄여 애플리케이션 성능을 향상시킵니다. 캐싱된 정보에는 I/O 중심의 데이터베이스 쿼리 결과 또는 컴퓨팅 중심의 계산 결과가 포함될 수 있습니다.
Amazon ElastiCache 활용하기
Amazon ElastiCache를 통해 AWS Management Console 또는 간단한 웹 서비스 API 세트를 사용하여 캐시 클러스터를 생성, 삭제 및 수정할 수 있습니다. 캐시 클러스터는 캐시 노드의 논리적 모음으로, 각 캐시 노드는 Memcached 소프트웨어를 실행합니다. 캐시 보안 그룹을 사용하여 캐시 클러스터에 대한 액세스 및 보안을 제어하고 캐시 매개 변수 그룹을 사용하여 배포를 조정할 수 있습니다.
기존 애플리케이션을 쉽게 이식
애플리케이션에서 이미 Memcached를 사용하고 있는 경우 다음 단계를 통해 애플리케이션을 쉽게 이식하여 Amazon ElastiCache를 활용할 수 있습니다.
첫 번째, 기존 구성과 일치하는 캐시 노드 유형 및 여러 캐시 노드를 사용하여 캐시 클러스터를 생성합니다.
두 번째, Amazon EC2 인스턴스(또는 애플리케이션 서버)에서 캐시 클러스터에 액세스할 수 있도록 캐시 보안 그룹을 구성합니다.
세 번째, 첫 번째 단계에서 생성한 캐시 노드의 끝점(또는 DNS 이름)에 대한 세부 정보를 얻습니다. 세부 정보를 얻으려면, AWS Management Console의 Amazon ElastiCache 탭에서 캐시 클러스터에 해당하는 “Nodes” 화면으로 이동하여 “Copy Node Endpoints” 버튼을 클릭하면 됩니다. 또는 Amazon ElastiCache DescribeCacheClusters API를 사용할 수도 있습니다.
네 번째, 클라이언트 라이브러리의 Memcached 구성 파일을 업데이트하여 캐시 클러스터에 액세스하도록 Amazon EC2 인스턴스를 구성하여 이전 단계에서 검색한 끝점을 포함합니다.
다른 마이그레이션 프로세스와 마찬가지로, 현재 솔루션으로부터의 이관을 완료하기 전에 새 Amazon ElastiCache 배포를 철저히 테스트하는 것이 좋습니다.
종량 과금제
실제로 사용한 Amazon ElastiCache 리소스의 요금이 매달 말에 청구됩니다. 배포한 캐시 노드를 실행한 시간당 요금이 청구됩니다(예: 스몰 캐시 노드의 경우 시간당 0.095 USD). 캐시 노드 또는 연결된 캐시 클러스터를 삭제하면 캐시 노드가 종료됩니다. 각 캐시 노드는 종료될 때까지 실행됩니다. 1시간 미만의 사용 시간은 1시간으로 청구됩니다.
시작하기
AWS Evangelist Simone Brunozzi가 생성한 빠른 데모를 보거나 시작 안내서를 검토하여 Amazon ElastiCache를 쉽게 시작할 수 있습니다. 고유한 캐시 클러스터를 생성하고 애플리케이션을 구축할 준비가 되면 AWS Management Console 또는 Amazon ElastiCache API를 사용하여 몇 분 내에 캐시 클러스터를 시작할 수 있습니다.
기본적으로 고객 계정당 최대 총 20개의 Amazon ElastiCache 노드를 가질 수 있습니다. 더 많은 캐시 노드를 실행하려는 경우 ElastiCache 한도 증가 요청 양식을 작성해 주시면 당사에서 즉시 요청을 처리해 드리겠습니다.
여러 가용 영역에서 중복 캐시 클러스터 설정
Amazon ElastiCache는 캐시 노드의 상태를 모니터링하고 네트워크 파티셔닝, 호스트 하드웨어 또는 소프트웨어 고장 발생 시 해당 캐시 노드를 대체합니다. 그러나 캐시의 수명이 원래 짧기 때문에 캐시 노드 대체는 빈 상태(“콜드”라고도 함)로 시작되며, 워크로드 패턴에 따라 데이터로 다시 채우는 데(“워밍업”이라고도 함) 시간이 다소 걸릴 수 있습니다. 또한 Amazon ElastiCache에서 제공하는 자동 대체 기능은 단일 가용 영역에만 사용할 수 있습니다. 애플리케이션에서 캐시 노드의 오류 복구 기능 또는 “워밍업” 시간이 중요하거나 가용 영역 수준 오류에 대한 내결함성을 강화해야 하는 경우, 여러 가용 영역에 중복 ElastiCache 클러스터를 배포할 수 있습니다.
애플리케이션에서 이러한 가용 영역 전체의 캐시 노드에 모든 캐시 쓰기를 적용하여 데이터 중복성을 관리할 수 있습니다. 기본 가용 영역에 있는 캐시 노드 중 하나 이상에서 오류가 발생하면, 보조 가용 영역의 해당 캐시 노드를 읽도록 지시할 수 있습니다. 이때 Amazon ElastiCache가 기본 가용 영역에서 캐시 노드를 복구하게 됩니다.