마이크로초 단위의 지연 시간과 최대 60배 더 많은 처리량을 제공하는 Memorystore for Redis Cluster 출시
Kyle Meggs
Senior Product Manager, Google Cloud
Matt Geerling
Product Manager
*본 아티클의 원문은 2023년 8월 31일 Google Cloud 블로그(영문)에 게재되었습니다.
Redis는 데이터베이스의 부하를 줄여 비용을 절감하거나 대기 시간을 단축하여 최종 사용자의 경험을 개선하거나 또는 그저 개발자들이 Redis를 좋아하는 등의 이유로 인기가 계속 높아지고 있습니다. 그러나 게임(리더보드, 세션 저장), 금융(사기 행위 감지), 광고(매우 짧은 지연 시간 서빙), 소매(결제)와 같은 산업의 워크로드들은 독립형 Redis 샤드(shard)의 경계를 뛰어넘고 있어 Redis Cluster의 성능 및 수평 확장이 필요한 상황입니다.
이러한 까다로운 Redis 워크로드를 서빙하기 위해 Google Cloud Next를 통해 Memorystore for Redis Cluster의 프리뷰 버전을 발표한 바 있습니다. Memorystore for Redis Cluster는 기존 서비스 대비 마이크로초 단위의 지연 시간과 60배 더 많은 처리량을 제공하며 10배 더 많은 데이터를 지원합니다. 새로운 완전 관리형 Redis Cluster 서비스는 오픈소스와 완벽하게 호환되고, 설정이 간편하며, 매우 짧고 예측 가능한 지연 시간으로 다운타임 없는 확장이 가능합니다. Memorystore for Redis Cluster를 통해 지능형 자동 노드 영역 분산을 통한 고가용성과 탄력성, 자동화된 복제본 관리와 승격 그리고 정식 버전이 출시되면 99.99% 가용성 SLA를 얻을 수 있습니다.
매우 짧고 예측 가능한 지연 시간
고객들은 짧은 지연 시간과 안정성 때문에 Memorystore를 사용합니다. 이제 Memorystore for Redis Cluster를 통해 확장성과 성능이 한 차원 더 향상되었습니다. 이제 마우스 클릭 한 번 또는 gcloud 명령어로 클러스터를 다운타임 없이 손쉽게 테라바이트 규모의 키스페이스(keyspace)로 확장하고 Redis용 Memorystore의 처리량을 최대 60배까지 높일 수 있습니다. 무엇보다 좋은 점은 확장 개선사항을 Redis 엔진에 직접 적용하였고 Redis 확장 환경을 개선하여 차별화했다는 것입니다.
Verve Group은 실시간 광고를 게재하기 위해 지연 시간이 매우 짧은 Redis Cluster를 활용하는 광고 기술 생태계로 최근 Memorystore for Redis Cluster를 테스트했습니다. Verve에서는 관리 편의성 외에도 슬롯 마이그레이션을 향상하고, 확장 과정의 위험을 제거하고, 오픈소스 Redis Cluster 확장에 존재하는 데이터 손상 위험을 직접적으로 해결하기 위해 Google Cloud에서 Redis 엔진에 적용한 확장 개선사항을 직접 경험했습니다.
"Memorystore for Redis Cluster의 성능은 기대 이상이었습니다. 처리량은 매우 높고 지연 시간은 매우 짧았습니다. 또한 노드를 10개로 즉시 축소할 수 있어 다운타임 없이 쉽게 확장/축소 할 수 있는 제품임을 확인했습니다." - 빌 라미넨, Verve Group의 DevOps 관리자
간편한 관리와 손쉬운 비용 절감
Memorystore for Redis Cluster의 가치 제안은 총소유비용(TCO)을 낮추고 운영 오버헤드를 줄여 비용을 절감하는 것을 기반으로 합니다. 이 새로운 서비스를 사용하면 더 이상 고가용성을 위한 영역 분산, VM 장애, Redis 튜닝, 복제본 관리, 복잡한 확장 작업과 같이 넘치는 반복 업무와 지루한 작업을 걱정하면서 Compute Engine의 수천 개 Redis 노드를 직접 관리하지 않아도 됩니다. 대신 Memorystore for Redis Cluster의 10배 큰 확장성을 이용해 작은 워크로드들을 복원력이 높은 고성능 클러스터로 통합하여 비용을 절감하고 운영 오버헤드를 줄일 수 있습니다. 그리고 '사용한 만큼만 지불(PAYG)' 모델을 통해 다운타임 없는 확장 기능을 손쉽게 활용하여 워크로드 수요를 충족하고 블랙 프라이데이/사이버 먼데이와 같은 이벤트를 마우스 클릭 한 번이면 되는 간단한 작업으로 전환할 수 있습니다.
"Memorystore for Redis Cluster를 사용하면 클러스터를 손쉽게 확장해 최대 워크로드 수요를 충족할 수 있습니다. 무엇보다 좋은 점은 클러스터 관리의 복잡성을 Google로 오프로드하여 Compute Engine에서 직접 관리하지 않아도 되고 사내에 Redis Cluster 전문 지식이 없어도 된다는 것입니다. Memorystore for Redis Cluster를 직접 테스트하여 이 새 제품의 사용 편의성, 높은 성능, 손쉬운 확장성을 확인했습니다." - 애니메시 차투르베디, Palo Alto Networks의 우수 엔지니어
고가용성, 간소화
개념적으로는 간단하지만, 실질적으로 가용성 영역 전반에 걸쳐 노드와 복제본 배치를 직접 관리하면 반복적인 엔지니어링 업무가 상당히 많이 발생하는 데다가 비용이 많이 드는 문제로 이어지기 쉽습니다. Memorystore for Redis Cluster를 사용하면 Redis Cluster 노드를 전체 영역에 자동으로 배포하여 가용성과 복원력을 최대로 달성할 수 있습니다. 엔지니어가 복제본 노드를 추가하면 기본 영역과는 다른 영역에 자동으로 배치되어 클러스터의 복원력을 높이고 영역별 서비스 중단으로부터 데이터를 보호합니다.
또한 Google Cloud에는 최적의 성능과 최대한 짧은 지연 시간을 달성할 수 있도록 인프라를 프로비저닝하고 구성할 책임이 있습니다. Google Cloud가 백그라운드에서 소프트웨어와 보안 패치를 관리하고, 장애를 감지하며, 자동 장애 조치 및 VM 교체를 트리거하므로 엔지니어링 조직은 오픈소스 소프트웨어와 Compute Engine 인프라를 관리하는 대신에 애플리케이션을 빌드하는 데 집중할 수 있습니다.
안전한 비공개 액세스
연결 환경을 간소화하고 최고 수준의 관리형 경험을 제공하기 위해 Google Cloud에서는 Private Service Connect(PSC)가 포함된 Memorystore for Redis Cluster를 출시합니다. PSC는 트래픽이 Google의 네트워크를 벗어나지 않는 안전한 비공개 기본 연결 옵션을 제공합니다. PSC가 포함된 Memorystore for Redis Cluster는 클러스터 프로비저닝을 한 번에 처리하는 단순한 온보딩 환경을 제공하므로 네트워킹 전문가가 아니어도 비공개 네트워킹을 구성할 수 있습니다. PSC는 최소한의 IP 소비(샤드가 100개 이상이어도 클러스터당 단 2개의 IP 주소)로 세분화된 연결을 제공합니다. 또한 PSC는 Virtual Private Cloud(VPC) 피어링 제한을 해결하고 모든 리전에서 액세스할 수 있으며 고급 보안 제어 기능을 제공합니다.
클러스터 시작하고 설정하기
현재 Memorystore for Redis Cluster 프리뷰 버전을 사용할 수 있습니다. 우수한 확장성과 성능을 달성하는 데 어떤 도움이 되는지 경험해 보시기 바랍니다.(Google Cloud 콘솔 연결 링크). Identity and Access Management(IAM), Cloud Monitoring, 감사 로그와의 통합 및 전송 중 암호화 사용 설정 방법과 같은 추가 기능을 자세히 알아보려면 관련 문서를 확인하세요. 궁금한 점이나 의견이 있으면 언제든지 cloud-memorystore-pm@google.com으로 문의해 주세요.