AWS EC2로 배포 이해하기

0

TIL

목록 보기
190/195

지금까지 배포는 몇번 해봤지만 설정 값과 과정에 대한 이해가 부족하다고 생각해 정리해보기로했다.

https://aws.amazon.com


1. 접근하기

AWS에 접속해 로그인하고, 좌측 상단 검색창에 EC2를 검색하여 들어간다.

지역(Region)서울로 선택한다.

Region : 각각의 인프라를 지리적으로 나누어 배포한 데이터 센터
즉, 내가 빌릴 원격 컴퓨터의 위치를 의미하므로 주된 사용자들의 위치와 가까운 리전을 선택하는 것이 좋다.

지금 위에 사진과 같이 기본으로 유럽으로 지정되어있을 경우가 있는데, 각 리전마다 EC2가 따로 관리되므로 리전을 변경하면 된다.


2. 인스턴스 시작

이제 EC2라는 컴퓨터 하나를 빌려보자

뭔가 화면이 몇달 전이랑 바뀐거같다...

인스턴스 시작을 누르고

근데 인스턴스가 뭐임?

EC2에서 빌리게되는 컴퓨터 하나의 단위로 이해하면된다.


4. 이름 및 태그

자신의 인스턴스들을 구분하는 이름


5. 애플리케이션 및 OS 이미지(Amazon Machine Image)

익숙한 WindowsmacOS를 고르지 않고 Ubuntu를 사용하는 이유는
WindowmacOS는 잘 모르는 사람들도 쉽게 사용할 수 있도록 여러가지 다양한 기능들이 포함되어있다.
이는 인스턴스의 용량과 성능을 차지하여 서버의 성능이 떨어질 수 있다.


6. 인스턴스 유형

인스턴스의 사양이 높으면 높을수록 많은 사용자들의 요청을 쉽게 처리할 수 있다.

인스턴스 유형 비교를 눌러보면
이처럼 여러가지 인스턴스들을 비교해놓은 자료를 참고할 수 있다.


7. 키 페어(로그인)

AWS에 있는 EC2 컴퓨터에 아무나 접근하면 안되므로 접근을 제어하는 키를 생성한다.

새 키 페어 생성을 누르고

이름을 정한 뒤 키 페어 생성을 누르면 자동으로 다운로드받아지게 된다.


8. 네트워크 설정

편집을 누르고

보안 그룹 이름을 작성한다.

보안그룹(Security Group)은 AWS 클라우드에서의 네트워크 보안을 의미한다.
EC2에 요청이 들어오기 전에 접근해도 되는 요청인지 보안 규칙에 따라 확인한다.

이 보안 규칙에는
인바운드 트래픽(외부에서 EC2 인스턴스로 보내는 트래픽)에서 어떤 트래픽만 허용할 지 설정할 수 있고,
아웃바운드 트래픽(EC2 인스턴스에서 외부로 나가는 트래픽)에서 어떤 트래픽만 허용할 지 설정할 수 있다.(IP 범위, 포트 번호)

ssh : 원격으로 접속하기 위한 경로(port)
소스 유형 : 접속하는 IP를 제한할 것인지

HTTP 80번 포트로 백엔드 서버를 띄우게될경우 보안 그룹 규칙 추가를 해준다.


9. 스토리지 구성

우리가 사용하는 컴퓨터의 하드디스크와 같이, EC2에도 저장공간이 필요하다.
이 저장공간을 EBS(Elastic Block Storage) 라고 하는데 더 포괄적인 용어로 스토리지(Storage), 볼륨(Volume)이라고 부른다.

프리티어의 경우 최대 30G까지 지원된다.

이제 인스턴스 시작을 누르면 잠시 뒤 완료된다.


10. 인스턴스 확인

만들어진 인스턴스를 확인하기 위해 좌측 상단에 EC2-대시보드를 누르고 인스턴스(실행 중)으로 들어간다.

잠시 기다리면 인스턴스 상태가 실행 중으로 인스턴스가 정상 작동하는 것을 확인할 수 있다.


11. EC2 접속해보기

원하는 인스턴스의 ID를 누르면 인스턴스의 세부적인 정보들을 확인할 수 있다.

퍼블릭 IPv4 주소는 내가 EC2에서 빌려온 컴퓨터의 IP 주소를 말한다.
인스턴스 상태는 내가 빌린 EC2 컴퓨터가 실행되고있는지에 대한 상태를 말한다.

여기서 오른쪽 위에 인스턴스 상태를 눌러보면 인스턴스를 제어할 수 있다.
인스턴스 중지 : 인스턴스 컴퓨터를 종료한다.
인스턴스 시작 : 인스턴스 컴퓨터를 시작한다.
인스턴스 재부팅 : 인스턴스 컴퓨터를 재시작한다.
인스턴스 종료(삭제) : 인스턴스 컴퓨터를 완전히 삭제한다.(취소가 불가능하며, 다시 만들어야한다.)


이제 아래에 보안탭으로 가보면 설정했던 보안 그룹인바운드 규칙, 아웃바운드 규칙을 확인과 수정을 할 수 있다.(네트워킹, 스토리지도 확인 가능)


모니터링탭을 누르면 서버를 운영할 때 성능 사용을 확인할 수 있다.


12. EC2 접속해보기

만들어진 EC2에 접속해보자.

EC2 대시보드에서 우측 상단에 연결버튼을 누르면
인스턴스에 연결할 때 필요한 설정들이 나오는데
따로 수정할 내용 없이 아래의 연결을 누른다.

내가 만든 EC2 서버의 ubuntu로 생성한 인스턴스 내부로 원격으로 접속할 수 있다.


13. 탄력적 IP 연결

탄력적 IP가 뭔데?

인스턴스를 생성했을 때 만들어진 IP가 있는데, 인스턴스를 중지시킨 후 다시 시작하면 IP주소가 바뀌게된다.
이렇게되면 매번 재시작 할 때마다 IP주소가 바뀌게되므로 바뀌지 않는 IP가 필요한데, 그게 바로 탄력적 IP이다.

근데 불편하게 왜 재실행 할 때마다 퍼블릭 IP의 주소가 바뀌는거임?

AWS는 기본적으로 EC2 인스턴스를 시작할 때 퍼블릭 IPv4 주소를 임시로 할당해준다.
이 퍼블릭 IP는 전세계적으로 상용하기 때문에 인스턴스의 생애주기 중 Running 상태일 때만 유효한데(사용 개수를 아끼기 위해)
인스턴스를 재시작하면 EC2 인스턴스가 새로운 호스트에 재할당될 수 있고
따라서 기존 퍼블릭 IP는 해제되고, 새로운 IP가 할당된다.


이제 탄력적 IP를 설정해보자

좌측 네트워크 및 보안-탄력적 IP에 들어가서 탄력적 IP 주소 할당을 누른다.

선택되어있는 기본 값들을 그대로 두고 아래의 할당을 누르면 할당된 IPv4 주소를 받게되고
구분하기 쉽도록 Name을 수정해준다.

오른쪽 위에 작업-탄력적 IP 주소 연결을 누른다.

인스턴스에 만들었던 인스턴스를 선택해서 연결을 누르면
탄력적 IP로 고정이 된다.

0개의 댓글