데이터 테이블 생성
사용되는 서비스 : Amazon DynaonDB, AWS IAM, AWS Lambda
Amazon DynamoDB를 사용하여 데이터를 유지하는 테이블을 생성합니다. DynamoDB는 키-값 데이터베이스 서비스이므로 데이터의 스키마를 생성할 필요가 없습니다. 규모에 관계없이 일정한 성능을 제공하며 사용 시에 서버를 관리할 필요가 없습니다.
AWS Identity and Access Management(IAM) 서비스를 사용하여 서비스가 서로 상호 작용하는 데 필요한 권한을 안전하게 부여합니다. 구체적으로 설명하자면, 모듈 2에서 생성한 Lambda 함수가 새로 생성된 DynamoDB 테이블에 데이터를 쓸 수 있도록 IAM 정책을 통해 허용합니다. 이렇게 하기위해서 Lambda함수에서 SDK(python, Javascript, java)를 사용해야한다.
1. DynamonDB 테이블 생성
- Amazon DynamonDB 콘솔 접속
- 테이블 생성 및 리전 확인
- 테이블 이름, 기본키(파티션키) 입력
- Amazon 리소스 이름(ARN) 복사.
2.IAM 정책을 생성하여 Lambda 함수에 추가
- AWS Lambda콘솔 열기, 함수 클릭
- 권한 탭에 함수이름으로 된 링크 클릭(새 탭으로 이동)
- Lambda 함수가 항목을 읽거나 편집하거나 삭제할 수 있도록 하지만, 여기서 생성한 테이블에 대해서만 해당 작업을 수행할 수 있도록 제한합니다.
- DynamonDB에서 얻은 ARN을 Resource에 입력한다.
- 이름 입력
- 현재 탭 닫고 Lambda 함수 탭으로 이동
3.DynamoDB 테이블에 데이터를 쓰도록 Lambda 함수 수정
- Lambda 함수 수정
4.변경 사항 테스트
- DynamoDB콘솔에 테이블으로 이동
- Lambda 함수가 실행될 때마다 DynamoDB 테이블이 업데이트됩니다. 같은 이름을 사용할 경우 타임스탬프만 변경됩니다.
현재 아키텍처
이 모듈에서는 스토리지를 지원하는 DynamoDB 서비스와 권한을 안전하게 관리하기 위한 IAM 서비스라는 두 가지 서비스를 추가했습니다. 두 서비스 모두 데이터베이스에 데이터를 쓸 수 있도록 Lambda 함수에 연결됩니다. 마지막 단계로, API Gateway를 호출하는 코드를 클라이언트에 추가합니다. |
*서비스 및 인스턴스는 사용하지 않으면 중지 및 삭제 한다. (과금발생방지)
'IT > 클라우드' 카테고리의 다른 글
Cloud :: 클라우드 (0) | 2020.06.15 |
---|---|
[AWS] #5 기본 웹 애플리케이션 구축 (0) | 2020.06.10 |
[AWS] #3 기본 웹 애플리케이션 구축 (0) | 2020.06.10 |
[AWS] #2 기본 웹 애플리케이션 구축 (0) | 2020.06.10 |
[AWS] #1 기본 웹 애플리케이션 구축 (0) | 2020.06.10 |