Why AWS

AWS 클라우드 서비스가 빠르게 성장하면서 서비스 제공자가 서버를 소유하지 않는 서버리스 아키텍쳐가 많이 회자되는것 같다. 여기서 물리적 서버는 없을지 언정, 서비스를 제공할 그 무언가는 여전히 있어야 한다. 그 무언가를 볼려면 AWS 같은 곳에서 제공하는 컴퓨팅 제품을 보면 된다.

클라우드 컴퓨팅 제품 - Amazon Web Services
엔터프라이즈 앱, 클라우드 네이티브 앱 또는 모바일 앱을 구축하든, 인간 게놈의 서열을 결정하기 위해 대규모 클러스터를 실행하든, 조직의 구축 및 운영은 컴퓨팅으로 시작됩니다. AWS에서는 포괄적인 컴퓨팅 서비스…aws.amazon.com

레거시 환경에서 클라우드로

클라우드 사업자들은 레거시 인프라 패러다임에서 낭비되던 자원을 클라우드를 통해 묶는다. (서버든 네트워크 장비든) 그리고 그걸 1) 쪼개고 2) 사용자들에게 터미널과 3) 접근을 관리하는 도구를 만들어 제공한다. 이 그림은 클라우드란 말이 워낙 광범위해서 모두에게 적용시킬 수 또는 클라우드만의 개념은 아니다. 단지 VM 이후 고도화된 가상화 서비스들은 이렇게 동작한다고 보면 된다.

사진만 보면 OS단이 사라진것 처럼 보이지만 사실 클라우드전용 OS가 있다. 이를 통해 자원을 효율적으로 쓰게 해준다. CPU를 예로 들었지만 HDD 저장공간도 서비스의 대상이다. 10만원 주고 사서 언제 고장날지 모르는 1TB를 10% 정도만 쓰던 시대가 끝난것이다

이런 하드웨어적인 관점에서 이야기를 했는데 AWS가 제공하는게 이게 전부는 아니다. 멀리 떨어져있는 가상의 자원들을 잘 다루기 위한 도구들도 있다. 구글 Function, 람다AWS같은 서비스를 위한 서비스들은 서비스와 서비스 사이에서 교통정리를 할 수 있게 도와준다. 아주 컴퓨터 자원을 잘라서 나눠서 쓰는게 PaaS라면 직접적인 서비스를 제공하는건 SaaS다.

그럼 클라우드에서 사용할 수 있는 서비스는 뭐가 있을까. 친숙해 보이고 흔한 3가지를 조사해봤다.

S3

정적인 자원을 관리하기 위한 제품인 S3는 버킷과 키라는 개념을 단위로 자원을 표현한다. 예전에 블로그에 사진을 올리고 사진의 URL을 커뮤니티 홈페이지에서 링크로 올렸던 시절을 기억하는 사람이 있을것같다. (나중에 CORS 때문인지 안되긴 했지만) 아마존이 그 시절은 기억하는건 아니겠지만 저장된 자원을 원하는 형태로 노출시키고 사용할 수 있는 서비스를 S3로 만들었다. 이걸로 정적인 웹서비스를 할 수 있다. 아직도 어떤 게시판에서 이미지 업로드를 지원하지 않는다면 S3에 이미지를 올리고 링크를 걸어보는것도 한번 시도해보고 싶다.

S3를 활용하면 이렇게 자원을 요청하고 받을 수 있다. 지금은 없는 URI라 실패했지만

EC2

EC2는 S3보다는 이해하기 쉬운 서비스다. 기존에 많이 VMware같은걸로 윈도우에서도 많이 활용했었기 때문이다. EC2 인스턴스를 생성해보면 단순하게 OS에 접속할 수 있는 터미널을 제공한다. 들어가면 그냥 평소에 보던 CLI 가 보일것이다. 컴퓨터를 빌려쓴다는 초입부의 설명에 가장 일치하는 서비스는 바로 EC2일것이다.

스케일업, 스케일아웃을 지원하는 EC2. DB를 설치해서 쓰기도 한다.약간 IT덕후들만 알것같은 VMware가 아니라도 블루스택 같은 프로그램에서 가상화 OS에 자원을 할당하는건 이제 익숙한 풍경이 되었다. 최적의 CPU, 램, 렌더링 옵션 조합을 연구하는 게이머들 cheers!

RDS

자원을 객체처럼 찍어내고 할당하는 클라우드 시대의 풍경

RDS는 EC2에서 나머지를 모두 빼버리고 특정 RDBMS 만 사용할 수 있는 터미널과 부가적인 컨트롤을 제공받을 수 있는 서비스라고 보면 될것같다. 이른바 Managed Service다. 디비 뿐만 아니라 여러가지 서비스를 아마존은 자신들이 감싼다음 손쉽게 쓸 수 있도록 서비스를 제공해준다. 따라서 우리가 돌아가는 환경에 대해 전혀 신경쓰지 않아도 이미 RDS 인스턴스가 생성될때 설치 및 유지관리를 위한 셋팅이 다 되어 있다. 사용자는 RDS의 주소와 계정정보만 알면 RDBMS를 쓸 수 있게 된다. DB를 보통 서버에 설치하고 관리할때 온갖 이슈가 터져나오는걸 회상해볼때 정말 편리하다. 암호, 보안, 백업, 이중화처리 등에 대한 Best Practice를 GUI에서 클릭으로 하게 됬으니 말이다. 스토리지 크기 또한 스케일링 된다. 머리아프게 리소스예측하는것도 이젠 그만 ( 대신 AWS Billing 계산 )

Categories:

Updated:

Leave a comment