AWS용 Anthos 클러스터가 멀티 클라우드의 이점을 제공하는 방법
Naohiko Takemura
Head of Engineering, PLAID
Kosuke Oya
Engineer, PLAID
* 본 아티클의 원문은 2021년 6월 11일 Google Cloud 블로그(영문)에 게재되었습니다.
편집자 주: 이번 게시글은 일본의 고객 경험 플랫폼인 PLAID의 엔지니어링 부문 책임자인 나오히코 타케무라와 엔지니어인 코스케 오야가 제공합니다. PLAID는 AWS용 Anthos 클러스터를 통해 멀티 클라우드 환경에서 플랫폼을 운영하고 있으며 이 게시글을 통해 다양한 경험과 권장사항을 공유합니다.
PLAID에서는 데이터를 바탕으로 사람의 가치를 극대화하는 것을 사명으로 삼고 고객 경험 개선에 초점을 맞춘 다양한 제품을 개발하고 있습니다. 핵심 제품인 KARTE는 웹사이트 방문자와 애플리케이션 사용자의 행동 및 감정을 분석하여 기업에서 실시간으로 관련 커뮤니케이션을 전달할 수 있도록 지원하는 고객 경험 플랫폼입니다. PLAID는 KARTE를 인사 관리 등의 부서와 부동산 및 금융 등의 업계에 서비스 형태로 제공하고 멀티 클라우드 환경에서 플랫폼을 운영하여 빠른 대응이 가능하며 가용성 요구사항을 충족합니다. 여기에 Anthos가 사용됩니다.
2015년에 KARTE를 도입했으며 새로운 기능이 추가되고 확장이 필요해짐에 따라 시스템 구성을 업데이트했습니다. PLAID는 Google Kubernetes Engine(GKE) 기능을 이용할 수 있는 AWS용 Anthos 클러스터를 통해 멀티 클라우드 구성을 최적화했습니다.
KARTE는 각각 다른 클라우드에 있는 두 서버 인스턴스 그룹으로 실행됩니다. 한 그룹은 클라이언트가 사용하는 관리 화면을 실행하고 또 다른 그룹에서는 웹사이트 방문자를 위한 콘텐츠를 제공합니다. Google Cloud에서 관리 시스템이 GKE로 실행되고 콘텐츠는 Compute Engine을 통해 제공됩니다.
처음에는 다른 제공업체를 통해 서비스 핵심 요소를 개발 및 운영하다가 2016년부터 강력한 데이터 처리 기능을 갖춘 Google Cloud로 전환하기 시작했습니다. 실시간으로 데이터를 처리할 수 있고 KARTE와 호환된다는 점에서 Cloud Bigtable 및 BigQuery 등 빅데이터를 처리하는 제품들을 사용하기에 적합했습니다. 지금은 주변 요소를 포함한 대부분의 기능을 Google Cloud에서 실행합니다. 이러한 제품을 중심으로 시스템을 구축하면 이후 다른 기능도 Google Cloud에서 더 효율적으로 구축할 수 있을 것이라고 생각했기 때문입니다.
모든 것을 Google Cloud로 마이그레이션하는 것을 고려한 끝에 기존 제공업체인 AWS와 Google Cloud의 강점을 활용하기로 결정했습니다. 멀티 클라우드 접근법으로 단일 클라우드 환경보다 더 많은 기회를 얻고 더 크게 성장할 수 있을 것이라고 생각했습니다.
2017년에 멀티 클라우드 환경으로의 전환을 마쳤으며, 두 클라우드 서비스에 거의 동일한 콘텐츠의 시스템을 구축하여 각각의 장점을 활용함으로써 비용을 절감하고 성능과 가용성을 개선할 수 있다는 사실을 발견했습니다.
그러나 KARTE가 성장하고 서비스 콘텐츠가 복잡해짐에 따라 새로운 문제를 겪기 시작했습니다. 2018년 이후 사내 엔지니어 수가 늘어나면서 시스템 부하가 증가하여 가상 머신에서 실행되는 기존 모놀리식 아키텍처의 확장성과 개발 속도에 영향을 미쳤습니다. PLAID는 마이크로서비스 및 컨테이너화를 기반으로 한 접근법을 채택했습니다. 실시간 분석을 지원하는 구성요소는 2016년에 처음 배포된 이후 현대화되었고 관리 화면은 이를 실행하는 인프라에는 명확한 미세 조정이 필요 없었기 때문에 이 두 가지는 제외되었습니다. 엔지니어의 작업 속도 개선에 주요 우선순위를 두었습니다.
2019년부터는 컨테이너 기술을 최대한 활용하는 마이크로서비스의 사용을 촉진하기 시작했습니다. 가상 머신에 빌드된 대상에서 컨테이너화로의 전환을 결정할 당시 GKE의 사용 편의성을 평가하여 Google Cloud에 구축하기로 정했습니다. 동시에 엄격한 서비스 수준 의무가 적용되는 시스템 수가 증가했기 때문에 고가용성을 보장하기 위해 멀티 클라우드 환경에서 이를 실행할 것을 고려했습니다. 샌프란시스코에서 열린 Google Cloud Next ‘19에서 발표된 AWS용 Anthos 클러스터가 해결책이 되어주었습니다.
AWS 환경에서 GKE를 원활하게 운영할 방법을 고민하고 있었기 때문에 AWS용 Anthos 클러스터에 대한 발표가 무척 반가웠습니다. 사전 체험 프로그램을 통해 Google Cloud 고객 엔지니어와 상담하여 이 Anthos 버전을 먼저 사용해 볼 수 있는 기회를 얻었습니다. 프로그램에 의견을 제공하고 개선사항을 요청했으며 이를 통해 기능과 이후의 개선사항을 활용할 수 있는 제품을 구현할 수 있었습니다. Google Cloud를 통해 개발팀과 계속 긴밀하게 상호 작용하여 제품 로드맵을 이해하고 그에 대한 의견을 제공할 수 있었습니다.
PLAID는 현재 개발 속도 및 가용성 개선 등 멀티 클라우드의 혜택을 누리고 있습니다. 일반적인 기업이라면 멀티 클라우드에 신중하게 접근할 것을 권합니다. PLAID의 경우 멀티 클라우드는 대규모 데이터 분석을 실시간으로 제공할 수 있는 유용한 메커니즘이었지만 다른 기업에서는 멀티 클라우드가 적합한지 따져보고 사용이 적절하다면 Anthos와 같은 기술의 역할을 고려해야 합니다. 또한 확장에 앞서 작은 규모로 시작해야 합니다. 앞으로 Google Cloud가 비즈니스를 한 단계 더 발전시키는 데 도움이 될 어떤 제품을 또 선보일지 기대가 큽니다.