Azure API Management의 API 게이트웨이
적용 대상: 모든 API Management 계층
이 문서에서는 API Management 게이트웨이 구성 요소의 역할 및 기능에 대한 정보를 제공하고 배포할 수 있는 게이트웨이를 비교해서 보여 줍니다.
관련 정보:
API 관리 시나리오, 구성 요소 및 개념에 대한 개요는 Azure API Management란?을 참조하세요.
API Management 서비스 계층과 기능에 관한 자세한 내용은 다음을 참조하세요.
게이트웨이의 역할
API Management 게이트웨이(데이터 평면 또는 런타임이라고도 함)는 API 요청을 프록시하고, 정책을 적용하고, 원격 분석을 수집하는 서비스 구성 요소입니다.
특히 게이트웨이는 다음과 같습니다.
- API 호출을 수락하고 적절한 백 엔드로 라우팅하여 백 엔드 서비스의 외관 역할을 수행합니다.
- 요청과 함께 제공되는 API 키 및 기타 자격 증명(예: JWT 토큰 및 인증서)을 확인합니다.
- 사용 할당량 및 속도 제한을 적용합니다.
- 필요에 따라 정책 문에 지정된 대로 요청 및 응답을 변환합니다.
- 구성된 경우 응답을 캐시하여 응답 대기 시간을 개선하고 백 엔드 서비스의 부하를 최소화합니다.
- 모니터링, 보고 및 문제 해결을 위한 로그, 메트릭 및 추적 내보내기
참고 항목
정책 구성에 의해 거부된 요청을 포함하여 API Management 게이트웨이에 대한 모든 요청은 서비스 계층에 적용된 경우 구성된 속도 제한, 할당량 및 청구 제한에 포함됩니다.
관리형 및 자체 호스팅
API Management는 관리형 게이트웨이와 자체 호스팅 게이트웨이를 모두 제공합니다.
관리형 - 관리형 게이트웨이는 모든 서비스 계층의 모든 API Management 인스턴스에 대해 Azure에 배포된 기본 게이트웨이 구성 요소입니다. 독립 실행형 관리형 게이트웨이는 API Management 인스턴스의 작업 영역에 연결할 수도 있습니다. 관리형 게이트웨이를 하용하면 API를 구현하는 백 엔드가 호스트되는 위치에 관계없이 모든 API 트래픽이 Azure를 통과합니다.
참고 항목
기본 제공 서비스 아키텍처의 차이로 인해 서로 다른 API Management 서비스 계층은 서로 다른 게이트웨이 기능을 제공합니다. 자세한 내용은 기능 비교: 관리형과 자체 호스팅 게이트웨이 섹션을 참조하세요.
자체 호스팅 - 자체 호스팅 게이트웨이는 선택한 서비스 계층에서 사용할 수 있는 기본 관리 게이트웨이의 선택적 컨테이너화된 버전입니다. API 백 엔드가 호스트되는 동일 환경으로 Azure에서 게이트웨이를 실행해야 하는 하이브리드 및 다중 클라우드 시나리오에 유용합니다. 자체 호스팅 게이트웨이를 사용하면 하이브리드 IT 인프라를 사용하는 고객이 온-프레미스 및 Azure의 단일 API Management 서비스에서 클라우드 간에 호스트되는 API를 관리할 수 있습니다.
자체 호스팅 게이트웨이는 Linux 기반 Docker 컨테이너로 패키지되며 일반적으로 Azure Kubernetes Service 및 Azure Arc 지원 Kubernetes를 포함하는 Kubernetes에 배포됩니다.
각 자체 호스팅 게이트웨이는 구성 업데이트를 수신하고 상태를 전달하는 클라우드 기반 API Management 인스턴스에 있는 게이트웨이 리소스와 연결됩니다.
기능 비교: 관리형 게이트웨이와 자체 호스팅 게이트웨이
다음 표에서는 다음 API Management 게이트웨이에서 사용할 수 있는 기능을 비교합니다.
- 클래식 - 개발자, 기본, 표준, 프리미엄 서비스 계층에서 사용할 수 있는 관리되는 게이트웨이(이전에는 전용 계층으로 그룹화됨)
- V2 - 기본 v2 및 표준 v2 계층에서 사용할 수 있는 관리되는 게이트웨이
- 사용량 - 사용량 계층에서 사용할 수 있는 관리되는 게이트웨이
- 자체 호스팅 - 일부 서비스 계층에서 사용할 수 있는 선택적 자체 호스팅 게이트웨이
- 작업 영역 - 선택한 서비스 계층의 작업 영역에서 사용할 수 있는 관리형 게이트웨이
참고 항목
인프라
기능 지원 | 클래식 | V2 | 소비 | 자체 호스팅 | 작업 영역 |
---|---|---|---|---|---|
사용자 지정 도메인 | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
기본 제공 캐시 | ✔️ | ✔️ | ❌ | ❌ | ✔️ |
외부 Redis 호환 캐시 | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
가상 네트워크 삽입 | 개발자, 프리미엄 | ❌ | ❌ | ✔️1,2 | ✔️ |
인바운드 프라이빗 엔드포인트 | 개발자, 기본, 표준 및 프리미엄 | ❌ | ❌ | ❌ | ❌ |
아웃바운드 가상 네트워크 통합 | ❌ | 표준 V2 | ❌ | ❌ | ✔️ |
가용성 영역 | 프리미엄 | ✔️3 | ❌ | ✔️1 | ✔️3 |
다중 지역 배포 | Premium | ❌ | ❌ | ✔️1 | ❌ |
인증서 유효성 검사를 위한 CA 루트 인증서 | ✔️ | ✔️ | ❌ | ✔️4 | ❌ |
관리형 도메인 인증서 | 개발자, 기본, 표준 및 프리미엄 | ❌ | ✔️ | ❌ | ❌ |
TLS 설정 | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
HTTP/2(클라이언트-게이트웨이) | ✔️5 | ✔️5 | ❌ | ✔️ | ❌ |
HTTP/2(게이트웨이-백 엔드) | ❌ | ❌ | ❌ | ✔️ | ❌ |
API용 Defender를 사용하여 API 위협 탐지 | ✔️ | ✔️ | ❌ | ❌ | ❌ |
1 게이트웨이가 배포된 방식에 따라 달라지지만 고객의 책임입니다.
2 자체 호스팅 게이트웨이 v2 구성 엔드포인트에 연결하려면 엔드포인트 호스트 이름의 DNS 확인이 필요합니다.
3 두 영역은 기본적으로 사용하도록 설정되며 구성할 수 없습니다.
4 자체 호스트형 게이트웨이에 대한 CA 루트 인증서는 게이트웨이별로 별도로 관리됩니다.
5 클라이언트 프로토콜을 사용하도록 설정해야 합니다.
백 엔드 API
기능 지원 | 클래식 | V2 | 소비 | 자체 호스팅 | 작업 영역 |
---|---|---|---|---|---|
OpenAPI 사양 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
WSDL 사양 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
WADL 사양 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
논리 앱 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
App Service | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
함수 앱 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Container App | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Service Fabric | 개발자, 프리미엄 | ❌ | ❌ | ❌ | ❌ |
통과 GraphQL | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
가상 GraphQL | ✔️ | ✔️ | ✔️1 | ✔️1 | ❌ |
통과 WebSocket | ✔️ | ✔️ | ❌ | ✔️ | ❌ |
통과 gRPC | ❌ | ❌ | ❌ | ✔️ | ❌ |
OData | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Azure OpenAI | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
백 엔드의 회로 차단기 | ✔️ | ✔️ | ❌ | ✔️ | ✔️ |
부하 분산 장치 백 엔드 풀 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
1 가상 GraphQL 구독(미리 보기)은 지원되지 않습니다.
정책
관리형 및 자체 호스팅 게이트웨이는 다음 예외를 제외하고 정책 정의에서 모든 사용 가능한 정책을 지원합니다.
기능 지원 | 클래식 | V2 | 소비 | 자체 호스팅1 | 작업 영역 |
---|---|---|---|---|---|
Dapr 통합 | ❌ | ❌ | ❌ | ✔️ | ❌ |
GraphQL 확인자 및 GraphQL 유효성 검사 | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
권한 부여 컨텍스트 가져오기 | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
할당량 및 속도 제한 | ✔️ | ✔️2 | ✔️3 | ✔️4 | ✔️ |
1 자체 호스팅 게이트웨이에서 지원하지 않는 구성된 정책은 정책 실행 중에 건너뜁니다.
2 키 정책별 할당량은 v2 계층에서 사용할 수 없습니다.
3 키별 속도 제한, 키별 할당량 및 Azure OpenAI 토큰 제한 정책은 소비 계층에서 사용할 수 없습니다.
4 자체 호스팅 게이트웨이의 속도 제한 수는 예를 들어, Kubernetes용 Helm 차트 배포 또는 Azure Portal 배포 템플릿 사용을 통해 클러스터 노드 전체의 게이트웨이 인스턴스 간에 로컬로 동기화하도록 구성할 수 있습니다. 그러나 속도 제한 수는 클라우드의 관리 게이트웨이를 포함하여 API Management 인스턴스에 구성된 다른 게이트웨이 리소스와 동기화되지 않습니다. 자세한 정보
모니터링
모니터링 옵션에 대한 자세한 내용은 Azure API Management의 가시성을 참조하세요.
기능 지원 | 클래식 | V2 | 소비 | 자체 호스팅 | 작업 영역 |
---|---|---|---|---|---|
API 분석 | ✔️ | ✔️1 | ❌ | ❌ | ❌ |
Application Insights | ✔️ | ✔️ | ✔️ | ✔️2 | ✔️ |
Event Hubs를 통한 로깅 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Azure Monitor의 메트릭 | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
OpenTelemetry Collector | ❌ | ❌ | ❌ | ✔️ | ❌ |
Azure Monitor 및 Log Analytics의 요청 로그 | ✔️ | ✔️ | ❌ | ❌3 | ❌ |
로컬 메트릭 및 로그 | ❌ | ❌ | ❌ | ✔️ | ❌ |
요청 추적 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
1 v2 계층은 Azure Monitor 기반 분석을 지원합니다.
2 Gateway는 Azure 애플리케이션 인사이트의 기본 제공 메모리 버퍼를 사용하며 전송 보장을 제공하지 않습니다.
3 자체 호스팅 게이트웨이는 현재 리소스 로그(진단 로그)를 Azure Monitor로 전송하지 않습니다. 선택적으로 Azure Monitor에 메트릭을 전송하거나 자체 호스팅 게이트웨이가 배포된 위치에서 로컬로 로그를 구성하고 지속할 수 있습니다.
인증 및 권한 부여
관리형 및 자체 호스팅 게이트웨이는 다음 예외를 제외하고 사용 가능한 모든 API 인증 및 권한 부여 옵션을 지원합니다.
기능 지원 | 클래식 | V2 | 소비 | 자체 호스팅 | 작업 영역 |
---|---|---|---|---|---|
자격 증명 관리자 | ✔️ | ✔️ | ✔️ | ❌ | ❌ |
게이트웨이 처리량 및 크기 조정
Important
처리량은 동시 클라이언트 연결의 개수 및 속도, 구성된 정책의 종류 및 개수, 페이로드 크기, 백 엔드 API 성능 및 기타 요인에 의해 영향을 받습니다. 자체 호스팅 게이트웨이 처리량은 또한 실행되는 호스트의 컴퓨팅 용량(CPU 및 메모리)에 따라 달라집니다. 예상된 프로덕션 조건을 사용해서 게이트웨이 부하 테스트를 수행하여 예상 처리량을 정확하게 파악하세요.
관리형 게이트웨이
API Management 서비스 계층에 예상되는 최대 게이트웨이 처리량은 API Management 가격 책정을 참조하세요.
Important
처리량 수치는 정보 제공용으로만 제시되며 용량 및 예산을 계획할 때 여기에 의존해서는 안 됩니다. 자세한 내용은 API Management 가격 책정을 참조하세요.
클래식 계층
- 배율 단위를 추가 및 제거하여 게이트웨이 용량을 조정하거나 서비스 계층을 업그레이드합니다. (개발자 계층에서는 크기 조정이 지원되지 않습니다.)
- 기본, 표준, 프리미엄 계층에서는 선택적으로 Azure Monitor 자동 크기 조정을 구성합니다.
- 프리미엄 계층에서는 선택적으로 여러 지역 간에 게이트웨이 용량을 추가 및 배포합니다.
v2 계층
- 배율 단위를 추가 및 제거하여 게이트웨이 용량을 조정하거나 서비스 계층을 업그레이드합니다.
소비 계층
- 소비 계층의 API Management 인스턴스는 트래픽에 따라 자동으로 크기 조정됩니다.
자체 호스팅 게이트웨이
- Kubernetes와 같은 환경에서는 예상 사용량을 처리하기 위해 다중 게이트웨이 복제본을 추가합니다.
- 선택적으로 트래픽 요구에 맞게 자동 크기 조정을 구성합니다.
작업 영역 게이트웨이
작업 영역 게이트웨이에서 크기 조정 단위를 추가하고 제거하여 용량의 크기를 조정합니다.
관련 콘텐츠
다음을 자세히 알아봅니다.
- 하이브리드 및 다중 클라우드 세계의 API Management
- 크기 조정 결정을 위한 용량 메트릭
- API Management의 가시성 기능
- API Management의 GenAI 게이트웨이 기능