AWS는 Amazon Web Services의 약자로 아마존(Amazon)에서 제공하는 클라우드 컴퓨팅 서비스다.
이 글은 사용법 보다는 개념 설명을 중점적으로 작성하였다.
1. 클라우드 컴퓨팅
먼저 클라우드 컴퓨팅 이란, 사용자의 환경 밖에서 서비스로서 제공된 확장 가능한 컴퓨팅 리소스를 서비스 해주는 것이다. 그리고 해당 서비스는 사용량에 따른 일정한 비용을 지불하게 된다. 간단하게 고성능 PC를 집이 아닌 PC방같은데에서 시간당 요금을 내고 사용하는 것과 비슷하다고 보면 된다.
클라우드 컴퓨팅은 크게 SaaS, PaaS, IaaS로 나뉘는데, 간단하게 정리하면:
- SaaS (Software as a Service): 서비스에서 호스팅 방식으로 소프트웨어를 제공하는 것
일반적으로 웹에 접속을 하여 로그인등을 통해 사용할 수 있게 되는 서비스다. 대표적으로 웹 메일, 구글 클라우드, 네이버 클라우드, MS OFFICE 365 등이 있다.
- PaaS (Platform as a Service): 플랫폼을 빌려 개발할 수 있게 해주는 서비스
응용 프로그램 자체를 제공하기 때문에 개발자는 빠르고 안전하게 할 수 있다. 또한 데이터베이스 관리, 운영체제 등이 포함된다. 대표적으로 구글 앱 엔진, 오라클 클라우드 플랫폼 등이 있다.
- IaaS (Infrastructure as a Service): 인프라스트럭처, 즉 기반 시설 (서버, 스토리지 등)을 빌려주는 서비스
이 글에서 다룰 AWS처럼 사용한 만큼의 비용을 지불하며 스토리지, 호스팅, 컴퓨팅, 네트워킹등의 인프라를 빌려 사용하는 것이다.
2. AWS - EC2
Amazon EC2는 Amazon Elastic Compute Cloud의 약자로 안전하고 크기 조정이 가능한 컴퓨팅 파워를 클라우드에서 제공하는 웹 서비스다. 이를 사용하면 별도의 하드웨어를 준비할 필요가 없어 더 빠르고 안전하게 어플리케이션을 개발하고 배포할수 있다. Elastic, '유연한' 이라는 단어 뜻에 맞게 아마존에서는 해당 서비스를 사용자가 필요할때 언제든 만들고 시작하고 종료할 수 있다. 사용과정을 간단히 설명하자면 다음과 같다:
1) AWS 계정 로그인: 먼저 해당 서비스를 이용하려면 당연하게도 AWS 계정이 필요하다. AWS계정은 12개월간 정해진 제한선 안에서 무료로 사용할 수 있으나, 어찌됐든 계정을 생성하기 위해선 결제가 가능한 카드를 등록해야 하므로, 사용량을 항상 주시해야 합니다. (교육용 버전으로 카드등록 없이 생성하는것도 있다고 합니다.) 계정을 생성했으면 AWS Management Console을 통해 나만의 EC2를 시작할 수 있다.
2) 인스턴스 시작: 계정을 생성했으면 Amazon EC2 대시보드에서 [인스턴스 시작] 버튼을 눌러 나의 인스턴스를 시작한다.
3) 인스턴스 구성: 인스턴스를 시작하면 본인의 인스턴스를 어떻게 구성할 것인지에 대한 설정창이 나온다. 여기서 운영체제, 세부정보 구성, 스토리지, 태그, 보안 그룹 등을 설정할 수 있다.
4) 인스턴스 연결: 구성을 마친 인스턴스는 'Launch SSH Client'를 통해 연결할 수 있다.
5) 인스턴스 종료: 해당 서비스는 프리티어로 사용하면 무료이지만, 추후 추가 비용발생을 막으려면 사용 후 인스턴스를 종료해야한다. 이때 EC2 인스턴스 및 관련 데이터가 삭제된다. 참고로 이는 삭제와 비슷한 개념이라 주의해야 한다.
3. AWS - 장단점
AWS의 장점:
1) 사용량에 따른 지불
- 일반적인 웹 호스팅 사이트는 월 고정액이 있는 반면, AWS같은경우 사용량이 적으면 그만큼 적게 지불한다.
2) 실시간 서버 설정
- 일반적인 웹 호스팅같은 경우 갑작스러운 트래픽 증가 등으로 인해 사이트가 느려지거나 터지는 경우가 종종 발생한다. 하지만 AWS같은경우 해당 경우에 대해 자동적으로 작동하게끔 설정을 할 수 있으며, 당연히 수동적으로도 설정할 수 있다
3) 주요 지표 모니터링
- AWS에서는 접속률 등의 많은 데이터를 제공해준다. 이를 잘 분석하고 활용한다면 상당히 유용한 데이터를 확보할 수 있다.
* 클릭 몇번으로 서버 이중화 작업이 가능하다.
AWS의 단점:
1) 사용량에 따른 지불
- 위에서 장점이라 적었지만 단점이기도 한 항목이다. 실제 사용량을 제대로 모니터링을 안하면, 요금폭탄을 맞을 수가 있다.
견해
이번에' 생활코딩과 함께하는 AWS 탐구생활 킥오프'!를 통해 AWS에 대해 스터디를 신청하였으나,
역시나 전에 찍어둔 영상을 틀어주며 자습하는 방식(?) 이었다. 이 업계 공부가 그렇지 뭐..
아직은 시작단계라 자세히 모르기도하고 솔직히 장점에 대해 공감할 수가 없다.
(현재로썬 cafe24가 차라리 쉽고, 싸고, 편하다고 느껴짐)
거기에 요금관련해서 대충 검색해도 굉장히 많은 사건사고가 있다..
물론 개인의 실수이지만 나 또한 이 실수를 하지 않으리란 보장이 없으므로 상당히 두렵다....
앞으로 본격적으로 서버를 구축해보면서 해당 글과 AWS에 대한 정보를 업데이트 하도록 하겠다.
'dev > others' 카테고리의 다른 글
OSI 7계층 정리표 ( + TCP/IP, 역할, 대표장비, 프로토콜, 전송단위) (0) | 2023.04.19 |
---|---|
Flutter란? (0) | 2020.12.03 |
[Git] 깃 코드 정리 (Windows 기준) (0) | 2020.02.19 |