로컬에서 만든 서버를 클라우드에 올리는 것은, 거의 모든 서버개발자가 거치게 되는 작업일 것입니다. 제가 처음 AWS를 접했을 때 물어볼 사람이 없어서 혼자 이것저것 만져보고, 블로그에서 글들도 찾아보면서 어떻게든 어렵게 해냈던 기억이 있습니다.
정말 어려웠습니다..😵
그래서, 다시 공부도 해볼겸 저와 같은 문제로 어려워하시는 분들이 있다면 도움이 되어드리고 싶어서 제가 평소에 AWS를 사용하는 방식을 최대한 단순하게 기록해보려고 합니다.
최소 기능, 간단한 설명을 목표로 합니다..! 그러니 혹시 고급 설정을 하실 분들이라면 제 포스트 이외에 다른 자료들도 참고 바랍니다.
먼저 해야할 일은 AWS에 EC2 인스턴스를 생성하는 것입니다.
물론 데이터베이스 클라우드 서버가 없다면 RDS 구성이 먼저 필수적이겠지만, 오늘은 제가 EC2를 해야돼서..다른 포스트에서 다뤄볼게요!!
EC2를 만드는 과정부터 시작합니다!
AWS 웹사이트에 접속합니다. 로그인 과정은 생략하겠습니다.
그리고 검색창에 EC2를 입력하여 EC2 서비스로 넘어갑니다.
인스턴스를 시작합니다!
우측 상단의 인스턴스 시작버튼을 눌러주세요.
인스턴스를 시작하면 처음 보게 되는 화면은 AMI를 선택하는 화면입니다.
아마존 머신 이미지(Amazon Machine Image, AMI)는 아마존 일래스틱 컴퓨트 클라우드(EC2) 안에 가상 머신을 생성하기 위해 사용되는 특수한 유형의 가상 어플라이언스이다. EC2를 사용하여 배포하는 서비스의 디플레이의 기본 단위 역할을 한다.
복잡해 보이지만, 단순하게 설명하자면, EC2 인스턴스를 시작하는 데 필요한 정보를 이미지로 만들어 둔 것입니다!
여기서 저희는 제일 처음에 나와있는
Amazon Linux 2 AMI (HVM) - Kernel 5.10, SSD Volume Type
을 선택합니다.
아마존으로부터의 여러 지원, 타 서비스와의 상성을 고려했을 때, 처음 구성하신다면, Amazon Linux가 좋아요..!
선택을 누릅시다!
두 번째 단계에서는 인스턴스의 유형을 선택합니다. 유형에 따라서 성능이 달라지고, 그에 따른 비용도 달라집니다.
프리 티어에서 사용할 수 있는 t2.micro를 선택하시면 됩니다! 혹시 나중에 인스턴스 유형을 바꾸고 싶다면, 얼마든지 가능하므로 처음에는 가급적 프리티어로 하면 좋겠죠?!
선택을 완료했다면, 우측 하단의 '다음: 인스턴스 세부 정보 구성 화면'버튼을 눌러 다음으로 넘어갑니다.
최대한 가벼운 설정을 표방하므로..!
여기서는 특별하게 바꿀 설정이 없습니다!
여기서는 스토리지를 정하게 됩니다.
기본값은 8GB이지만, 프리티어에서는 최대 30GB까지 지원하므로, 30GB로 변경해주면 좋습니다!
변경하셨다면, 우측하단의 '다음: 태그추가' 버튼을 눌러 다음으로 넘어갑니다!
여기서는 태그를 정합니다.
태그는 정하셔도 되고, 안 정하셔도 됩니다!
다만, 인스턴스를 표현하는 이름이 되기 때문에 설정하는 것이 좋습니다..!
저는 캡스톤 프로젝트에 대한 서버를 만드는 것이기 때문에, 위와 같은 이름을 적용하였습니다.
'다음: 보안 그룹 구성' 버튼을 눌러 다음으로 넘어갑니다.
다음으로 보안그룹을 설정하게 됩니다!
보안그룹은 방화벽이라고 생각하시면 편합니다.
22번포트는 ssh접속을 할 때 사용되는데, 이 포트가 전체공개로 돼버리면, 서버의 사용권한을 누구나 가질 수 있게 되므로, 소스에서 내 IP로 설정해서, 자신의 개발환경에서만 ssh 접속이 가능하도록 해야합니다.
두 번째 세 번째 유형은 각각 서버로 연결되는 서비스를 위한 포트인데,
개발환경에 따라 다르게 설정하시면 됩니다.
저는 스프링부트를 서버개발에 사용하므로, 스프링부트의 기본 포트인 8080를 보안그룹에 전체 공개로 열어놓았습니다.
서버에서 전체공개로 8080포트를 여는 것은 보안적으로 문제가 되지 않습니다!
22번 포트는 문제가 됩니다..!
그리고 최종적으로 우측 하단의 검토 및 시작을 눌러서 인스턴스 설정을 마칩니다. 그리고 그 다음 페이지에서 최종적인 설정 사항을 검토하고 시작하기를 눌러줍니다.
시작하기를 누르면 마지막으로 pem키를 만드는 화면이 나오게 됩니다.
여기서 새 키페어 생성을 선택하시고, 키페어 유형은 RSA로, 이름은 key에 대한 적절한 이름을 넣어주시면 됩니다! 그 후 키페어를 다운로드 하셔서 안전한 곳에 보관하시면 됩니다!
이렇게 EC2 서버를 만드는 과정에 대해 알아보았습니다!
다음 포스트에서는 EC2 서버에 탄력적 IP를 적용하는 방법에 대해 알아보겠습니다!
감사합니다😁