1. [클라우드 서비스] 개념편
1. 클라우드 서비스(cloud service) 란?
- 내 자원은 사용하지 않고 다름 사람의 자원을 빌려서 사용하는 개념 입니다.
- 컴퓨터를 월세 내고 쓰는 것과 같습니다.
- 그리고 이러한 클라우드 서비스를 구현 하기 위해서 가상화 기술이 필수로 사용 됩니다.
한정된 자원을 쪼개서 사용하는데 가상화 만큼 좋은 것은 없습니다.
2. 클라우드 서비스의 모델
- 클라우드는 서비스는 다음과 같은 3가지의 서비스 모델을 가지고 있습니다.
1) IaaS(Infrastructure as a Service)
- h/w(cpu/메모리/디스크/네트워크 등) 물리 적인 자원을 가상화 하여 제공 합니다
Ex) 아마존 AWS EC2 가 IaaS 입니다.
2) PaaS(Platform as a Service)
- hw + OS + runtime S/W[(Runtime(java) + Platform(Spring, Haddom, DBMS) 를
가상화 하여 제공 합니다.
Ex) 아마존 AWS EMR 이 PaaS 입니다.
3) SaaS
- hw + 기본 S/W + 서비스 할 S/W 를 가상화 하여 제공 합니다.
- 즉. 전체 서비스를 제공
Ex) Google Drive, MSoffice.com 이 SaaS 입니다.
3. 가상화 란?
1) 기본 개념
- 컴퓨터 내에 컴퓨터를 또 만드는 것 입니다.
- CPU, 메모리, 저장장치, 네트워크등을 추상화 하는 방법으로 가상화를 구현 됩니다.
2) 가상화 레벨
(1) API(Application Programming Interface)
- 응용프로그램 레벨의 함수/메소드, 언어독립적인 경우에 사용되는 가상화 입니다
Ex) Linux 에서 Win32API를 가상화하여 돌아가게 할 때 사용합니다.
* WINEHQ 프로젝트, WINS32API를 리눅스에서 지원하게 해주는 프로젝트
(2) ABI(Application Binary Interface)
- platform 과 S/W 사이의 interface를 정의
- API 보다 낮은 level, 흔하진 않습니다.
- API는 유지 되며서 ABI는 변경되는 경우에 사용
즉, 코드는 유지하면서 재컴파일 합니다.
Ex) API 사용법은 변경 되지 않았으나 API 내부가 변경 되었을때 사용합니다.
(3) ISA(Instruction Set Architecture)
- 가장 많이 쓰는 가상화 방식 입니다
- H/W 가상화
- H/W와 S/W사이의 interface를 정의
3) 일반 적인 가상화 방식
- 실제 물리 적인 컴퓨터에 가상된 컴퓨터를 OS까지 설치하여 올리는 방식
4) 가상화 확장 방식
(1) scale up
- 가상화 서버를 업그레이드 하는 방식
(2) scale out
- 동일한 성능의 기상화 서버를 여러개를 만드는 방식
- 일반적인 방식 입니다.
3. 클라우드 서비스의 가상화 적용 사례
1) 아마존 AWS(Amazon Web Service) (유료)
- EC2(IaaS)/EMR(big data 처리)/S3/RDS/..
- Elastic Computing Cloud/Elastic MapReuce,
2) MS Azure (유료)
3) DropBox, N-Drive, 다음클라우드, U클라우드 (유료)
4) 구글 드라이브 (유료)
5) OpenStack (무료)
- IaaS 스타일의 opensource cloud 구축 platform
- 리눅스의 KVM을 기본 하이퍼바이저로 사용
'Cloud > 클라우드' 카테고리의 다른 글
4. [클라우드 서비스] hypervisor 와 docker의 차이점 (0) | 2019.02.24 |
---|---|
3. [클라우드 서비스] hypervisor 관리 툴 - vagrant (0) | 2019.02.23 |
2. [클라우드 서비스] 가상화 개념 (0) | 2019.02.23 |