학습내용
- 클라우드의 개념
- 가상화(Virtualization)
- 클라우드/가상화 적용사례
학습목표
- 클라우드의 개념(SPI모델)에 대해 알아본다.
- 클라우드의 적용사례에 대해 알아보고 가상화 기술에 대해 이해한다.
SPI모델
- 가장 일반적인 클라우드 구분법
- IaaS (Infrastructure as a Service)
- 서버자원 (CPU/apahfl/eltmzm/spxmdnjzm),...
- 아마존 AWS EC2
- 예) CPU 쿼드코어를 가지는 16G 메모리 / 4T디스크 장비를 임대하겠다.
- PaaS (Platform as a Service)
- OS+ Runtime(Java) + Platform(Spring, Hadoop, DBMS, ...)
- 아마존 AWS EMR
- Hadoop이 설치된 장비를 임대
- SaaS (Sofrware as a Service)
- Google Drive, MSOffice.com, ...
- IaaS (Infrastructure as a Service)
- 클라우드를 구축하기 위한 요소기술 (Enabling Technology)에 가상화기술과 도커와 같은 컨테이너기반 기술이 있다.
가상화의 개념
기본개념
- 가상화(Virtualization)
- 컴퓨터 자원 (CPU, 메모리, 저장장치, 네트워크 등)의 추상화
- 가상화의 레벨
- API(Application Programming Interface)
- 응용프로그램 레벨의 함수/메소드, 언어독립적인 경우도 있슴.
- ABI (Application Binary Interface)
- 플랫폼과 소프투웨어 사이의 인터페이스 정의
- API보다 낮은 레벨
- API는 유지되면서 ABI는 변경되는 경우
- 코드는 유지하면서 재 컴파일
- 코드는 유지하면서 재 컴파일
- ISA(Instruction Set Architecture)
- 하드웨어와 소프트웨어 사이의 인터페이스 정의
- API(Application Programming Interface)
ISA레벨의 가상화 예
- 하드웨어 가상화
API레벨의 가상화 예
- WINEHQ 프로젝트
- Win32 on Linux
가상화의 예
한서버에 여러개의 OS를 사용하는것이 일반적
Scale-Up vs Scale-Out
클라우드 서비스
- 아마존 AWS (Amazon Web Service)
- EC2 : IaaS
- EMR : PasS (빅데이터 처리)
- S3 : 디스크, DB 서비스
- RDS ...
- Elastic Computing Cloud / Elastic MapReduce
- Simple Storage Service, Relational Database Service
- MS 애저 (Azure)
- 드랍박스, N드라이브, 다음클라우드, U클라우드, ...
- 구글드라이브
- 클라우드 디스크 + 오피스 + PDF viewer, ...
- OpenStack (오픈소스로 IasS를 구축)
- IasS 스타일의 오픈소스 클라우드 구축 플랫폼
- KVM을 기본 하이퍼바이저로 사용.