EC2(Elastic Compute Cloud)

이전 포스트에서 AWS의 컴퓨터 한 대를 ‘빌려’ 쓴다고 했습니다 그럼 이제 직접 빌려봐야 하지 않을까요!? 빌려 써보도록 합시다
그럼 지금부터 AWSEC2를 생성해서 접속까지 하는 것을 해보도록 하겠습니다



본 블로그는 12개월 무료인 프리 티어에 대해서 설명드리며, 또 한 이번 포스트는 AWS에 이미 가입되어 있는 상태에서 진행되는 점 알려드립니다.

서비스 > 컴퓨팅 > EC2


Region - 서울 이 되어있는지를 확인합니다 (이유는 제일 아래 설명합니다)

인스턴스 > 인스턴스 생성


Amazon Linux > 선택

프리 티어에서도 스크롤을 아래로 내려다보면 여러 가지 인스턴스 들을 생성할 수 있습니다

그중에 우리는 리눅스 인스턴스를 생성해서 접속해 보도록 하겠습니다


유형 - t2.micro (프리 티어 사용 가능) 확인

검토 및 시작 (세부 설정은 지금은 필요 없으니 넘어가도록 합니다)

이렇게 하면 1개의 CPU, 1GB 메모리가 달린 EC2 컴퓨터를 장만하기 시작합니다

다른 유형에 대해서는 프리티 어가 아닌 경우 시간 또는 분 단위로 요금이 나옵니다 이 경우에 대해서는 제일 아래에서 설명하겠습니다


시작하기


새 키 페어 생성

.pem이라는 확장자를 가진 키, 잃어버리지 않도록 주의하며 키 이름을 설정하고 다운로드

인스턴스 시작

키 페어는 오직 지금 밖에 다운로드만 가능합니다 그러니 잃어 버리지 않도록 주의! 잃어버렸을 경우 방법이 있지만 여기서는 설명하지 않도록 하겠습니다 (그냥 잃어버리지 말길 바래요…)



시작한 뒤 인스턴스를 보게 되면 Pending 이였다가 잠시 뒤 running으로 바뀌게 됩니다

이 상태가 되면 우리는 지금 AWS의 컴퓨터 한 대를 장만하게 됐어요! 참 쉽죠?


지금부터 EC2를 시작했으니 돈이 나가기 시작할 거예요 그러나 걱정하지 말죠! 우리는 12개월 동안 무료로 사용할 수 있는 프리 티어이니까! 자 이제 인스턴스가 돈이 안 나가게 하는 방법에 대해서 알아봅시다



해당 인스턴스 오른쪽 클릭 > 인스턴스 상태 > 중지

이렇게 하면 해당 인스턴스가 최소 몇 초에서 최대 5분 내로 인스턴스의 상태가 Stopped의 상태가 됩니다


이제 EC2 인스턴스를 생성하고 껐다 켰다를 할 수 있게 되었습니다 이제 EC2에 접속을 해봐야 하지 읺을까요?


Mac OS X에서 접속하는 방법과 Windows 10에서 접속하는 방법. 이 두 가지에 대해서 설명하겠습니다!

Mac OS X 접속 방법

생성한 인스턴스 클릭 > 퍼블릭 DNS 기억


터미널 오픈 > 인스턴스를 생성할 때 다운로드 받은 키가 존재하는 폴더로 이동

1
2
3
4
$ chmod 400 <다운로드 받은 키.pem>
SSH가 작동하려면 키가 공개적으로 표시되지 않아야 한다. 필요할 경우 이 명령을 사용.
$ sudo ssh -i "<다운로드 받은 키.pem>" <본인 인스턴스의 퍼블릭 DNS>
sudo 명령어로 관리자 권한으로 실행을 하게 될 시 비밀번호를 물어본다. 이 경우 Mac 비밀번호이다.




Windows 10 접속 방법

제 블로그에서는 Putty 프로그램을 이용해서 접속을 할 것입니다

시작 > 모든 프로그램 > puTTY > PuTTYgen 선택

생성 키의 종류 - RSA

Load


All Files(*.*) > "다운로드 받은 키"

Save Private Key(PuTTY가 사용할수 있는 형식으로 .ppk 비공개 키 저장)


Host Name(or IP address) : 본인의 인스턴스의 퍼블릭 DNS

Port : 22

Connection type : SSH

Category > Connection > SSH > auth



Browse.. > 비공개로 저장했던 키를 검색

Open


SSH를 서버에 등록하겠냐는 문구가 뜨면 당연히 Yes를 클릭하고 로그인한다.

로그인 ID : ec2-user




수고하셨습니다

여러분들은 이제 AWS의 컴퓨터 한대를 빌려 접속을 성공했습니다




다음으론 EC2 요금에 대해서 한번 알아보도록 하겠습니다

당연하겠지만 빌려 쓰는 것이기 때문에 사용료를 지불해야 합니다 사용하는 방식(비용을 지불하려고 하는 형태)에는 4가지의 방식이 있어요

AWS 요금 형식 링크를 들어가 보면 4가지의 요금 형식이 있지만 2가지만 설명하겠습니다


1. 온디멘드

실행되고 있는 인스턴스에 따라 대게 시간당으로 비용을 지불하게 됩니다

2. 예약 인스턴스

인스턴스를 실행하는 것을 예약으로 설정하여 만약 어느 수요가 많다는 생각이 드는 시간대에 온 디멘드 방식보단 예약 인스턴스를 방식을 사용하여 계속 켜놓는 것보다 필요할 때만 인스턴스를 켜기 때문에 비용을 최대 `75% 정도`까지 절약할 수 있습니다

나머지 2가지 방식은 독자께서 이해해보려 노력하길 바라며 (총총…)


EC2에 대한 다양한 요금

이 그림을 보고 간단하게 설명하고 넘어갈게요 프리 티어 기준으로 생성한 인스턴스를 보도록 하겠습니다

보다시피 CPU 1개, 메모리 1GB 짜리를 사용하는데 시간당 요금이 시간당 0.0144 USD 즉, 1달러(한화 약 1200원)를 쓰려면 69.4시간을 사용해야 1달러가 나온다는 말입니다

이 말이 무슨 말이냐고요? 저는 정말 멍청한 짓을 했죠ㅠ 서버 컴퓨터 하나 맞추려고 50만 원 정도의 돈을 투자해서 맞췄는데… 단돈 1200원이라는 돈으로 70시간의 컴퓨터를 빌릴 수 있다니… 여기서 새삼 한 번 더 AWS에 대해 놀랬습니다

물론 본인이 개인 서비스를 진행하고자 하는데 사용자 수가 많아지면 당연히 그림에 나와 있는 사양 가지고는 터무니가 없다고 느낄 것입니다 그래서 밑으로 내려다보면 자신에게 맞는 사양을 택해서 요금을 내면 됩니다 다른 사양에 대해서는 잘 보도록 하길 바래요



지역(Region)에 대해서 설명

AWS region 참조 관련 이미지


비용 지불 형식에 대해서 이해했다면 이제 이전 포스트에 말했던 Region에 관해서 설명을 하고자 합니다

위를 봤던 그림처럼 여러 RegionAWS가 있다고 했습니다 나중에 보면 알겠지만 내가 한국에 있다고 꼭 서울 Region을 선택해서 사용할 필요는 없습니다 이러한 Region을 정하는 기준에 대해서는 이렇게 생각하면 좋겠습니다

“내가 프로그램을 제작하였을 때 이 프로그램을 어느 Region에 있는 사용자가 많이 사용할 것인가?” 이러한 질문에서 당연히 한국 사람들이 많이 사용할 것이라면 서울 Region을 선택해서 사용하면 되고, 유럽 사람들이 많이 사용할 것이라면 유럽 Region을 선택해서 사용하면 됩니다 왜냐하면 한국 사람들이 많이 사용하는데 유럽 Region을 선택해서 사용하다 보면 한국에서 유럽까지 통신하는 거리가 있기 때문에 조금 느릴 수가 있어요 (Region 선택은 본인이 선택하는 것이기 때문에 느리든 말든 알아서 해도 무관하다… 제 생각은 그렇다는 거예요)