안녕하세요
이번 시간에는 AWS API Gateway에 대해 알아보고 간단한 HTTP API 실습을 진행해 보겠습니다.
1. API Gateway 란?
API Gateway는 클라이언트 애플리케이션에서 백엔드 서비스로의 요청을 전달하는 데 사용되는 Amazon Web Services(AWS)의 관리형 서비스입니다. API Gateway를 사용하면 RESTful API 및 WebSocket API를 쉽게 작성, 배포, 유지 관리할 수 있으며, 다양한 백엔드 서비스 및 프로토콜에 대한 지원을 제공합니다.
2. API Gateway 장점
1. 관리형 서비스
AWS가 서비스의 배포, 확장, 유지 관리, 보안 및 모니터링을 처리합니다. 이를 통해 API Gateway를 사용하여 API를 배포하고 관리하는 데 필요한 인프라 및 리소스를 관리할 필요가 없습니다.
2. 다양한 프로토콜 지원
API Gateway는 HTTP, WebSocket 및 AWS Lambda를 통한 서버리스 백엔드 지원과 같은 다양한 프로토콜을 지원합니다. 이를 통해 사용자는 서버리스 애플리케이션 및 다른 AWS 서비스에 쉽게 연결할 수 있습니다.
3. 확장성
API Gateway는 사용량에 따라 자동으로 확장되므로, 고객이 필요한 모든 규모에 대해 확장 가능합니다.
4. 보안
API Gateway는 SSL/TLS 암호화, IAM(Identity and Access Management) 기반 권한 부여, AWS WAF(Web Application Firewall) 및 클라이언트 인증 등 다양한 보안 기능을 제공하여, API의 보안을 유지합니다.
5. 모니터링 및 분석
API Gateway는 요청 및 응답을 모니터링하고 로그를 생성합니다. 이를 통해 API의 사용량, 성능, 문제 및 트랜잭션을 쉽게 추적할 수 있습니다.
API Gateway를 사용하면, 사용자는 인프라 관리, 확장성, 보안, 모니터링 및 분석과 같은 문제를 다루지 않고도 API를 쉽게 작성하고 배포할 수 있습니다.
3. API Gateway HTTP API 실습하기
AWS 콘솔에서 API Gateway를 검색한 후 선택합니다.
우측 상단 [API 생성] 버튼을 선택합니다.
API 유형으로 HTTP API, WebSocket API, REST API가 있지만 [HTTP API 구축]을 선택합니다.
API 이름을 지정한 후 [다음]을 눌러줍니다.
통합을 설정하지 않았기 때문에 [다음]을 눌러줍니다.
[다음]을 눌러 넘어갑니다.
[생성]을 눌러 HTTP API를 생성합니다.
Lambda 함수를 동작시킬 API 경로를 지정합니다. [Routes] - [Create]를 눌러줍니다.
다음과 같이 메서드는 GET으로 선택한 후 [생성]을 눌러줍니다.
다음과 같이 경로가 생성된 것을 확인할 수 있습니다.
이렇게 API 게이트웨이를 통해 GET 방식으로 접근했을 때 hyukLambda라는 함수가 동작하게 끔 하려고 합니다.
API Gateway에서 [Routes] - [GET] - [통합 연결]을 선택한 후 만들어둔 Lambda 함수와 연결합니다.
다음과 같이 hyukAPI URL을 호출하여 도메인에 접속합니다.
그러면 Lambda 실행 값이 정상적으로 표시되는 것을 확인할 수 있습니다.
이번 시간에는 AWS API Gateway에 대해 알아보고 간단한 HTTP API 실습을 진행했습니다.
감사합니다.
'Cloud > Amazon Cloud' 카테고리의 다른 글
[AWS] API Gateway REST API를 이용해 POST 메서드 실습하기 (1) | 2023.04.27 |
---|---|
[AWS] API Gateway REST API에 대해 알아보고 GET 메서드 실습하기 (0) | 2023.04.27 |
[AWS] AWS Lambda에 대해 알아보고 Python 외부 모듈 적용하기 (0) | 2023.04.26 |
[AWS] AWS SAM을 이용한 로컬 환경에서 Lambda-MySQL 연동하기 (0) | 2023.04.25 |
[AWS] AWS CLI에 대해 알아보고 설치 및 IAM 생성 후 기본 설정하기 (0) | 2023.04.25 |
클라우드, 개발, 자격증, 취업 정보 등 IT 정보 공간
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!