반응형

Code 8

AWS EC2 인스턴스 인바운드 IP 제한 상태에서 Github Action 배포

AWS EC2 인스턴스 인바운드 보안 설정 상태에서 Github Action 배포 자동화하기 일단 먼저 인스턴스를 만드는 방법이 궁금하신 분들은 AWS 프리티어 인스턴스 만들기 에 자세하고 쉽게 설명해놨으니 살펴보시면 됩니다. 인바운드 규칙이란? EC2 인스턴스는 누구나 접근 가능한 public IP를 부여받습니다. 하지만 모두가 접속할 수 있다면, 해커들로 인해 소중한 인스턴스가 너덜너덜 해지겠죠. 그래서 생성한 인스턴스에 접근할 수 있는 인바운드 규칙을 설정하게 됩니다. 집, 회사 컴퓨터 IP만 인바운드 규칙을 열어놓으면, 집과 회사에서만 인스턴스에 접근할 수 있죠. RDS 보안그룹에서 인바운드 규칙을 설정하는 것도 같은 맥락입니다. 주로 RDS의 인바운드 규칙은 서버 인스턴스의 IP만 허용해놓는 경..

Code 2023.01.05

Foowinkle MVP앱 개발 기록: 개발(2)

시장에 있는 고객들에게 서비스로 배포하기 위해서는 클라우드 서비스를 활용하여 서버를 상시 가동시켜야만 합니다. 실제 회사에서는 어떤 클라우드 서비스를 활용할지 비용, 성능 등 다양한 기준으로 비교해보아야 하지만 저는 클라우드 관련 경험이나 지식이 없었기 때문에 가장 많이 활용되고 있고 관련 자료도 많은 아마존 웹서비스를 활용하기로 했습니다. 그리고 후일 다른 개발자분께서 합류하시면 AWS가 익숙할 확률이 높기 때문에 AWS 안에서 클라우드 서버를 모두 구축하였습니다. AWS에서 활용한 서비스는 다음과 같습니다. 새로 계정을 만들어 프리티어 한도 안에서 활용하였습니다. 1. RDS (관계형 데이터베이스) - Mysql 2. EC2 - t2.micro 3. 로드밸런서 (설정만 하고 활용은 하지 않음) 4. ..

Code 2022.08.15

AWS 프리티어 평생 쓰기 - Migration 시리즈 3. RDS 이전

프리티어 계정을 새로 만들면 기존에 있던 RDS도 이전해야한다. 기존 RDS에서 DB 스냅샷을 만들고 이를 새로운 계정으로 공유하여 이전하면 된다. 기존 계정의 RDS 에서 스냅샷 메뉴로 들어간다. 스냅샷 생성 클릭 기다렸다가 스냅샷 생성이 완료되면, 스냅샷 공유 클릭 private 로 설정하고 AWS 계정 ID 입력 (계정 ID 는 AWS 우측 상단 메뉴에 있다.) 이제 새롭게 만든 계정(RDS를 이전 받을 대상)으로 로그인하여 RDS 메뉴에 들어간다. 스냅샷 -> 나와 공유됨 클릭 작업 토글 버튼을 클릭하고 스냅샷 복원 버튼을 누르면 스냅샷과 동일한 RDS 를 생성할 수 있게 된다. 프리티어 계정에서 무료로 사용하기 위해선 용량 20GB, t3.micro 사양으로 설정해야한다.

Code 2022.08.15

AWS 프리티어 평생 쓰기 - Migration 시리즈 2. 로드밸런서를 통해 https 적용하기

AWS에서 ssl 인증서를 발급받으면 도메인에 https://~ 로 접속할 수 있다. AWS에서 무료로 ssl 인증서를 발급받고 대상그룹과 로드밸런서를 생성한 뒤 http -> https 로 자동 리다이렉션 되도록 설정하는 것까지 다뤄보려한다. ssl 인증서 발급 ssl 인증서는 AWS의 certificate manager 에서 발급받을 수 있다. 인증서 요청 클릭 퍼블릭 인증서 요청 완전히 정규화된 도메인 이름: *.example.com 입력 (인증서 적용하고자 하는 도메인) DNS 검증 선택 태그는 입력할 필요는 없음. AWS에서 도메인을 구입한 경우, AWS 로 도메인을 이전한 경우는 레코드 생성 버튼을 누르면 Route53 에 자동으로 CNAME 이름과 값이 등록되어 인증이 완료된다. 하지만 na..

Code 2022.08.15

AWS 프리티어 평생 쓰기 - Migration 시리즈 1. 도메인 이전

MVP 개발을 위해 만들었던 프리티어 계정이 벌써 1년이 다 되어간다. 그리고 동시에 구입했던 도메인도 1년이 지나 갱신할 때가 되었다. 가비아에서 구입했던 도메인도 첫 1년은 500원이지만 연장하려면 5만원 이상 들기 때문에 도메인을 이전하기로 결정했다. 프리티어 계정도 AWS 계정만 하나 더 만들면 되기 때문에 굳이 비용을 지불하면서 현재 계정을 유지할 필요가 없다. 약간의 귀찮음만 극복한다면 마이그레이션은 나쁘지 않은 선택이다. 하지만 좀 많이 귀찮다. 이전해야(새로 만들어야)할 것들 1. 도메인 2. EC2 인스턴스 3. ssl, 로드밸런서 4. RDS 5. S3 6. CD - Github Action 이번 포스팅은 도메인 이전 과정을 적어보려 한다. Git-hub 학생 계정을 활용하면 name...

Code 2022.08.15

Mysql 워크벤치에서 AWS RDS 연결하기

1) RDS 인바운드 규칙 편집 로컬에서 RDS에 접근하기 위해서는 RDS의 보안그룹에 로컬 IP를 추가해 주어야 합니다. 인바운드 규칙은 밖에서 우리의 RDS에 접근할 수 있는 IP를 지정하는 것이고 아웃바운드는 RDS가 접근 할 수 있는 IP를 지정하는 것입니다. 우리는 로컬에서 RDS에 접근하고자 하므로 인바운드 규칙을 편집해줍니다. 인바운드 규칙 편집을 눌렀으면, Mysql/Aurora 타입을 선택하고, 소스 탭에서 내 IP를 선택합니다. 보안을 위해 모든 트래픽을 허용해주는 기본 설정은 삭제해줍니다. (삭제 안 해도 연결하는데 지장은 없습니다.) 2) Mysql 워크벤치에서 새 연결 설정 메인 화면에서 + 버튼을 클릭해줍니다. RDS에 연결하기 위해 채워야하는 칸들입니다. Connection N..

Code 2022.03.28

AWS 프리티어 RDS 만드는 방법

AWS EC2 인스턴스를 생성했다면, AWS RDS를 통해 클라우드 데이터베이스를 구축할 수 있습니다. 1) 데이터베이스 생성 상단 검색 창에서 RDS를 검색하여 RDS 대시보드에 들어가 데이터베이스 생성 버튼을 클릭합니다. 2) 데이터베이스 종류 선택 저는 Mysql을 선택하겠습니다. 활용할 DB를 선택하면 되겠습니다. 3) 템플릿 4) 설정 DB인스턴스 식별자와 이름, 비밀번호를 설정합니다. 이들 모두 EC2인스턴스에서 DB에 접근할 때에 DB의 환경변수로 활용됩니다. (.env 파일에서) 5) DB인스턴스 클래스와 스토리지 설정 위에서 프리티어 템플릿을 선택했을 경우 db.t3.micro 와 20GB 스토리지가 기본 값으로 설정됩니다. 그대로 선택하도록 하겠습니다. 6) 퍼블릭 엑세스 허용 저는 로..

Code 2022.03.28

AWS 프리티어 EC2 인스턴스 만드는 방법

AWS 프리티어 EC2 인스턴스 만드는 방법 내 컴퓨터에서 돌아가는 서버는 외부에서 접근할 수 없습니다. 24시간 켜둘 수도 없기 때문에, 항상 켜져있고 어디서나 접근 가능한 클라우드 서비스를 이용해야합니다. 대표적인 클라우드 플랫폼인 AWS에서 EC2 인스턴스를 만드는 방법부터 설명하겠습니다. AWS는 계정 생성 후 1년 동안 일정 무료 사용량을 제공하는 프리티어 서비스를 제공합니다. 1) AWS 계정 생성 개인정보와 결제 카드 등을 등록해서 가입하면 됩니다. 인당 1계정 제한이 없으니 프리티어 기간이 끝났다면 다른 이메일로 가입하면 됩니다. 2) 인스턴스 시작 메인 화면에서 EC2 서비스를 클릭하거나, 상단 검색 메뉴에서 EC2를 검색하면 다음과 같은 대시보드를 볼 수 있습니다. 인스턴스 시작 버튼을..

Code 2022.03.28
반응형