728x90
반응형
클라우드 컴퓨팅 : 네트워크 기반의 컴퓨팅 기술
- 컴퓨팅 리소스를 데이터 센터에 대량으로 집적 -> 이용자가 요구하는 만큼 가상으로 분리하여 정보통신망을 통해 제공
- 사용량에 비례하여 비용 청구
IaaS (Infrastructure as a Service) - IT 전문가
PaaS (Platform as a Service) - S/W 개발자
SaaS (Software as a Service) - 최종 사용자
IaaS (Infrastructre as a Service)
- CPU나 하드웨어 등 컴퓨팅 리소스(자원)를 네트워크를 통해 서비스로 제공하는 모델
IaaS 가상화 유형
- hypervisor : OS 환경을 통째로 가상화 함
- 장점
- 가상 서버마다 OS를 선택할 수 있음
- 가상 서버들이 완전 분리되어 있음
- 단점
- 가상 서버마다 OS가 필요하므로 하드웨어 리소스의 소비량이 많음
- 가상 서버의 부팅에 시간이 걸림
- 장점
- container : 하나의 호스트 OS에서 멀티 OS 환경을 구현함
- 장점
- 하나의 호스트 OS에서 여러 개의 OS를 동시에 이용할 수 있음
- 다른 컨테이너로의 복제성과 이식성이 뛰어남
- 단점
- OS 커널을 공유하므로, 각 OS 이미지는 각 OS에서만 실행 가능
- 하나의 호스트 OS를 공유하기 때문에 컨테이너 하나가 공격을 받으면 다른 컨테이너도 위험에 노출 가능성 있음
- 장점
PaaS (Platform as a Service)
- 기업의 애플리케이션 실행 환경 및 애플리케이션 개발 환경을 서비스로써 제공하는 모델
PaaS 종류 3가지
- PUBLIC : 서비스 제공업체가 구축한 서버 등 IT 인프라를 기업들이 사용료를 내가 이용하는 방식 (aws, heroku 등)
- HYBRIDE : Public, Private 동시에 제공하고 장점만 선택해 사용 가능 (Azure)
- PRIVATE : 기업 자체적으로 데이터센터 내 클라우드 환경 구축에 사용
IaaS 자원 위에 여러 인스턴스들의 유기적인 조합으로 PaaS 동작
PaaS 동작 원리
- 배포 명령 실행
- Diego 컨테이너 생성(안외워도됨)
- Application 코드 배치
- 적합한 Buildpack 찾기(스템셀에서 찾아와 릴리즈에서 제작)
- 컴파일 진행
배포 -> 컨테이너 생성 -> 코드 배치 -> Buildpack 찾기 -> 컴파일 -> Droplet Archive -> Blobstore에 저장
Blobstore : 컨테이너로 생성된 서비스는 복제해서 배포함, 2개 이상으로 분리되어 백업에 사용
- b. Diego Cell은 Droplet을 blobstore에 저장한다.
- c. 스테이징된 어플리케이션을 다음에 사용 할 수 있도록 빌드팩 캐시를 blobstore에 업로드 한다.
PaaS 주요 용어
- BuildPack : 언어별 프로그램이 동작할 수 있도록 언어 프레임워크등의 기술 지원
- Org & Space : 효과적으로 업무를 구분할 수 있는 논리적인 그룹 기능
- Service Packs : 제공 가능한 서비스들
Build Packs(껍데기를 만드는 것) : 언어별 프로그램이 동작할 수 있도록 언어, 프레임워크 등의 기술 지원
Service Packs(껍데기를 지원하는 것) : 데이터베이스, 스토리지 등의 저장소의 역할 Org & Space : 업무를 구분할 수 있는 논리적인 그룹 기능, 배포하고 관리하는 기능 Org : 개인 또는 여러 공동 작업자가 소유하고 사용할 수 있는 개발 계정, 각 계정은 ORG에 롤을 부여받음
- BOSH : IaaS환경에서 Stemcell, Deployment, Release를 이용하여 vm들을 관리 (Stemcell, Deployment, Release, Manifest)
SaaS (Software as a Service)
- 업무에서 사용하는 sw의 기능을 인터넷 등 네트워크를 통해 필요한 만큼 서비스로 제공
SaaS 기술적 특징
- 환경 설정 : 소스코드 레벨 수정 없이 사용자의 요구사항 수용
- 다중 사용자 지원 : 하나의 어플리케이션을 다수의 사용자가 공유
- 확장성 : 다수의 인스턴스를 생성, 사용자의 데이터 분산 처리
IaaS를 기반으로 SaaS를 개발하면,대부분기존 응용SW를 IaaS 환경으로 설치하는 것으로 그치거나, 기술적인 문제를 고민하지 않아 실패로 끝남
→ PaaS 있어야함
PaaS는 컨테이너를 기반으로 한 미들웨어 성격의 클라우드 서비스로 SaaS의 개발과 실행 지원
Microservices 구성
- 쓰고싶은 db만 따로 사용 가능
- 더 빠른 출시 개발 주기가 단축되기 때문에 마이크로서비스 아키텍처는 보다 민첩한 배포 및 업데이트를 지원합니다.
- 높은 확장성 ...
- 뛰어난 복구 능력 ...
- 손쉬운 배포 ...
728x90
반응형
'CS > Cloud' 카테고리의 다른 글
[클라우드] 스케일링, 로드밸런싱, Cloud Native Application (0) | 2023.02.02 |
---|---|
[클라우드] 쿠버네티스, 도커, 레이어 (2) | 2023.02.02 |
[클라우드] Cloud Native Application, Devops 용어 (0) | 2023.02.02 |
[클라우드] App 종류, Cloudfoundry, kubernetes, PaaS BOSH (0) | 2023.02.02 |
[클라우드] API, SOAP, REST, YAML (0) | 2023.02.02 |