수업을 듣고 배운 내용과 연습한 내용을 정리하였습니다
개인 공부 후 자료를 남기기 위한 목적임으로 내용 상에 오류가 있을 수 있습니다.
잘못된 부분이 있거나 질문사항은 댓글로 남겨주시면 성심성의껏 답변해드리겠습니다. 감사합니다!
교재 <당신이 지금 알아야 할 AWS - 이영호, 한동수 지음>를 토대로 실습을 진행하였습니다.
* 실습요약
1. 번역 API 게이트웨이용 람다 함수 생성
A. 람다 함수 생성(람다 함수 이름 : lambda_for_translate_service)
B. 람다 함수 실행 역할 생성(람다 역할 이름 : role_for_translate_service)
2. 람다 함수 소스코드 작성
3. 람다 함수 역할 수정
A. 정책 생성 및 검토(정책 이름 : role_for_translate_service)
B. 기존 관리형 정책 선택(TranslateFullAccess)
4.람다 API 게이트웨이 설정
5. index.html 파일 수정 및 S3 버킷 생성
6. S3 버킷에 수정파일 업로드
7. 번역 서비스 정적 웹 사이트 설정 및 테스트
* Amazon Translate 란?
1) API 게이트웨이용 람다 함수 생성
Lambda > 함수 생성 > 함수 이름 : lambda_for_translate_service > 런타임 : Node.js 14.x > AWS 정책 템프릿에서 새 역할 생성 > 역할 이름 : role_for_translate_service > 정책 템플릿 : 기존 Lambda@Edge 권한 > 함수 생성
2) 람다 함수 소스코드 작성
위 예제 소스는 우리가 POST 형식으로 전달한 데이터를 Translate 서비스를 통해 번역한 후 리턴한 소스코드입니다.
3) 람다 함수 역할 수정
lambda_for_translate_service 의 권한에서 역할 이름을 클릭하여 "TranslateFullAccess" 정책을 연결해줍니다.
4) 람다 함수 API 게이트웨이 설정
트리거 추가 > API 생성 > HTTP API > 보안 : 열기
성공적으로 API 게이트웨이가 추가되었습니다.
홈페이지를 통해 서비스를 만들면, 데이터를 요청할 주소가 필요합니다. 이와 같은 기능을 하는 API 엔드포인트를 잘 기록합니다.
5) 파일 수정 및 버킷 생성
index.html 파일을 열어 32번째 라인 URL 주소를 방금 전 엔드포인트 URI로 수정합니다.
이제 버킷을 생성해보겠습니다. 이름과 리전만 수정하고 나머지는 기본값으로 둔 채 버킷을 생성합니다.
6) S3 버킷 수정 파일 업로드
index.html 파일을 업로드합니다.
버킷의 퍼블릭 설정을 해제합니다.
index.html 의 ACL을 모든 사람에게(퍼블릭) 허용합니다.
7) 번역 서비스 정적 웹 사이트 설정 및 테스트
정적 웹 사이트 호스팅을 활성화해주고 인덱스 문서에 index.html 을 입력합니다.
다시 정적 웹사이트 호스팅을 클릭하면 번역 사이트가 뜨게 됩니다.
"안녕하세요"를 작성했을 때 "Hallo" 로 번역되는 것을 확인할 수 있습니다.
지금까지 실습을 정리하면, S3로 호스팅한 웹 사이트에서 POST 방식으로 API 게이트웨이를 통해 람다로 전달해보았습니다. 람다 함수에서 AWS Translate 서비스를 통해 번역 후 다시 사용자에게 번역된 텍스트를 응답해보았습니다.
'클라우드 > AWS' 카테고리의 다른 글
Beanstalk 기반 초대장 이메일 받기 서비스 (0) | 2021.02.18 |
---|---|
AWS Beanstalk 개념과 이해 (0) | 2021.02.18 |
API 게이트웨이와 데이터베이스(GET) (0) | 2021.02.17 |
마이크로서비스의 개념과 이해 (0) | 2021.02.17 |
Lambda 함수 기반 AWS 지출 요금 모니터링 (0) | 2021.02.17 |
댓글