Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>

클라우드 데이터 센터 구축

클라우드 데이터 센터를 구축해 보려 한다. 클라우드 시스템의 최소 요구조건은 아래와 같다.
  1. On-demand service : 자원을 할당하기 위해서 시스템 관리자가 개입하면 안된다.
  2. Broad network access : 어떤 종류의 네트워크 기기 건(휴대전화, 태블릿, 노트북, 워크스테이션)간에 표준적인 방법으로 네트워크에 접근 할 수 있어야 한다. 예컨데, 판매팀은 도로에서 태블릿 PC를 이용 CRM 시스템에 접근해서, 세일즈 정보에 접근할 수 있어야 한다. CEO는 스마트폰을 이용해서, 판매팀의 요청을 검토하고 승인 할 수 있어야 한다.
  3. Resource pooling : 스토리지, 네트워크, 메모리는 논리적인 pooling로 묶을 수 있다. 유저가 자원을 (on-demand service)요청하면, 자원 풀에서 가용한 자원을 찾아서 유저에게 할당한다. 자원을 효율적이고 탄력적으로 운용할 수 있게 하는 특성이다.
  4. Rapid elasticity : 자원의 탄력적 운용이 가능해야 한다. 유저가 요청한 자원은 신속하게 배치할 수 있어야 한다. 또한 추가적인 확장 요구 또한 자동적으로 혹은 빠르게 지원해야 한다. 예를 들어 현재 당신이 사용하는 서비스 네트워크 대역폭이 10M/Sec라고 가정해보자. 이벤트 혹은 서비스의 성장으로 100M/Sec가 필요하면, 관리자의 작업없이 자동적으로 대역폭을 늘릴 수 있어야 한다. 관련된 인스턴스들도 마찬가지다.
  5. Measured service, or pay-per-use model : 서비스별, 유저별 사용량을 측정하고 과금할 수 있어야 한다.
이 요구사항은 최소한이다. 하나라도 만족하지 못하면 가상화 서비스이지, 클라우드 서비스가 아니다. 예를들어 유저가 웹으로 로그인해서 IT 관리자의 도움없이, 새로운 가상 머신을 만들수 있는 기능이 있다. 그런데, 네트워크 사용량, 비용, 디스크 공간 등을 모니터링 할 수 없다면, 이 인프라는 클라우드 시스템이 아니다.

디자인 패턴

그동안 클라우드/시스템/네트워크 관련된 정보를 모아서, 클라우드 디자인 패턴으로 정리해 볼 생각이다. 하이퍼바이저, 네트워크, 스토리지, 모니터링, 프로비저닝, 자동화, 정책, 보안 등 다룰 수 있는 모든 내용들을 정리한다.