공부/AWS(25)
-
[AWS] public subnet에 EC2, private subnet에 RDS 인스턴스 생성하기 (1)
이번 포스팅에서는 public subnet에 EC2 인스턴스를 생성하고 privatet tsubnet에 RDS 인스턴스를 생성해서 통신할 예정이다. 다음 다이어그램은 우리가 만들 aws 아키텍처이다. EC2는 인터넷 게이트웨이와 연결해서 외부와 통신이 가능하게하고 RDS는 privte subnet에 두고 EC2 인스턴스에서만 접근할 수 있도록 설정할 예정이다. 기본 설정들을 사용하면 쉽게 만들 수 있겠지만 하나하나 직접 만들어보려고 한다. 이번 포스팅에서 public subnet과 EC2를, 다음 포스팅에서 private subnet과 RDS를 만들어보려고 한다. 1. VPC 생성 VPC에서 VPC 생성을 클릭한다. IPv4 CIDR은 10.0.0.0/16로 설정해두고 IPv6 CIDR은 "없음"을 선택..
2023.05.02 -
[AWS][Spring] Amazon Lex 스프링 부트에 배포하기 (2)
https://growth-coder.tistory.com/152 이전 포스팅에서 간단하게 날씨와 미세먼지를 알려주는 Amazon Lex 챗봇을 만들어보았다. 물론 람다를 연결하지 않았기 때문에 실제로 동작하지는 않고 단지 의도를 분류해내는 수준이다. 우선 스프링부트로 배포를 해보고 람다를 연결해서 실제로 동작하게끔 해보려 한다. 우선 스프링이 Lex에 접근할 수 있도록 IAM 사용자를 만들어야 한다. IAM -> 사용자에서 사용자를 추가한다. 다음과 같이 설정을 한다. 직접 정책 연결을 선택한다. AmazonLexFullAccess 정책을 검색해서 선택하고 다음으로 넘어간다. 사용자 목록을 돌아간다. 생성한 사용자에 들어가서 보안 자격 증명에 들어간다. 아래로 내려보면 액세스 키 만들기가 있다. 선택한..
2023.04.17 -
[AWS][Lex] Amazon Lex 사용해서 챗봇 구현하기 (1)
aws 서비스 중 Amazon Lex라는 서비스는 손쉽게 챗봇을 구현할 수 있도록 도와준다. 이 Lex를 사용해서 간단한 챗봇 기능을 구현해보려 한다. 프리 티어 계정을 사용할 예정이고 다음과 같은 제한 아래에서 무료로 사용할 수 있다. Amazon Lex 구성 요소 우선 Amazon Lex의 구성 요소부터 알아야 한다. Amazon Lex의 구성 요소는 의도, 발화, 슬롯, 이행 4가지로 나뉜다. 날짜와 지역의 날씨를 물어볼 경우를 예시로 구성 요소를 살펴보려 한다. 의도 (Intents) : 사용자의 입력이 어떠한 의도를 가졌는지 ex) 날씨를 알고 싶어한다. 발화 (Utterances) : 문장 ex) 오늘 서울 날씨 알려줘, 내일 서울 날씨 어떄? 슬롯 (Slots) : 수행할 때 필요한 정보 e..
2023.04.13 -
[AWS] 프리티어 계정 Elastic Compute Cloud 요금 발생
4월 3일 아침에 한 문자를 받고 일어났다. 바로 AWS에서 4만원 정도의 요금이 청구되었다는 문자였다. 비몽사몽한 상태였는데 이 문자를 받자마자 놀라서 바로 일어나 확인을 했다. AWS 계정에 접속한 후 billing 서비스에서 들어가서 어디에서 요금이 발생했는지 확인했다. 요금이 발생한 서비스는 Elastic Compute Cloud, 자세히는 NAT Gateway와 Elastic IP Addresses에서 발생했다. NAT Gateway 일단 내 기억에는 NAT gateway를 사용한 적이 없었는데 자세히 생각해보니 AWS 실습 시간에 어렴풋이 NAT gateway를 사용했던 기억이 있었다. 그 당시 나는 그냥 "EC2만 꺼두면 요금이 발생하지 않겠지"라고 생각을 했는데 그 때 연결했던 NAT ga..
2023.04.09 -
[AWS][Lambda] API gateway - Lambda - rds 연동 (4)
https://growth-coder.tistory.com/149 이전 포스팅에서 Lambda와 rds를 연동해서 간단한 회원가입 코드를 만들어보았다. 그런데 아직 외부 자바스크립트나 postman을 통해서 이 함수를 실행할 수는 없다. 이를 위해서는 API gateway를 연결해서 API를 배포해야한다. https://growth-coder.tistory.com/148 Lambda와 API gateway를 연결하는 것은 이전 포스팅과 거의 동일하지만 복습 차원에서 한 번 더 해보려한다. API gateway에 접속해서 API 생성을 누른다. 4가지 유형 중 3번째 REST api를 선택한다. 이름을 정하고 생성한다. 리소스 생성을 누른다. 외부에서 접속할 수 있어야 하므로 CORS 활성화를 체크하고 경..
2023.04.08 -
[AWS][Lambda] Lambda와 RDS 연동하기 (3)
https://growth-coder.tistory.com/148 이전 포스팅에서 Lambda와 API gateway를 사용하여 api를 배포하는 것을 배워보았다. 이번 시간에는 RDS를 연동하여 Lambda 함수에서 mysql 데이터베이스에 접근하는 방법에 대해서 공부해보려고 한다. 언어는 파이썬을 사용할 예정이다. 우선 AWS로 로그인을 하고 RDS 콘솔창에 들어간다. 좌측 메뉴의 데이터베이스 -> 데이터베이스 생성으로 들어간다. 표준 생성, mysql을 선택한다. 템플릿은 프리 티어를 선택한다. 사용자 이름과 암호를 작성한다. 나는 그냥 암호 자동 생성을 선택했지만 원하는 암호를 직접 적어도 된다. 그리고 하단에 추가 구성이 있는데 초기 데이터베이스 이름을 설정해야 한다. 나는 practice라고 ..
2023.04.06