Cloud Endpoints 정보

Endpoints는 분산형 API 관리 시스템입니다. 이 시스템은 API를 생성, 공유, 유지관리, 보호하는 데 유용한 API 콘솔, 호스팅, 로깅, 모니터링, 기타 기능을 제공합니다. 이 페이지는 OpenAPI에 대한 Cloud Endpoints 개요를 설명합니다. Endpoints에서 지원되는 다른 유형의 API 프레임워크에 대한 자세한 내용은 모든 Endpoints 문서를 참조하세요.

Endpoints는 가장 까다로운 API도 처리할 수 있도록 분산형 Extensible Service Proxy(ESP)를 사용하여 짧은 지연 시간과 고성능을 제공합니다. ESP는 NGINX 기반 서비스 프록시이므로 API에 대한 동시 요청을 처리할 수 있도록 필요에 맞게 확장할 수 있습니다. ESP는 격리 및 확장성이 향상될 수 있도록 고유 Docker 컨테이너에서 실행되며 Container Registry에 분산되어 있습니다. App Engine 가변형, Google Kubernetes Engine(GKE), Compute Engine 또는 Kubernetes와 함께 사용할 수 있습니다.

Endpoints 아키텍처

Endpoints는 서비스 인프라를 사용하여 API를 관리하고 로그와 측정항목을 보고합니다. 대부분의 Google Cloud API에서는 이와 동일한 인프라를 사용합니다. Google Cloud ConsoleEndpoints 서비스 페이지에서 API를 관리하고 모니터링할 수 있습니다.

API 호스팅

Endpoints는 Docker 컨테이너 환경에 최적화되어 있습니다. 인터넷에서 Google Cloud에 액세스할 수 있는 한 Docker가 지원되는 모든 위치에서 API를 호스팅할 수 있습니다.

하지만 Endpoints는 다음 위치에서 API를 실행하도록 최적화된 워크플로를 제공합니다.

  • Compute Engine
  • GKE
  • 기본 제공되는 ESP가 포함된 App Engine 가변형 환경

OpenAPI용 Endpoints로 REST API 개발

Endpoints는 언어에 독립적입니다. API 기술을 지원하는 모든 언어 및 REST 프레임워크에서 OpenAPI 구성 파일을 사용하여 API를 빌드할 수 있습니다.

OpenAPI용 Endpoints를 사용하는 방법은 다음과 같습니다.

  • Endpoints 구성: OpenAPI 구성 파일에서 API 노출 영역을 기술하고 Endpoints 기능(예: API 키 또는 인증 규칙)을 구성합니다.

  • Endpoints 구성 배포: OpenAPI 구성 파일에서 API를 정의한 후 Cloud SDK를 사용하여 Service Management에 배포합니다. Endpoints는 Service Management를 사용하여 API를 관리합니다. 이렇게 하면 Endpoints가 API에 대한 모든 정보와 보호 방법을 알게 됩니다.

  • API 백엔드 배포: 지원되는 Google Cloud 백엔드(예: Compute Engine)에 ESP 및 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 사용 방법을 자세히 알아봅니다.