Analysis
고객사는 글로벌 전자상거래 플랫폼으로 전 세계 고객들에게 상품을 판매하는 플랫폼을 운영하는 기업입니다. 내년을 목표로 새로운 지역에 서비스를 확장 오픈 하려는 계획을 가지고 있습니다. 타깃 지역에 대한 예상 고객 분석결과 클라우드 도입이 유리하다는 결론을 내린 상태입니다. 그러나 이미 IDC에 구축된 백엔드 시스템에 많은 도메인이 얽혀있어 복잡하고, 보안 문제가 존재하여 기존 IDC 리소스를 클라우드 VPC와 연결하는 아키텍처를 구축하길 원하는 상황입니다.
Architecture Blueprint
1) VPC 내에 3개의 가용 영역(AZ)을 설정하여, 각각에서 클래식한 N-tier 아키텍처를 구현합니다. 웹, 애플리케이션, 데이터베이스 레이어가 서브넷으로 구성되어 각각의 역할을 수행합니다. 정적 컨텐츠에 대한 전송은 EdgeOne을 통해 가속하여 전 세계 구매자에게 빠른 접근성을 제공합니다.
2) CLB는 각 레이어간 로드를 효율적으로 분산시키며, 추후 사업 규모 확대에 따라 탄력적인 리소스 관리를 위한 Auto-Scaling 도입을 고려할 수 있습니다.
3) 플랫폼의 빠른 구매 데이터 처리를 위해 Tencent DB for Redis를 인메모리 캐싱 데이터베이스로 선택합니다. 데이터베이스 레이어의 TencentDB for MySQL은 가용 영역별로 재해 복구 목적의 읽기 및 쓰기 복제본을 구성하여 고가용성을 확보합니다. 이는 구매자의 사용자 경험을 개선하고 데이터 처리 속도를 높이는 데 기여합니다.
4) COS를 통해 높은 I/O를 요구하는 데이터를 저장합니다. COS는 다양한 데이터 유형의 저장과 관리에 적합하며, 전자상거래 플랫폼의 이미지, 동영상, 사용자 데이터 등을 효율적으로 처리하는 스토리지 서비스입니다.
5) 고객사 플랫폼의 안정적인 운영과 데이터 동기화를 위해, IDC와 VPC 간에는 4개의 Direct Connect 연결과 2개의 액세스 포인트를 설계합니다. IDC1과 IDC2는 동일지역 IDC로, 단일 연결이 아닌 위와 같은 네트워크 연결방식을 통해 고가용성 보장합니다. 액세스 포인트의 DC연결은 각각 primary - secondary 구성으로 한쪽 연결에 문제가 발생하더라도 다른 연결을 통해 서비스의 연속성을 유지할 수 있습니다.
6) 문제는 역시 비용입니다. 전용 회선을 이용하는 네트워킹 특성상 고가용성만을 고려한 설계 시 고객사가 비용 면에서 만족하지 못할 수도 있습니다. 이때는 1개의 액세스 포인트로 Primary-secondary 연결을 하거나 단일 연결을 하는 설계를 차선책으로 제안할 수 있습니다.
Overall
고객사의 클라우드 아키텍처는 N-tier 아키텍처를 기반으로, 고가용성과 탄력성을 고려하여 설계되었습니다. IDC와 VPC 간의 Direct connect 연결은 서비스의 연속성을 보장하는 동시에 데이터 동기화의 안정성을 높입니다. 그러나 고가용성을 위한 네트워크 연결 방식은 비용적인 측면에서 고려가 필요하며, 비용 효율성을 고려한 설계 변경이 필요한 경우에 대비해 유연한 접근 방식을 제안할 수 있습니다. 경우에 따라 IDC- VPC 간 연결에 VPN을 도입하는 것도 생각해 볼 수 있겠습니다.
Products we used
-Direct Connect : https://console.tencentcloud.com/dc
- CVM : https://console.tencentcloud.com/cvm
- EdgeOne : https://console.tencentcloud.com/teo
- CLB : https://console.tencentcloud.com/clb
- COS : https://console.tencentcloud.com/cos
- TencentDB for MySQL : https://console.tencentcloud.com/cdb
- TencentDB for Redis : https://console.tencentcloud.com/crs