지금까지 배포는 몇번 해봤지만 설정 값과 과정에 대한 이해가 부족하다고 생각해 정리해보기로했다.
AWS에 접속해 로그인하고, 좌측 상단 검색창에 EC2
를 검색하여 들어간다.
지역(Region)
을 서울
로 선택한다.
Region : 각각의 인프라를 지리적으로 나누어 배포한 데이터 센터
즉, 내가 빌릴 원격 컴퓨터의 위치를 의미하므로 주된 사용자들의 위치와 가까운 리전을 선택하는 것이 좋다.
지금 위에 사진과 같이 기본으로 유럽으로 지정되어있을 경우가 있는데, 각 리전마다 EC2가 따로 관리되므로 리전을 변경하면 된다.
이제 EC2라는 컴퓨터 하나를 빌려보자
뭔가 화면이 몇달 전이랑 바뀐거같다...
인스턴스 시작
을 누르고
EC2에서 빌리게되는 컴퓨터 하나의 단위로 이해하면된다.
자신의 인스턴스들을 구분하는 이름
익숙한 Windows
나 macOS
를 고르지 않고 Ubuntu
를 사용하는 이유는
Window
와 macOS
는 잘 모르는 사람들도 쉽게 사용할 수 있도록 여러가지 다양한 기능들이 포함되어있다.
이는 인스턴스의 용량과 성능을 차지하여 서버의 성능이 떨어질 수 있다.
인스턴스의 사양이 높으면 높을수록 많은 사용자들의 요청을 쉽게 처리할 수 있다.
인스턴스 유형 비교
를 눌러보면
이처럼 여러가지 인스턴스들을 비교해놓은 자료를 참고할 수 있다.
AWS에 있는 EC2 컴퓨터에 아무나 접근하면 안되므로 접근을 제어하는 키를 생성한다.
새 키 페어 생성
을 누르고
이름을 정한 뒤 키 페어 생성
을 누르면 자동으로 다운로드받아지게 된다.
편집
을 누르고
보안 그룹 이름을 작성한다.
보안그룹(Security Group)은 AWS 클라우드에서의 네트워크 보안을 의미한다.
EC2에 요청이 들어오기 전에 접근해도 되는 요청인지 보안 규칙에 따라 확인한다.
이 보안 규칙에는
인바운드 트래픽(외부에서 EC2 인스턴스로 보내는 트래픽)에서 어떤 트래픽만 허용할 지 설정할 수 있고,
아웃바운드 트래픽(EC2 인스턴스에서 외부로 나가는 트래픽)에서 어떤 트래픽만 허용할 지 설정할 수 있다.(IP 범위, 포트 번호)
ssh : 원격으로 접속하기 위한 경로(port)
소스 유형 : 접속하는 IP를 제한할 것인지
HTTP 80번 포트로 백엔드 서버를 띄우게될경우 보안 그룹 규칙 추가
를 해준다.
우리가 사용하는 컴퓨터의 하드디스크와 같이, EC2에도 저장공간이 필요하다.
이 저장공간을 EBS(Elastic Block Storage) 라고 하는데 더 포괄적인 용어로 스토리지(Storage), 볼륨(Volume)이라고 부른다.
프리티어의 경우 최대 30G까지 지원된다.
이제 인스턴스 시작
을 누르면 잠시 뒤 완료된다.
만들어진 인스턴스를 확인하기 위해 좌측 상단에 EC2-대시보드
를 누르고 인스턴스(실행 중)
으로 들어간다.
잠시 기다리면 인스턴스 상태가 실행 중으로 인스턴스가 정상 작동하는 것을 확인할 수 있다.
원하는 인스턴스의 ID를 누르면 인스턴스의 세부적인 정보들을 확인할 수 있다.
퍼블릭 IPv4 주소
는 내가 EC2에서 빌려온 컴퓨터의 IP 주소를 말한다.
인스턴스 상태
는 내가 빌린 EC2 컴퓨터가 실행되고있는지에 대한 상태를 말한다.
여기서 오른쪽 위에 인스턴스 상태를 눌러보면 인스턴스를 제어할 수 있다.
인스턴스 중지
: 인스턴스 컴퓨터를 종료한다.
인스턴스 시작
: 인스턴스 컴퓨터를 시작한다.
인스턴스 재부팅
: 인스턴스 컴퓨터를 재시작한다.
인스턴스 종료(삭제)
: 인스턴스 컴퓨터를 완전히 삭제한다.(취소가 불가능하며, 다시 만들어야한다.)
이제 아래에 보안
탭으로 가보면 설정했던 보안 그룹
과 인바운드 규칙
, 아웃바운드 규칙
을 확인과 수정을 할 수 있다.(네트워킹, 스토리지도 확인 가능)
모니터링
탭을 누르면 서버를 운영할 때 성능 사용을 확인할 수 있다.
만들어진 EC2에 접속해보자.
EC2 대시보드에서 우측 상단에 연결
버튼을 누르면
인스턴스에 연결할 때 필요한 설정들이 나오는데
따로 수정할 내용 없이 아래의 연결
을 누른다.
내가 만든 EC2 서버의 ubuntu로 생성한 인스턴스 내부로 원격으로 접속할 수 있다.
인스턴스를 생성했을 때 만들어진 IP가 있는데, 인스턴스를 중지시킨 후 다시 시작하면 IP주소가 바뀌게된다.
이렇게되면 매번 재시작 할 때마다 IP주소가 바뀌게되므로 바뀌지 않는 IP가 필요한데, 그게 바로 탄력적 IP이다.
AWS는 기본적으로 EC2 인스턴스를 시작할 때 퍼블릭 IPv4 주소를 임시로 할당해준다.
이 퍼블릭 IP는 전세계적으로 상용하기 때문에 인스턴스의 생애주기 중 Running 상태일 때만 유효한데(사용 개수를 아끼기 위해)
인스턴스를 재시작하면 EC2 인스턴스가 새로운 호스트에 재할당될 수 있고
따라서 기존 퍼블릭 IP는 해제되고, 새로운 IP가 할당된다.
이제 탄력적 IP를 설정해보자
좌측 네트워크 및 보안
-탄력적 IP
에 들어가서 탄력적 IP 주소 할당
을 누른다.
선택되어있는 기본 값들을 그대로 두고 아래의 할당
을 누르면 할당된 IPv4 주소를 받게되고
구분하기 쉽도록 Name을 수정해준다.
오른쪽 위에 작업
-탄력적 IP 주소 연결
을 누른다.
인스턴스에 만들었던 인스턴스를 선택해서 연결
을 누르면
탄력적 IP로 고정이 된다.