이번에 미니 프로젝트 또는 기업 연계 프로젝트들을 하면서 제가 어떤 식으로 서버 배포를 했는지 잊지 않으려고 그 과정들을 정리하여 작성을 해보겠습니다.
먼저, 서버를 생성하기 위해 AWS(Amazon Web Service)를 이용할 것입니다.
AWS는 아마존에서 개발한 클라우드 컴퓨팅 플랫폼입니다.
그래서 클라우드 컴퓨팅(Cloud Computing)은 무엇인지 궁금할 수 있습니다. 간단하게 말하자면, 개인용 컴퓨터보다 성능이 좋을 수 있는 컴퓨터나 저장장치 등의 컴퓨터 자원을 다른 곳에서 빌려 사용할 수 있도록 처리해주는 IT 기술입니다.
이 클라우드 컴퓨팅은 여러 가지 장점이 있지만 그 중에서 최소의 시간으로 서비스를 게시하거나 배포할 수 있다는 점이 큰 장점입니다.
그래서 AWS는 전 세계에 분포된 데이터 센터에서 다양한 기능을 제공하는 클라우드 플랫폼입니다.
주요 서비스로는 뒤에 설명할 EC2와 같은 컴퓨팅 서비스, 네트워킹 서비스, 스토리지 서비스, 데이터베이스 서비스 등 많은 서비스가 존재합니다.
AWS EC2(Elastic Compute Cloud)는 가상화 서버이며, 다양한 형태의 타입과 서비스에 따라 적합한 사양을 선택할 수 있습니다. 그리고 사용량만큼 비용을 지불하는 컴퓨팅 서비스입니다.
현재 저 같은 경우는 AWS에서 Free Tier를 사용하고 있기 때문에, 사양이 t2.micro만 사용가능하고, 월 750 시간의 제한이 존재합니다.
이제 AWS EC2에서 인스턴스를 생성해 보겠습니다.
💡 그 전에, EC2를 생성하기 전에, 본인의 리전(Region)
을 확인하며, 서울로 되어있지 않다면 서울로 변경합니다.
AWS 검색 창에서 EC2를 입력하여 서비스를 클릭하고, 인스턴스 -> 인스턴스 시작을 클릭합니다.
EC2 인스턴스의 이름을 입력합니다.
AMI(Amazon Machine Image)는 EC2 인스턴스를 시작하는 데 필요한 정보를 이미지로 만들어 준 것을 말합니다. 인스턴스라는 가상머신에 운영체제 등을 설치할 수 있게 구워 넣은 이미지로 생각하면 되며, 저는 아마존 리눅스 2 AMI를 선택했습니다. (처음에 최신 버전인 Amazon Linux 2023을 선택하여 생성했지만 서버 안에 필요한 프로그램들을 설치가 되질 않아 서버 버전을 바꿨습니다.)
인스턴스 유형에서는 프리티어로 표기된 t2.micro를 선택합니다. t2는 요금 타입을 말하며, micro는 사양을 말합니다.
인스턴스로 접근하기 위해서는 pem 키(비밀키)가 필요합니다. 그래서 [새 키 페어 생성]을 클릭합니다.
키 페어 생성에서 원하는 이름을 적고 키 페어 생성을 클릭합니다. 그러면 원하는 위치에 .pem을 다운받을 수 있습니다.
ssh이면서 포트 항목이 22인 경우는 AWS EC2에 터미널로 접속할 때를 의미합니다. 지정된 IP에서만 ssh 접속이 가능하도록 구성하는 것이 안전하며, 본인의 IP를 기본적으로 추가합니다.
스토리지를 설정합니다. 흔히 하드디스크라고 부르는 서버의 디스크를 말하며, 서버의 용량을 얼마나 정할지 선택하는 단계입니다. 여기서 기본값은 8GB인데, 30GB까지 프리티어로 가능하기 때문에 최대치인 30GB로 설정합니다.
설정을 완료하게 되면, 우측에 간단하게 지금까지 설정한 인스턴스 요약이 나올 것입니다. 이제 더 설정할 부분이 없으면 인스턴스 시작을 클릭합니다.
생성하게 되면 인스턴스가 실행중인 것을 확인하실 수 있을 것입니다.
인스턴스도 하나의 서버이기 때문에 IP가 존재합니다.
여기서 인스턴스를 중지하고 다시 시작할 때도 새 IP가 할당됩니다. 이렇게 되면 접속해야 하는 IP가 변경되어 PC에서 접근할 때마다 IP 주소를 확인해야 합니다.
굉장히 번거롭기 때문에 인스턴스의 IP가 매번 변경되지 않고 고정 IP를 가지게 해야 합니다. 그래서 고정 IP를 할당할 필요가 있습니다.
AWS의 고정 IP를 탄력적 IP(Elastic IP)라고 합니다.
현재 생성된 인스턴스 정보를 확인해보면, [탄력적 IP 주소]가 비어있는 것을 확인할 수 있습니다.
그러면 이 탄력적 IP를 할당받도록 해보겠습니다.
[탄력적 IP]를 클릭하여 우측 상단에 [탄력적 IP 주소 할당]을 클릭합니다.
여기서 설정하지 않고 바로 [할당]을 클릭합니다.
탄력적 IP 주소가 할당되었다는 메시지가 출력된 것을 확인할 수 있습니다.
여기서 [이 탄력적 IP 주소 연결]을 클릭합니다.
설정 화면에 들어가게 되면 현재 내 인스턴스 목록과 프라이빗 IP 주소를 확인할 수 있습니다. 그대로 [연결]을 클릭합니다.
여기서 인스턴스 정보를 확인해보면 탄력적 IP주소가 할당된 것을 확인할 수 있고 퍼블릭 IP 주소도 기존 값에서 탄력적 IP 주소로 자동으로 변경된 것을 확인할 수 있습니다.
여기까지 EC2 인스턴스 생성 과정입니다.