Endpoints는 분산형 API 관리 시스템입니다. 이 시스템은 API를 생성, 공유, 유지관리, 보호하는 데 유용한 API 콘솔, 호스팅, 로깅, 모니터링, 기타 기능을 제공합니다. 이 페이지는 OpenAPI에 대한 Cloud Endpoints 개요를 설명합니다. Endpoints에서 지원되는 다른 유형의 API 프레임워크에 대한 자세한 내용은 모든 Endpoints 문서를 참조하세요.
Endpoints는 분산형 Extensible Service Proxy(ESP) 또는 Extensible Service Proxy V2(ESPv2)와 함께 사용할 수 있습니다. 각 프록시는 아래에 설명된 플랫폼에 지원을 제공합니다.
- App Engine 가변형(ESP만 해당)
- Google Kubernetes Engine(ESP 또는 ESPv2)
- Compute Engine(ESP 또는 ESPv2)
- Kubernetes(ESP 또는 ESPv2)
- App Engine 표준(ESPv2만 해당)
- Cloud Run 함수(ESPv2만 해당)
- Cloud Run(ESPv2 전용)
- Knative serving(ESPv2만 해당)
ESP를 사용하는 Endpoints
Endpoints는 가장 까다로운 API도 처리할 수 있도록 분산형 Extensible Service Proxy(ESP)를 사용하여 짧은 지연 시간과 고성능을 제공합니다. ESP는 NGINX 기반 서비스 프록시이므로 API에 대한 동시 요청을 처리할 수 있도록 필요에 맞게 확장할 수 있습니다. ESP는 격리 및 확장성이 향상될 수 있도록 고유 Docker 컨테이너에서 실행되며 Container Registry에 분산되어 있습니다. 다음과 함께 사용할 수 있습니다.
ESPv2를 사용하는 Endpoints
ESPv2는 OpenAPI 또는 gRPC API 백엔드 앞에서 실행되는 확장 가능한 Envoy 기반 고성능 프록시입니다. ESPv2는 OpenAPI 사양 및 gRPC 사양 버전 2를 지원합니다. 다음과 함께 사용할 수 있습니다.
- App Engine 표준 환경
- Compute Engine
- Google Kubernetes Engine
- Kubernetes
- Cloud Run
- Knative serving
- Cloud Run 함수
Endpoints API 관리 기능
Endpoint를 ESP 또는 ESPv2와 함께 사용하면 API 액세스를 개발, 모니터링, 제어할 수 있는 다양한 API 관리 기능을 제공합니다.
로그 및 측정항목
Endpoints는 서비스 인프라를 사용하여 API를 관리하고 로그와 측정항목을 보고합니다. 대부분의 Google Cloud API에서는 이와 동일한 인프라를 사용합니다. Google Cloud Console의 Endpoints 서비스 페이지에서 API를 관리하고 모니터링할 수 있습니다.
API 호스팅
Endpoints는 Docker 컨테이너 환경에 최적화되어 있습니다. 인터넷에서 Google Cloud에 액세스할 수 있는 한 Docker가 지원되는 모든 위치에서 API를 호스팅할 수 있습니다.
OpenAPI용 Endpoints로 REST API 개발
Endpoints는 언어에 독립적입니다. API 기술을 지원하는 모든 언어 및 REST 프레임워크에서 OpenAPI 구성 파일을 사용하여 API를 빌드할 수 있습니다.
OpenAPI용 Endpoints를 사용하는 방법은 다음과 같습니다.
Endpoints 구성: OpenAPI 구성 파일에서 API 노출 영역을 기술하고 Endpoints 기능(예: API 키 또는 인증 규칙)을 구성합니다.
Endpoints 구성 배포: OpenAPI 구성 파일에서 API를 정의한 후 Google Cloud CLI를 사용하여 Service Management에 배포합니다. Endpoints는 Service Management를 사용하여 API를 관리합니다. 이렇게 하면 Endpoints가 API에 대한 모든 정보와 보호 방법을 알게 됩니다.
API 백엔드 배포: 지원되는 Google Cloud 백엔드(예: Compute Engine)에 ESP 또는 ESPv2 및 API 백엔드를 배포합니다. ESP는 Endpoints 백엔드 서비스와 연계하여 런타임에 API를 보호하고 모니터링합니다.
API 액세스 제어
Endpoints를 사용하면 모든 호출에 API 키가 필요하도록 API를 구성하고 API 키를 검증할 수 있습니다. 또한 다른 개발자가 내 API를 사용 설정하고 API 키를 생성하여 이를 호출할 수 있도록 Google Cloud Console을 통해 다른 개발자와 API를 공유할 수도 있습니다.
API 사용자 인증
대부분의 API 호출의 경우, 각 호출의 반대 쪽에 사용자가 있습니다. API 키는 API를 호출하는 앱을 나타내고 인증 프로세스는 앱을 사용 중인 사용자를 결정합니다.
API 서버는 인증된 사용자가 API를 통해 무엇을 수행할 수 있는지를 결정해야 합니다. 자세한 내용은 Google Cloud 인증 가이드를 참조하세요.
다음 단계
Endpoints 빠른 시작을 수행하여 배포 단계를 살펴보고 지원되는 Endpoints 기능을 확인합니다. 여기에서는 스크립트를 사용하여 샘플 API를 App Engine 가변형 백엔드에 배포합니다.
가이드 중 하나를 수행하여 Endpoints 사용 방법을 자세히 알아봅니다.