Akamai Diversity

Akamai 블로그

AKAMAI의 부하 분산 기술로 서비스 품질 유지

적절한 엣지가 적시에 최적의 서비스 제공

Introduction

Akamai 블로그 게시물인 클라우드, 데이터센터, CDN을 관리하는 Global Traffic Management에 소개된 것처럼, Akamai의 Intelligent Edge™ Platform은 사용자를 적절한 시점에 적절한 엣지로 연결시키는 DNS와 레이어 7 부하 분산 기능이 포함되어 있습니다. 이 글에서는 사용 사례를 소개하고 Akamai GTM(Global Traffic Management)과 ALB(Application Load Balancing)로 부하 분산 문제를 해결하는 방법을 설명합니다.

Akamai의 2가지 클라우드 기반 GSLB 솔루션

Akamai는 2개의 GSLB 서비스를 제공하고 있습니다. 2가지 모두 확장 가능한 우수한 서비스이며 전 세계 수천 개의 고객사가 사용 중입니다. 많은 사람들은 Akamai를 글로벌 부하 분산 서비스 사업자로 생각하지 않습니다. 하지만 Akamai 비즈니스의 본질은 인터넷의 확장입니다. GSLB 기능을 클라우드로 이전하는 것은 Akamai가 고객사의 운영 확장을 지원하는 데 중요한 요소입니다.

Akamai는 두 가지의 GSLB 툴을 제공합니다. 하나는 데이터센터로 전달되는 모든 트래픽을 처리(예: API 트래픽 분산)하는 GTM(Global Traffic Management) 툴이고, 다른 하나는 오리진 트래픽 흐름, 레이어 7 라우팅, 레이어 7 세션 동기화(예: origin switching)를 최적화하는 ALB(Application Load Balancer) 툴입니다. GTM은 뛰어난 유연성을 갖춘 다용도 멀티 프로토콜 툴로 툴, 데이터베이스, 데이터센터, 멀티 CDN, 광범위한 기타 서비스의 트래픽을 관리합니다. ALB는 Akamai의 Global Traffic Management 기능을 활용하여 레이어 3 DNS 라우팅을 결정하고 추가 트래픽 라우팅 제어를 위한 레이어 7 기능을 제공합니다. GTM과 ALB는 기본 'Stressor'와 상관 없이 모든 조건에서 안정성, 가용성,
확장성을 최대화하기 위해 Akamai의 모범 사례를 따릅니다.

Akamai의 GTM(Global Traffic Management)

Akamai의 GTM은 뛰어난 안정성과 최적화된 DevOps를 제공하는 GSLB 서비스로, 다양한 분산형 네트워크 전반에 걸쳐 네트워크 엣지에서 가동됩니다. 세계 최고 수준의 제어 기능과 컴플라이언스를 제공하는 Akamai 정보 보안 프로그램과 연중무휴 24시간 운영되는 Network Operations Command Center로 GTM의 성능이 강화되었습니다. GTM을 사용하면 가중치·성능 기반 부하 분산, 지리적 매핑, 장애 복구 등의 다양한 제어가 가능합니다.

GTM은 Akamai Intelligent Edge Platform의 핵심 요소로서 전 세계적으로 사용 가능하며 서비스를 최적의 지리적 위치로 유연하게 이동시킬 수 있습니다. 지리적 매핑과 같은 GTM 서비스는 멀티 클라우드 환경에 애플리케이션을 배포하고 사용자 애플리케이션 연결을 지리적 또는 토폴로지 측면에서 가장 가까운 엣지 서버로 라우팅합니다. Akamai의성능 모니터링은 아웃사이드 인 접근 방식을 사용해 전 세계적으로 모니터링합니다. Akamai의 GTM 성능 모니터링은 세계 최대 규모의 애플리케이션, 미디어, 네트워크 제공업체가 매일 사용하는 Akamai의 미디어, 웹, 클라우드, 보안 제품군에 사용되는 것과 동일합니다.

Akamai의 ALB(Application Load Balancer)

ALB는 Akamai 플랫폼을 통해 트래픽이 전송되는 경우 레이어 7 수준의 가시성과 제어를 추가함으로써 오리진 라우팅을 강화하고 예상된 장애가 발생했을 때 사용자 경험과 관련된 리스크를 경감합니다. 레이어 7 기능은 다음과 같습니다.

• URL, 디바이스 유형, 콘텐츠 특성 등 헤더 정보를 기반으로 라우팅 의사 결정을 내립니다.
• 세션 동기화를 통해 로그인, 장바구니, 기타 사용자 고유 데이터 등 중요한 데이터를 유지 관리하는 정상적인 런타임 운영 기간 동안 사용자들을 한 오리진에 바인딩(binding)하는 방식으로 사용자 경험 수준을 유지합니다.
• 즉각적인 장애 복구를 통해 예상치 못한 다운타임이 발생할 때 사용자 경험에 지장을 초래하지 않으면서 사용자 요청을 백업 오리진으로 리라우팅하여 다운타임 리스크를 줄입니다.

ALB + GTM

일부 기능에 대한 안정성을 유지하기 위해 GTM을 구축하고 특정 애플리케이션을 지원하기 위해
ALB를 사용하는 아키텍처가 만들어질 수 있습니다. ALBGTM을 결합하면 DevOps, 네트워크 아키텍트, 시스템 엔지니어에게 최적의 클라우드 기반 GSLB 솔루션을 선택할 수 있는 유연성을 제공할 수 있습니다. Akamai가 제공하는 인라인 환경을 관리하기 위해 Cloudlet ALB 기능이 필요한 아키텍트도 있습니다. 이와 동시에 클라우드 배포와 사업자 사이에서 트래픽을 분산해야 하는 네트워크 아키텍트도 있습니다. 시스템 엔지니어와 애플리케이션 개발자는 GTM과 ALB를 동시에 사용할 경우 그 결합 효과를 십분 활용할 수 있습니다.

사용 사례

움직이는 부분이 있는 모든 사물에는 문제가 발생하기 마련입니다. 우수한 서비스 설계는 최악의
시나리오를 고려해 소프트웨어, 하드웨어, 네트워킹 문제가 발생할 때 서비스 품질이 유지되도록 합니다. 사용자가 메뉴에서 선택할 수 있는 다양한 종류의 장시간 재생 콘텐츠를 제공하는 스트리밍 서비스를 예로 들어보겠습니다. 웹 시스템은 콘텐츠 메뉴를 렌더링하고 계정 인증 및 권한 확인과 같은 과정을 진행합니다. 메뉴 항목을 클릭하면 사용자를 위한 스트리밍 세션이 활성화됩니다. 요구사항은 다음과 같습니다.

• 글로벌 수준의 지원 - 유럽, 미국 동부/서부, 라틴 아메리카, 아시아의 여러 데이터센터
• 지리적 매핑 - 특정 지역의 트래픽을 해당 지역 내 데이터센터로 제한
• 모니터링 네트워크와 사용자 피드백 트랜잭션을 이용해 데이터센터의 성능 측정
• API 트랜잭션을 활용한 프로그래밍 방식으로 정책 데이터 변경 사항 적용
• 데이터센터 한 곳을 유지 관리 목적으로 가동을 중단할 수 있도록 유지 관리 모드 확립

이제 GTM과 ALB를 결합하여 최적의 솔루션을 구현하는 방법을 강조하기 위해 웹사이트 트래픽에 초점을 맞춰 보겠습니다. 다음 다이어그램은 상위 수준의 구성요소와 상호작용을 보여줍니다.

Load Balancing.png

전체 흐름에서 첫 번째 단계인 Global Traffic Management는 사용자를 적절한 Akamai 엣지 서비스 또는 써드파티 서비스로 안내합니다. 이 결정은 애플리케이션이 DNS를 통해 적절한 서비스 위치를 찾으려고 할 때 부하, 성능, 가용성, 실제 사용자 측정, 지역을 고려하여 내려집니다. 서비스 엔드포인트는 전 세계 어디에나 있을 수 있습니다. 적절한 데이터센터로 연결된 후에는 Akamai의 엣지 서버와 ALB가 우수한 사용자 경험을 책임집니다. Akamai 서비스를 이용하면 ALB가 연결을 관리하고 오리진 콘텐츠 서버에 대한 확장성과 세션 안정성을 보장할 수 있습니다.

설정 방법

이 사용 사례는 다음과 같은 절차를 통해 진행됩니다.

• 1단계: Global Traffic Management 도메인 및 프로퍼티 생성하기
• 2단계: Application Load Balancer Cloudlet 생성하기
• 3단계: 트래픽을 전송하기 위해 DNS 업데이트하기

---

1단계: Global Traffic Management 도메인 및 프로퍼티 생성하기

GTM은 DNS 도메인 네임으로 서비스를 처리합니다. GTM 도메인 네임으로 전송된 쿼리는 현재 인터넷 상태에 따라 최적의 엣지 서비스로 사용자 요청을 전달하는 응답을 받게 됩니다. 이 단계에 포함된 작업은 다음과 같습니다.

• 데이터센터 및 도메인 생성하기
프로퍼티 생성하기
부하 피드백 활성화하기

생성된 도메인과 프로퍼티는 website.property.akadns.net 등의 도메인 네임에 바인딩됩니다. OS 스텁 리졸버(stub resolver)를 사용하는 브라우저 등의 애플리케이션은 이 네임으로 전송된 DNS 쿼리로 엣지 서비스를 찾습니다. 응답은 설정에 따라 애플리케이션을 ALB 또는 써드파티 서비스로 향하게 합니다. 다음 예시에 나온 DNS 응답 프래그먼트는 애플리케이션을 ALB 프로퍼티 (예: www-alb.jdgri.me.edgesuite.net)로 향하게 합니다. 다른 유효한 응답에서는 애플리케이션이 다른 서비스를 사용하도록 지시할 수 있습니다. 애플리케이션은 먼저 기본 도메인 네임 (예: www.example.com)을 가진 서비스 위치를 찾는 작업을 통해 이 지시를 받습니다. 기본 도메인에서 GTM 도메인으로, GTM 도메인에서 ALB 도메인으로 전달되는 CNAME을 확인하세요.

;; ANSWER SECTION:

www.example.com. 1 IN CNAME website-gtm.property.akadns.net.

website-gtm.property.akadns.net. 1 IN CNAME www-alb.jdgri.me.edgesuite.net.


2단계: Application Load Balancer Cloudlet 생성하기

ALB도 DNS 도메인 네임으로 서비스를 처리합니다. ALB 도메인 네임으로 전송된 쿼리는 인터넷 상태에 따라 최적의 엣지 서버로 사용자를 안내하는 응답을 받게 됩니다. 이 단계에 포함된 작업은 다음과 같습니다.

• 사용할 Akamai 프로퍼티 결정
• Cloudlet 오리진 추가(데이터센터)
• Cloudlet 오리진 설정
• 부하 분산 설정 구성
• 정책 생성
• 정책에 룰 추가
• ALB 동작 설정

설정이 완료되면 다음과 같이 사용자를 최적의 엣지 서버에 도달하게 하는 도메인 네임과 리소스
레코드 세트를 갖게 됩니다.

;; ANSWER SECTION:

www-alb.jdgri.me.edgesuite.net.  21600 IN CNAME      a1234.dscb.akamai.net.

a1234.dscb.akamai.net.     20    IN    A     1.2.3.4

앞서 설명한 것처럼 GTM은 이 서비스 네임을 서비스 위치를 찾는 애플리케이션 또는 관련된 쿼리를 배포할 곳으로 사용합니다.

3단계: 트래픽을 전송하기 위해 DNS 업데이트하기

GTM 도메인과 프로퍼티, ALB Cloudlet을 사용하면 GTM 도메인에 바인딩된 CNAME의 DNS를 사용하여 애플리케이션 트래픽을 서비스로 전송할 수 있습니다. GTM 도메인에는 ALB 프로퍼티 및 기타 써드파티 서비스로 향하는 설정이 포함되어 있습니다. 초기 영역(zone) 설정은 다음과 같습니다.

www.example.com. CNAME website-gtm.property.akadns.net.

애플리케이션은 이 서비스 네임으로 GTM과 ALB를 활용하여 인터넷 상태에 따라 애플리케이션에 서비스를 제공할 엣지 서버를 결정할 수 있습니다. 기본 도메인에서 GTM 도메인으로 전달되는 CNAME을 확인하세요. 적절한 시점에 적절한 엣지 서버가 사용되면 사용자 경험이 최적화됩니다.


다음 단계

향후 전망

GTM과 ALB 서비스는 Akamai Intelligent Edge Platform의 핵심 요소입니다. Akamai 솔루션은 고객의 요구사항을 충족하기 위해 끊임없이 발전하고 있습니다. Akamai 블로그를 주기적으로 살펴보고 Akamai Community를 구독하여 새로운 업데이트와 기사, 프레젠테이션 자료를 확인하시기 바랍니다.

Akamai의 GTM 및 ALB에 대해 자세히 알아보기

Akamai.co.kr의 '문의하기' 아이콘을 클릭하여 Akamai 담당자와 채팅하고 Akamai의 GTM과 ALB서비스에 대해 자세히 알아보시기 바랍니다. 아래 링크에서 관련 자료를 확인하실 수 있습니다.

• GTM(Global Traffic Management) - 클라우드와 온프레미스 등 데이터 소스 전체에서 트래픽의 균형을 유지하여 빠르고 안정적인 사용자 경험을 보장합니다.
• ALB(Application Load Balancer Cloudlet) - Akamai Intelligent Platform의 속도∙유연성∙안정성을 기반으로 부하를 분산시켜 애플리케이션의 성능과 가용성을 극대화합니다.
• 도메인 네임 보호: 첫 단계 - 도메인 하이재킹을 차단하기 위한 권장사항을 제시합니다.
• DDoS 공격에 대해 안정성과 가용성을 유지할 수 있는 DNS 구축하기 - 최고의 서비스 아키텍처를 제시합니다.
• DNS 안정성을 위한 배포 다각화 - 위임 서버를 다양한 경로에 배치합니다.