Tonic 's lesson learned


AWS EC2 VS Lightsail 어떤 걸 사용하면 좋을까

AWS에서는 EC2와 Lightsail(라이트세일)이라는 가상 서버 서비스를 제공합니다. 둘 다 인스턴스를 생성해서 서비스를 올려봐도 어떤게 내 상황에 맞는 서비스인지 잘 확신이 서지 않는데요. 1인 스타트업 등 대규모 프로젝트는 아니지만 사이드 프로젝트 수준은 넘는 서비스를 돌리기 위해서는 어떤 서비스를 선택하면 좋을까요? 둘을 간단히 비교해보고 선택에 도움을 드리기 위해 이 글을 작성했습니다.

Lightsail은 사실 EC2를 이용해 만들어진 서비스입니다. 여러가지 설정과 요금 체계를 단순화하고 넉넉한 트래픽을 포함시켜둔 서비스입니다. AWS에서 라이트세일을 출시하기 전에는 EC2가 설정도 많고 요금도 너무 세분화되어 있어 도대체 얼마나 나올지 감이 안잡히기 때문에 디지털오션이나 리노드같은 VPS(가상사설서버) 서비스를 쓰는 사람들이 많았습니다. 그러던 중 Lightsail이 나오고 가격도 다운되고(제공되는 성능도 올라가고) 더 고성능의 인스턴스도 제공하게 되면서 선택의 폭도 크게 넓어졌습니다. 서울 리전까지 제공하니 VPS쪽에선 이젠 굳이 다른 서비스를 이용할 이유를 일부러 찾아야 하는 지경이 될 정도로 좋아졌네요.

EC2는 정말 온프레미스 서버를 운용하듯이 상세하게 설정할 수 있습니다. 스케일 아웃같은 서비스 이용도 쉽게 설정 가능하고 굉장히 유연합니다. 이런 장점 때문에 각 서비스 용량, 트래픽 등 EC2가 움직일 때 마다 과금되니 EC2 자체의 요금은 싸더라도 부가적으로 과금되는 항목들이 (사람마다 다 다르기 때문에)무엇이 있는지 불명확하고 그래서 막연한 불안감을 가지게 됩니다. 숨쉴 때 마다 세금 내는 나라에 사는 느낌이에요.


일단 AWS에서 돌려봐야지 생각했다면 EC2가 나을까요. Lightsail이 나을까요. 물론 정답은 없습니다. 하지만 여러 해외 커뮤니티의 의견이나 개인적으로 사용해보면서 느꼈던 주관적 판단 기준은 이렇습니다.

EC2는 회사에 인프라 관리자가 있거나 자신이 가상 서버, 네트워크, 디스크 볼륨, 보안 그룹 등의 관리가 쉽게 느껴지는 분에게 상대적으로 더 적합합니다. 상세 설정을 통해서 비용이든 성능이든 이득을 얻을 수 있는 환경에서 일하고 계시다면 EC2와 관련 서비스들의 유연한 환경설정은 큰 장점입니다. 뒤집어 이야기하면 이걸 하려고 정작 개발을 못하거나, 개발하는 시간보다 인프라 관리하는 시간이 더 들어야 하는 분에게는 주객이 전도된 상황이 생기겠지요. 또 네트워크 트래픽보다는 CPU 연산 위주의 프로젝트를 돌릴 때 더 유리합니다. 서버를 껏다 켰다 하면서 과금되는 시간을 조절할수도 있습니다.

Lightsail(라이트세일)은 인프라 관리해줄 사람이 없고 혼자서 뭔가 해보려는 분에게 더 적합합니다. 그렇다고 아예 리눅스나 터미널을 몰라도 된다는 아니고(이런 상황이면 헤로쿠나 파이썬애니웨어 같은 SASS 서비스로 가셔야 합니다) EC2를 쓰기 위해 붙여야 하는 AWS 자원에 대한 지식을 이야기하는 것입니다. Lightsail은 가격에 따라 정해진 CPU, 메모리, 디스크 용량을 선택하게 되고 정해진 가격 만큼 과금됩니다. EC2는 트래픽 당 별도로 또 돈을 내야하지만(사람들이 사이트에 접속해서 웹, DB서버 등에 통신이 이뤄지면 과금되는), Lightsail은 기본적으로 상당한 용량이 포함되어 있습니다. 또 데이터베이스나 네트워킹 등 설정 화면이 단순하고 명료합니다. 쓰다가 서버 성능을 올리고 싶으면 이미지를 떠서 고사양의 Lightsail 인스턴스를 만든다음 임포트하면 몇 분 안에 똑같이 생성됩니다. Lightsail은 CPU 연산 위주의 작업보다 네트워크 트래픽에 더 중점을 두는 서비스에 적합합니다. EC2와 다르게 서버를 껏다 켰다 하면서 과금 시간을 조절할 수 없고, 한번 생성하면 지우기 전까지 그냥 과금됩니다. (근데 서버를 껏다 켰다 할일이 별로 없더라구요.)

어느쪽이 내 상황에 맞는지 한번 시간을 정해두고 고민해보세요. 시간을 정하지 않으면 이거 고민하고 검색하는데 시간을 다 쏟아붓게 됩니다. :)