Amazon API Gateway
개발자 안내서

Amazon API Gateway에서 REST API 배포

API를 생성한 후, 사용자가 호출할 수 있도록 배포해야 합니다.

API를 배포하려면 API 배포를 생성해 단계에 연결합니다. 각 단계는 API의 스냅샷이며 클라이언트 앱이 호출할 수 있습니다.

중요

라우팅, 메서드, 통합, 권한 부여자 및 단계 설정 이외의 일체의 수정이 포함된 API를 업데이트할 때마다 기존 단계 또는 새 단계에 API를 다시 배포해야 합니다.

API가 개선됨에 따라 다른 단계에 다른 API 버전으로 계속 API를 배포할 수 있습니다. API 업데이트를 canary 릴리스 배포로 배포하여 API 클라이언트가 같은 단계에서 프로덕션 릴리스를 통해 프로덕션 버전에 액세스하고, 업데이트된 버전에는 canary 릴리스를 통해 액세스하도록 할 수도 있습니다.

배포된 API를 호출하기 위해 클라이언트는 API의 URL에 대해 요청을 제출합니다. 이 URL은 API의 프로토콜(HTTP(S) 또는 (WSS)), 호스트 이름, 단계 이름, 리소스 경로(REST API에 대한)에 의해 결정됩니다. 호스트 이름과 단계 이름은 API의 기본 URL을 결정합니다.

API의 기본 도메인 이름을 사용하면 지정된 단계({stageName})의 REST API 기본 URL은 다음 형식이 됩니다.

https://{restapi-id}.execute-api.{region}.amazonaws.com/{stageName}

API의 기본 URL을 사용자에게 더욱 친숙하게 만들려면 사용자 지정 도메인 이름(예: api.example.com)을 생성하여 API의 기본 호스트 이름을 대체할 수 있습니다. 사용자 지정 도메인 이름 아래서 여러 API를 지원하려면 API 단계를 기본 경로에 매핑해야 합니다.

{api.example.com}의 사용자 지정 도메인 이름과 사용자 지정 도메인 이름 아래의 기본 경로({basePath})에 매핑된 API 단계를 사용하면 기본 REST API URL은 다음과 같이 됩니다.

https://{api.example.com}/{basePath}

각 단계에 대해 기본 계정 수준 요청 조절 한도를 조정하고 API 캐싱을 활성화하여 API 성능을 최적화할 수 있습니다. 또한 CloudTrail 또는 CloudWatch에 대한 API 호출 로깅을 활성화하고 백엔드에서 API 리소스를 인증하기 위한 클라이언트 인증서를 선택할 수 있습니다. 또한 개별 메서드에 대해 단계 수준 설정을 재정의하고 런타임에 단계별 환경 컨텍스트를 API 통합에 전달하도록 단계 변수를 정의할 수 있습니다.

단계를 통해 API의 강력한 버전 관리가 가능합니다. 예를 들어 API를 test 단계와 prod 단계에 배포하고, test 단계를 테스트 빌드로, prod 단계를 안정적 빌드로 사용할 수 있습니다. 업데이트가 테스트를 통과한 후 test 단계를 prod 단계로 승격할 수 있습니다. 승격은 API를 prod 단계에 재배포하거나 단계 변수 값을 test의 단계 이름에서 prod의 단계 이름으로 업데이트하면 가능합니다.

이 단원에서는 API Gateway 콘솔을 사용하거나 API Gateway REST API를 호출하여 API를 배포하는 방법을 설명합니다. 다른 도구를 사용하여 동일한 작업을 수행하려면, 예를 들어 AWS CLI 또는 AWS SDK의 설명서를 참조하십시오.