AWS 배포하기01. 환경 설정하기

윤태규·2023년 12월 14일
  1. 환경 설정하기
    1) AWS 가입하기
  • 해외결제가 가능한 유효한 결제 수단을 넣어야 가입이 정상적으로 이루어집니다. Visa 또는 Master 겸용의 신용카드를 추천드립니다. 가입이 정상적으로 이루어지지 않을 경우 수업을 진행할 수 없으므로 사전에 해외결제가 가능한지 반드시 확인 부탁드립니다.
  • AWS는 개인에게 클라우드 환경의 가상서버를 제공합니다. 기본 사양의 서버(EC2)를 1년 동안 무료로 사용할 수 있습니다.
  • 가입 시 결제된 금액은 다시 반환됩니다. (일종의 결제 테스트 목적)
  1. AWS EC2 Instance 생성
  • 1) EC2 Instance 생성

    • AWS EC2에서는 컴퓨터 하나의 단위를 Instance 라는 이름으로 부릅니다.
    • 그래서 EC2 Instance를 생성한다는건, 서버 컴퓨터를 하나 대여한다는것과 같아요!
  • AWS Console 페이지로 이동

    만약 로그인을 하지 않았다면 로그인을 한 뒤 아래와 같은 페이지가 나오도록 해주세요!

    스크린샷 2023-05-10 오후 9.31.09.png

  • Region 선택

    우리가 앞으로 만들 EC2 Instance가 어떤 지역에서 켜질지 선택할 수 있습니다.
    이 지역이 가까울수록 접속 속도가 빠르니 우리는 서울(ap-northeast-2)을 선택합니다!

    스크린샷 2023-05-10 오후 9.33.16.png

  • EC2 Instance 생성: EC2 서비스 페이지로 이동

    스크린샷 2023-05-10 오후 9.33.40.png

    상단 검색창에서 EC2 를 입력해 서비스 부분의 맨 위에 나온것을 누릅니다.
    아래처럼 나오면 성공!

    스크린샷 2023-05-10 오후 9.33.59.png

  • EC2 Instance 생성: 운영체제 선택

    1. 왼쪽 메뉴에서 “인스턴스” 를 눌러 아래 페이지로 이동합니다.

      Untitled

    2. 우측 상단에 있는 주황색 “인스턴스 시작” 버튼을 눌러 아래 페이지로 이동합니다.

      Untitled

      스크린샷 2023-07-26 오전 1.11.18.png

    3. 애플리케이션 및 OS 이미지”에서 Ubuntu를 선택하고, Ubuntu Server 22.04 LTS(HVM)을 선택합니다. (아키텍처는 64비트(x86)으로 지정해주세요.)

      스크린샷_2023-07-26_오전_1_09_37.jpg

  • EC2 Instance 생성: 인스턴스 유형 선택

    1. “프리 티어 사용 가능” 이라고 적혀있는 t2.micro 타입을 선택합니다.

      스크린샷 2023-05-10 오후 9.43.08.png

  • EC2 Instance 생성: 키 페어(keypair) 이름 지정 및 다운로드

    1. “새 키 페어 생성” 선택
    2. 키 페어 이름, 키페어 유형, 프라이빗 키 파일 형식을 설정합니다.
    3. “키 페어 생성” 선택
      “키 페어 생성” 버튼을 누르면 생성한 키 페어 파일이 다운로드 됩니다. 💡 **키 페어(Keypair)**는 여러분의 서버에 접속할 수 있도록 해주는 신분증입니다! 당연히 누군가에게 공유해서도 안되고, 잃어버리면 다시는 발급 받을수 없으니 EC2 Instance를 지우기 전까지는 절대 잃어버리지 않도록 소중하게 보관하세요!
  • EC2 Instance 생성: EC2 Instance 시작
    2) EC2 Instance 종료하는 방법
    대상 인스턴스에 마우스 우클릭 > 인스턴스 중지 또는 종료 중 하나를 클릭하면 명령을 실행합니다.
    3) EC2 Instance에 접속하기

    • 방화벽이란?
      📌 방화벽은 여러분의 컴퓨터에 아무나 연결할 수 없도록 해주는 역할을 수행합니다.

      • AWS에서는 “Security Group” 또는 “보안 그룹”이라는 이름으로 방화벽을 제공합니다.
    • EC2 Instance에 접속하기 위한 도구, SSH 개념 정리

      • SSH(Secure Shell)는 일반적으로 다른 컴퓨터에 연결할 때 사용되는 프로그램입니다.
        • 다른 접속 방법보다 보안이 뛰어나 서버 연결을 위해 일반적으로 사용됩니다.
        • 로컬 저장소에서 Github의 원격 저장소를 사용하기 위해 SSH Key를 발급했던 것과 동일합니다!
      • 접속 할 EC2 Instance의 방화벽에서 22번 포트가 열려있어야 접속 가능합니다.
    • AWS EC2에 접속하기

      • macOS: Mac은 ssh가 기본 설치되어 있어, 명령어로 바로 접근 가능!

        • 터미널을 열기 ( + Space로 Spotlight 에서 터미널 입력)

          스크린샷 2023-05-10 오후 10.04.43.png

        • EC2 Instance를 생성하면서, 다운로드 받은 키 페어의 접근 권한을 바꿔줘야합니다.

          # 다운로드 폴더로 접근합니다.
          cd Download
          
          # sparta_keypair.pem 파일의 권한을 읽기만 가능하도록 수정합니다.
          sudo chmod 400 sparta_keypair.pem 
        • SSH로 접속하기

          ssh -i 받은키페어를끌어다놓기 ubuntu@AWS에적힌내아이피

          예) 아래와 비슷한 생김새!

          ssh -i sparta_keypair.pem ubuntu@13.125.253.21
      • Windows: ssh가 없으므로, git bash라는 프로그램을 이용!

    • 4) 간단한 리눅스 명령어 연습하기

      • 일반적으로 리눅스 서버에서는 마우스(GUI) 대신 쉘 명령어(CUI)를 통해 운영체제의 기능을 이용합니다.
    1. AWS EC2 Node.js 설치
    • 1) EC2 Instance에 Node.js 설치하기
      • 어떻게 하면 될까요?
        - 우리는 Node.js 웹 사이트에 들어가 다운받아 설치 프로그램으로 설치를 했지만 지금은 어떻게 할지 감이 안오시죠?
        - 우리가 사용중인 EC2 Instance에서는 모든 것을 명령어로 조작합니다.
        그래서 Node.js 설치 또한 명령어로 간단히 설치할 수 있습니다.
        - 아래에 있는 설치 명령어는 Node.js v18을 설치해주는 명령어입니다!
        curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -

sudo apt-get install -y nodejs
설치 및 설치 확인 명령어
설치: EC2 Instance에 접속이 된 상태라면 위에서 복사한 명령어를 붙여넣고 엔터를 누르고 기다리면 됩니다.
설치 확인: 이전에 아래와 같은 명령어로 확인했던것처럼 확인할 수 있습니다!

설치된 Node.js 버전 확인하기

node -v

설치된 npm 버전 확인하기

npm -v
04. 서버 프로그램 실행 및 웹사이트 접속

  • 1) EC2 Instance에서 서버 실행

    • GitHub에 있는 Repository Clone

      Github의 원격 저장소로 부터 코드를 가져오는것이 Clone이라고 이해할 수 있습니다.

      1. 이전 수업에서 만든 GitHub 레파지토리 페이지로 들어가 초록색 “Code” 버튼을 눌러 네모가 두개 겹친 모양의 아이콘을 가진 복사 버튼을 눌러주세요.

        스크린샷_2023-07-26_오전_1_21_01.jpg

      2. EC2 Instance 터미널에 접속해 복사한 내용을 붙여 넣어주세요.
        아래와 같은 형식으로 나타나야 합니다.
        - ⚠️ 아래는 예시이므로 복사해서 사용하시면 안됩니다!

        ```bash
        # 원격 저장소로 부터 코드 가져오기
        git clone <Github Repository URL>
        
        # 예시
        git clone https://github.com/archepro84/nodejs-todo-list.git
        ```
    • 프로젝트 실행

      👉 프로젝트 실행 순서

      1. cd nodejs-todo-list : 원격 저장소로부터 가져온 프로젝트로 이동합니다.
      2. sudo npm install -g yarn : yarn을 사용하기 위해, 전역으로 yarn을 설치합니다.
      3. yarn : 원격 저장소로 부터 가져온 프로젝트의 의존성 및 패키지를 설치합니다.
      4. node app.js : 프로젝트를 실행합니다.
    • 웹 사이트 접속

profile
끝까지 가자

0개의 댓글