AWS에서 오픈소스 API Gateway 배포 비용을 계산하는 방법

March 11, 2024

Technology

오픈소스 API 게이트웨이와 Amazon API Gateway 중 선택하기

개발자들이 Amazon API Gateway와 같은 완전 관리형 서비스와 오픈소스 API 게이트웨이 솔루션 중 어떤 것을 사용할지 결정할 때, 몇 가지 중요한 요소가 고려됩니다. 이 글은 이러한 고려 사항을 검토하여 엔지니어링 전문가들이 정보에 기반한 선택을 할 수 있도록 돕습니다.

  • 멀티 클라우드 및 하이브리드 환경: Amazon API Gateway는 Lambda와 같은 다른 AWS 서비스와의 통합에서 뛰어나지만, AWS 생태계와 긴밀하게 결합되어 있습니다. 반면, 오픈소스 게이트웨이는 GCP, Azure, 프라이빗 클라우드 또는 이러한 환경의 하이브리드 환경에 배포할 수 있는 더 큰 유연성을 제공합니다.

  • 광범위한 맞춤화 필요: Amazon API Gateway의 범위를 벗어나는 고도로 맞춤화된 API 기능이 필요한 프로젝트의 경우, 오픈소스 솔루션은 더 큰 제어권과 특정 요구 사항을 충족하기 위해 게이트웨이를 맞춤화할 수 있는 능력을 제공합니다.

  • 높은 API 요청량과 비용: API 트래픽이 증가함에 따라 Amazon API Gateway의 비용이 상당해질 수 있습니다. 반면, 오픈소스 게이트웨이는 특히 높은 트래픽 시나리오에서 더 비용 효율적인 옵션이 될 수 있습니다.

  • 성능 및 지연 시간 최적화: 오픈소스 옵션은 성능과 지연 시간에 대한 더 큰 제어권을 제공합니다. 엔지니어들은 직접 벤치마킹을 수행하고 최적화된 오픈소스 게이트웨이(예: Apache APISIX, Kong, Envoy, Tyk)를 선택하여 애플리케이션에 적합하게 할 수 있습니다.

Amazon API Gateway는 AWS 생태계 내에서 편리하고 잘 통합된 솔루션을 제공하지만, 오픈소스 대안은 특히 복잡하거나 높은 트래픽 사용 사례에 적합한 더 큰 유연성, 맞춤화, 그리고 더 낮은 비용을 제공합니다.

비용 계산 시 고려해야 할 요소

API 게이트웨이는 클라이언트 애플리케이션과 백엔드 서비스 간의 트래픽을 관리하는 데 중요한 역할을 하며, 데이터 플레인과 컨트롤 플레인이라는 두 가지 주요 구성 요소로 이루어진 미들웨어 역할을 합니다.

데이터 플레인: 트래픽에 따른 확장

데이터 플레인은 들어오는 API 요청을 처리하는 역할을 하며, 라우팅, 인증, 데이터 변환과 같은 작업을 수행하여 시스템의 원활한 운영을 보장합니다. API 호출량이 증가함에 따라 데이터 플레인은 최적의 성능을 유지하기 위해 더 많은 컴퓨팅 리소스가 필요합니다. 따라서 API 호출량을 정확히 예측하는 것은 시스템이 요청을 효과적으로 처리하고 높은 가용성을 유지할 수 있도록 필요한 데이터 플레인 인스턴스 수를 결정하는 데 중요합니다.

컨트롤 플레인: 고가용성 계획

컨트롤 플레인은 API 게이트웨이의 중앙 허브 역할을 하며, 구성과 정책을 관리하고 데이터 플레인이 요청을 처리하는 방식을 안내합니다. 데이터 플레인과 달리 컨트롤 플레인의 리소스 요구 사항은 API 호출량과 직접적으로 관련이 없습니다. 그러나 컨트롤 플레인의 고가용성을 보장하는 것이 중요합니다. 따라서 사용자는 원하는 중복 수준과 가동 시간 요구 사항에 따라 컨트롤 플레인 리소스 할당을 계획해야 합니다.

모니터링 및 로깅 비용

  • Amazon API Gateway: AWS CloudWatch와 통합되어 모니터링 및 로깅 기능을 제공하며, 이는 추가 비용이 발생합니다. Amazon API Gateway의 전체 비용을 고려할 때, 모니터링 및 로깅 요구 사항을 평가하는 것이 필수적입니다.

  • 오픈소스 API 게이트웨이: 모니터링 및 로깅 솔루션은 일반적으로 별도로 고려해야 합니다. Prometheus와 Grafana와 같은 비용 효율적인 옵션을 고려할 수 있으며, 사용자는 클라우드 제공업체가 제공하는 관리형 로그 관리 서비스를 선택할 수도 있습니다.

비용 추정 예시: 100억 API 요청 처리 비용 추정

Amazon API Gateway 사용

Amazon API Gateway로 100억 API 요청을 처리하는 월간 비용을 추정해 보겠습니다. 다음은 추정치이며, 실제 비용은 특정 구성 및 사용 패턴에 따라 다를 수 있습니다.

가정:

  • 월간 API 요청 수: 100억
  • 평균 요청/응답 페이로드 크기: 1 KB (1,024 바이트)

Amazon API Gateway로 100억 API 요청 처리

위 시나리오에서 월간 비용은 $9,030입니다.

오픈소스 API 게이트웨이 Apache APISIX 사용

월 20일, 하루 12시간의 런타임을 가정하여 API 게이트웨이가 이 100억 API 호출을 처리하기 위해 필요한 요청 수를 계산해 보겠습니다.

10000000000 / 20.0 / 12 / 3600 = 11574.074074074073

계산 결과, 초당 약 11,000개의 API 요청을 처리해야 합니다. 우리는 각각 4개의 vCPU로 구성된 두 개의 데이터 플레인을 사용할 수 있습니다.

11574.074074074073 / 4 / 2 = 1446.7592592592591

이 시나리오에서 각 CPU는 초당 약 1400개의 API 요청을 처리하며, 이는 Apache APISIX와 같은 API 게이트웨이에게는 무리 없는 작업입니다.

또한, 동일한 컴퓨팅 리소스가 컨트롤 플레인에도 할당됩니다.

APISIX로 100억 API 요청 처리

월간 비용은 $195.06입니다.

Amazon API Gateway와 오픈소스 API 게이트웨이 간의 100억 요청 처리 비용을 비교하면, 비율은 9030 / 195.06 = 46.29344816979391로, Amazon API Gateway의 클라우드 리소스 비용이 오픈소스 API 게이트웨이보다 약 46배 더 높습니다.

그러나 오픈소스 API 게이트웨이를 사용하더라도 소프트웨어 비용이 완전히 없어지는 것은 아닙니다. 엔지니어들은 업그레이드 및 유지보수 비용, 기술 지원 및 상용 제품 구매 비용도 고려해야 합니다.

결론

실제 사례를 통해 Amazon API Gateway와 오픈소스 API 게이트웨이 Apache APISIX를 비교해 보면, 오픈소스 API 게이트웨이가 기업 소프트웨어 비용을 크게 절감할 수 있음을 알 수 있습니다. Amazon API Gateway는 AWS 생태계 내에서 편리하고 잘 통합된 솔루션을 제공하지만, 오픈소스 대안은 특히 복잡하거나 높은 트래픽 사용 사례에 적합한 더 큰 유연성, 맞춤화, 그리고 비용 효율성을 제공합니다.

Tags: