정리된 용어를 사용할 필요를 느껴 정의 및 개념을 정리한 포스팅
Iaas
- 인프라만 제공
- OS를 직접 설치하고 필요한 소프트웨어만 제공
- EC2
Paas
- 인프라+OS+런타임(기타 프로그램 실행에 필요한 부분)
- Firebase, Google App Engine
- 코드만 올려서 실행
Saas
- 서비스 자체를 제공
- Gmail, Slack, Google Docs 등
고가용성
- 장애 상황을 해결하고 서비스를 지속할 수 있는 능력
장애내구성
- 장애에도 불구하고 서비스를 지속할 수 있는 능력
- 일반적으로 예비 인프라가 필요
둘 중 어떤 것을 확보할지 비용에 따라 고민이 필요함
확장성
- 쉽고 빠르게 규모를 늘릴 수 있는 능력
- 주요 수요에 따라 컴퓨팅 파워 혹은 용량 확장
탄력성
- 수요에 따라 컴퓨팅 파워/용량을 확장하거나 축소할 수 있는 최적화에 필수적인 능력
온프레미스
- 자체적으로 데이터센터 혹은 전산실에 서버를 설치해 운영하는 방식
- 클라우드 서비스의 반대개념
프로비전
- 리소스를 사용할 수 있도록 준비
- EC2,AWS 서비스등을 사용하기 위해 준비하는 것을 의미
가상화
- 단일 컴퓨터의 하드웨어 요소를 일반적으로 가상머신이라고하는 다수의 가상 컴퓨터로 분할할 수 있도록 해주는 기술
- 가상화가 나타나기 전까지는 하나의 하드웨어 시스템은 하나의 OS만 실행이 가능했음
1세대 완전 가상화(Fully Emulated)
- 모든 시스템 요소가 에뮬레이터 안에서 돌아감
- 즉 CPU, 하드디스크 등 모든 요소를 에뮬레이터로 구현하여 게스트 OS와 연동
- 엄청 느림 → 모든 요소를 소프트웨어로 구현해야함
2세대 Paravirtualization
- Guest OS는 하이퍼바이저와 통신
- 하이퍼바이저: OS와 하드웨어 사이에 존재하는 일종의 가상화 매니저
- 1세대보다 훨씬 빠름
3세대 HVM
- 하드웨어에서 가상화를 직접 지원
- 직접 Guest OS가 하드웨어와 통신 = 빠른 속도
- EC2가 여기 해당
가상화는 AWS 클라우드 환경에서 리소스를 작은 단위로 빠르게 구성할 수 있는 원동력