AWS EC2로 배포하기(1) | 인스턴스 생성 | SSH 접속

방충림·2023년 6월 16일
4

AWS

목록 보기
1/10
post-thumbnail
post-custom-banner

인스턴스 생성

AWS의 콘솔홈으로 들어가서 우측 상단의 리전을 서울로 바꿔준다.
상단 검색창에 EC2를 검색해서 들어간다.

EC2콘솔에 들어와 보면 가장 먼저 인스턴스 시작이라는 버튼이 눈에 띈다. 해당 버튼을 누르고 인스턴스 시작 드롭바를 한번 더 누른다.

버튼을 누르게되면 다음과 같은 화면으로 들어오게된다. 생각보다 굉장히 간단하다. 오히려 생성하는 것은 elastic beanstalk보다 간단했다.

  • 이름 및 태그 - 내가 생성할 인스턴스의 이름을 정해준다. 태그는 추가하지 않아도 상관없다.

  • 애플리케이션 및 OS 이미지 - 인스턴스라는 것은 클라우드 즉, 원격으로 컴퓨터를 빌려서 사용하는 것이기 때문에 그 컴퓨터에도 OS가 필요하다. 그 OS를 어떤 걸 선택할 것이냐하는 것이다. 보편적으로 사람들은 우분투를 많이 사용하는 것 같다.
    아래에서는 버전을 선택할 수 있다. 규모가 큰 프로젝트가 아니라면 비교적 최신이면서 프리티어 딱지가 붙은 것을 선택하는 것이 좋다. 그러면 무료로 사용할 수 있다. 다만 성능에는 제한이 있다.

  • 인스턴스 유형 - 위에서 말한대로 인스턴스는 컴퓨터다. 컴퓨터의 유형을 선택하는 것이다. 이것 또한 프리티어인 것을 선택하면 된다.

  • 키페어 - 인스턴스에 접근하기 위한 키를 발급받는다고 생각하면 된다. 키가 없다면 키생성을 눌러 생성한다. (생성시에는 키페어 유형:RSA, 프라이빗 키 파일형식 .pem을 선택하면 된다.) 생성을 완료하였다면 .pem이라는 확장자를 가진 파일하나가 내 컴퓨터에 저장될 것이다. 그것의 위치를 일단 잘 기억해둬야한다. 그리고 원래의 화면들어 돌아와 생성한 키를 선택한다.

  • 네트워크 설정 : 특별히 수정해줄 것은 없다. HTTPS, HTTP허용같은 설정들은 뒤에서 따로 설정을 해줄 것이으로 그냥 넘어가면 된다.
    이 중에서 조금 눈여거 볼만한 것은 보안그룹(방화벽)이다. 여기에서는 방화벽이라고 적혀있어서 어떤 역할인지 이해가 되지만, 인스턴스 콘솔의 전반적인 곳에서 보안그룹이라는 단어로 블리우므로 이 단어를 기억해두자. 보안그룹의 역할은 외부로 부터의 접근을 막는 것이다.(인스턴스의 기준에서 보면 지금 나의 컴퓨터도 외부다.) 위치무관 0.0.0.0/0은 모든 IP 대역의 외부 접근을 허용하겠다는 의미다. 보안상으로는 특정 IP만 접근할 수 있도록 하는 것이 좋다. 지금은 일단 생성이 주된 목적이므로 그대로 진행한다.

  • 스토리지 구성 : GiB는 기가바이트를 의미하고, 루트 볼륨은 root Disk를 의미한다. 용량은 프리티어는 최대 30기가까지 사용할 수 있으므로 30으로 하고, 루트 볼륨은 초기값 그대로 진행한다.

  • 고급 세부 정보 : 말그대로 고급 정보이므로 현재단계에서는 해당사항이 없다.

이렇게 설정을 완료했으면 우측에 설정 요약를 확인하고 이상이 없으면 인스턴스 시작을 눌러준다.

완료가 되면 아래와 같이 인스턴스가 생성된다. 인스턴스 아이디를 들어 인스턴스에 대한 자세한 사항을 확인한다.

  • 퍼플릭 IPv4 주소 : 외부에서 접근할 수 있는 아이피
  • 프라이빗 IPv4 주소 : 감춰져있는 IP로 이걸로 외부에서 접근할 순 없다.
  • 탄력적 아이피 주소 : 탄력적 아이피를 설정해 주지않으면 퍼블릭IP주소가 계속 바뀐다. 그러므로 좌측 메뉴에서 탄력전 IP항목을 찾아 적용해 줘야한다.

SSH로 인스턴스 접속

우측 상단의 연결 버튼을 누르면 인스턴스에 진입할 수 있는 다양한 방식을 제공하고 있다. 나는 그중에 아까 발급받은 .pem 키로 접근가능한 SSH 클라이언트 방식을 사용할 것이다.

.pem 키로 인스턴스에 접근하는 방법은 다음과 같다.
1. 터미널에서 .pem 있는 디렉토리로 이동한다.
2. 위 사진에서 (검게 색칠되어있는 곳) 명령어를 복사해서 터미널에 붙여넣고 엔터를 누른다.
3. 끝

매우 간단하다. 이제 초기 설정을 해주기 위해 몇가지를 확인하고 필요한 것을 설치한다.

  • OS 업데이트 해주기 : sudo apt-get update
  • OS 업그레이드 해주기 : sudo apt-get upgrade
  • npm 설치 : sudo apt-get install npm -y
  • npm 확인 : npm -v
  • node도 같이 잘 깔렸는지 확인 : node -v

여기까지 기본적인 초기 설정 과정이다.
이후 필요에 따라 도메인을 등록해주거나 https를 적용하거나 NginX로 리버스프록시를 구성한 뒤 pm2를 통해 프로젝트를 배포할 수 있다. 이에 대한 설명은 아래 링크를 참고바란다.


이어지는 게시물

도메인 등록 => https 적용 => Nginx 설정 => 프로젝트 배포



참고
우리밋 EC2에 서버 배포1
우리밋 EC2에 서버 배포2
우리밋 EC2에 서버 배포3

profile
최선이 반복되면 최고가 된다.
post-custom-banner

0개의 댓글