virtual servers, virtual private servers, virtual platforms 이라고도 부른다.
클라우드 서버는 네트워크를 통해 사용자가 액세스하는 호스팅된 가상 컴퓨팅 서버이다.
기존의 물리적 서버와 동일한 기능, 운영체제(OS), 어플리케이션을 지원한다.
→ 로컬 데이터 센터에서 기존의 물리적 서버와 유사한 성능 특성을 제공할 수 있게 된다.
대표적인 클라우드 서버의 모델에는 3가지가 있다.
클라우드 서버의 가장 일반적인 표현이다.
Public cloud 제공자는 자체 인프라로 호스팅 하여 사용자에게 서비스를 웹을 통해 제공해준다.
-> 이 때 웹 기반 인터페이스 또는 콘솔을 사용하게 된다.
infrastructure as a service (IaaS) 모델로 알려저있다.
예시로는 Amazon Elastic Compute Cloud instances, Azure instances, Google Compute Engine instances가 있다.
클라우드 서버가 on-premises private cloud내의 compute instance일 수 있다.
-> 이러한 경우 Local Area Network를 통해 내부 사용자에게 클라우드 서버를 제공하게 된다.
경우에 따라 인터넷을 통해 외부 사용자에게도 클라우드 서버를 제공한다.
(on-premises : 소프트웨어 등 솔루션을 클라우드 같이 원격 환경이 아닌 자체적으로 보유한 전산실 서버에 직접 설치해 운영하는 방식)
베어 메탈(bare metal) 서버라고도 불리는 물리적 클라우드 서버를 사용자에게 제공
custom virtualization layer을 배포해야 할 때, multi-tenant(다수의 사용자가 사용하는) cloud server에 수반되는 성능 및 보안 문제를 완화할 때 사용된다.
(bare metal : 하드웨어 상에 어떤 소프트웨어도 설치되어 있지 않은 상태를 뜻한다.)
클라우드 서버
다양한 양의 프로세서, 메모리 리소스를 함께 사용할 수 있다.
-> 다양한 컴퓨팅 옵션으로 사용 가능하다.
-> 사용자가 특정 요구 사항에 가장 적합한 instance type을 선택할 수 있다.
일반적으로 기존의 물리적 서버는 storage를 포함되는 것에 반해, 클라우드 서버는 storage resource가 포함되지 않는다. 대신 storage를 cloud를 통해서 제공을 한다.
Ease of Use
사용자에게 쉽게 서버를 제공할 수 있고, 물리적 서버와는 달리 서버 설치, 유지보수 또는 기타 작업에 대해 걱정할 필요가 없습니다.
Globalization
Public cloud server는 workload를 globalize할 수 있다.
-> 기존 centralized data center에서 지리적으로 멀리 있어 발생하는 네트워크 지연 및 중단으로 인한 성능 저하를 개선하여 사용자에게 더 빠르고 신뢰성있는 서비스를 제공할 수 있다.
Cost
Public cloud server는 pay-as-you-go pricing model을 따른다.
-> 기존의 물리적 서버와는 달리 일시적으로만 실행하거나 자주 사용하지 않는 워크로드의 경우 비용을 절감할 수 있다.
하지만 cloud server를 장기적으로 사용하거나, 풀타임으로 사용하는 비용은 서버를 소유하는 것보다 더 비쌀 수 있다는 단점도 존재한다.
(pay-as-you-go pricing model : 사용한 만큼 지불하는 방식)
Perfomance
Cloud server는 일반적으로 멀티 테넌트(Multi-tenant) 환경이다.
-> 사용자가 해당 서버의 물리적 위치를 직접 제어할 수 없게 된다.
-> 동일한 하드웨어에 있는 다른 클라우드 서버의 과도한 storage 또는 네트워크 요구로 인해 VM에 악영향을 미칠 수 있다.
이러한 문제를 "noisy neighbor" 라고 한다.
해당 문제는 앞서 설명한 Dedicated cloud server 또는 Bare-metal cloud server로 방지할 수 있다.
Outages and resilience
Cloud server는 일반적으로 공급자 환경의 오류 또는 예기치 않은 네트워크 중단으로 인해 주기적으로 예측할 수 없는 서비스 중단을 겪을 수 있는 단점이 존재한다.
Public cloud server에는 고가용성 또는 이중화가 존재하지 않는다. 따라서 workload에 대한 더 높은 가용성이 필요한 사용자는 workload에 대한 가용성을 의도적으로 설계해야 한다는 단점이 있다.
(고가용성: 서버와 네트워크, 프로그램 등의 정보 시스템이 상당히 오랜 기간 동안 지속적으로 정상 운영이 가능한 성질을 말한다.)
(이중화: 시스템의 가용성 높이기 위해 장비를 다중화 시키는 방법을 말한다. )