가상화 vs 클라우드

사내에서 기존처럼 WEB/WAS 구축 중에 어느 날 기존과 hostname이 다른 서버가 등장했다.
알고보니 사내 클라우드에 올라간 서버가 신규로 구축된 것이었다.
IDC에 올라간 서버들과 동일하게 설치작업을 진행했는데, 알 수 없는 이유로 서버간 통신이 안되 설치가 잘 안됬다.

사수: “클라우드는 화이트리스트라 방화벽 오픈신청 해야될껄?”

나: “아.. 가상화 해서 그래요 ?”(아무말 대잔치)

사수: “ㅇㅇ. 근데 IDC에 있을때도 가상화한거긴 해”

나: “???”

(*화이트리스트: 허가된 사용자만 서비스를 사용할 수 있도록 하는 보안 정책 방법 중 하나.) 그리하여 클라우드와 가상화 기술의 차이점을 알아보는 시간을 갖게 되었다.

가상화

컴퓨터에서 컴퓨터 리소스를 추상화하는 기술. 물리적인 컴퓨터의 리소스를 나눠서 여러대가 있는 것 처럼 사용하는 기술.

클라우드

인터넷 기반의 웹 소프트웨어로 서비스를 제공하고 실시간 확장성을 보장하며 사용한 만큼 비용을 부과하는 서비스의 형태. -> 돈내면 기능/자원을 주는 서비스 정도로 해석할 수 있음.

클라우드의 특징 몇가지

1. On-demand Self-service
- 언제 어디서나 인터넷을 이용하여 서버, 스토리지, 네트워크 등의 인프라 자원을 만들 수 있다/ 
  인터넷만 있으면 서버를 생성할 수 있고, 콘솔에 붙어 작업할 수 있다.
2. 리소스 풀링. 
- 스토리지, 프로세서, 메모리, 네트워크 등의 인프라 자원을 분할하여 풀 만들고 원하는 만큼 갖다 쓸 수 있음.
3. 민첩한 탄력성 (rapid elasticity). 
- 트래픽에 맞춰 임계치 이상/이하일 때에 리소스를 추가 할당 및 정리 가능. 오토스케일링이라고도 함.
4. 리소스 사용량의 측정, 모니터링을 통해 비용 청구 및 유지 보수/증설 계획 수립이 가능하도록 한다. 사용한 만큼 지불한다.


즉, 클라우드에도 가상화 기술이 쓰이는데 클라우드는 위와 같이 4가지 특징을 갖는 서비스를 뜻한다.
클라우드 서비스에는 IaaS(Infra as a Service), PaaS(Platform as a Service), SaaS(Software as a Service) 와 같이 다양한 종류의 서비스들이 존재한다.
우리가 익히 들어본 AWS의 EC2, GCP의 GCE는 IaaS에 속하고, AWS의 S3등이 PaaS에 속하는 제품이다.

클라우드 서비스 제공 모델

보안/정책 등의 관점에서 어떠한 모델로 가져갈 것인가에 대한 표현이다.

  1. 퍼블릭 클라우드 : 돈만 내면 누구나 쓸 수 있음. 예) 아마존 AWS, 구글 GCP, 마이크로소프트 Azure.
  2. 프라이빗 클라우드 : 기업이 내부 인프라에 구축하여 내부에서만 이용하는 사내 클라우드.
    이 외에도 하이브리드 클라우드, 커뮤니티 클라우드 등의 모델도 있다.
    서비스 제공 모델에 따라 보안정책에 제한이 생긴다.

MSA와 클라우드의 관계

클라우드와 MSA는 뗄레야 뗄 수 없다. Dev의 측면에서 MSA가 핫이슈라면 Ops의 측면에서는 클라우드가 핫하다.
근데 왜?

이렇게 클라우드와 일반 가상화 차이점에 대해서 정리해보았다.
요약하면 가상화는 ‘기술’ 이고 클라우드는 이 기술을 이용하여 만든 ‘서비스’이다.
다음엔 컨테이너와 가상화와의 차이점에 대해서도 정리해봐야 겠다.