학습(공부)하는 블로그 :: '에뮬레이션' 태그의 글 목록
 

 

Notice»

Recent Post»

Recent Comment»

Recent Trackback»

04-23 08:43

 

'에뮬레이션'에 해당되는 글 2

  1. 2012.07.13 [11강] 스토리지 가상화
  2. 2012.07.12 [9강] 가상화 개념
 

[11강] 스토리지 가상화

컴퓨터 활용/클라우드 컴퓨팅 | 2012. 7. 13. 17:01 | Posted by 깨비형
반응형

1. 스토리지 가상화

 

  ○ 스토리지 가상화
    ▷ 스토리지 사용의 엄청난 증가 추세는 매일 매일의 스토리지 운영 및 데이터 관리에 많은 부담을 증가시켜왔다.
    ▷ 결과적으로 가용성과 프로비져닝에 대한 서비스 레벨을 만족시키는 것이 커다란 과제로 다가오고 있다.
    ▷ 이러한 부담을 없애기 위해서 기업들은 디스크와 테이프 스토리지 가상화 기술에 눈을 돌리기 시작했다.
    ▷ 스토리지 가상화는 온 디맨드 전략의 필수적 일부분으로써 애플리케이션에 거의 또는 전혀 영향을 미치지 않으면서도 하드웨어 인프라스트럭쳐에 변경을 가할 수 있게 해준다.
    ▷ 그럼으로써 관리를 용이하게 하고, 애플리케이션의 가용성을 증가시키고, 총 소유 비용을 낮출 수 있게 해준다.
    ▷ 스토리지 가상화의 4가지 주요한 형태로 분류 할 수 있다.
     1) 디스크 컨트롤러 가상화
     2) SAN 상의 스토리지 블럭가상화
     3) 파일 가상화
     4) 테이프 가상화

 

   1) 디스크 컨트롤러 가상화 (Disk Controller Virtualization) :
    ▷ 디스크 컨트롤러 가상화는 스토리지 서브시스템 또는 컨트롤러를 파티션으로 나누어 마치 여러 개의 스토리지 컨트롤러가 있는 것처럼 보이게 해준다.
      - 예를 들어, IBM의 System Storage DS8000 계열이 이런 기능을 제공한다.
    ▷ 예를 들어 아래 그림 처럼 디스크 컨트롤러 1개가 3개의 가상 스토리지 컨트롤러로 파티션 되어서 하나는 OLTP 워크로드를 수행하고, 하나는 BI(Business Intelligence) 워크로드를 수행하고 마지막 나머지 하나는 e-메일 서비스를 수행할 수 있다.
    ▷내부적으로는 논리적 파티셔닝(LPAR) 기술을 사용해서, 어떤 가상 디스크 컨트롤러의 성능이 다른 어떤 가상 디스크 컨트롤러가 수행하는 워크로드로부터도 영향을 전혀 받지 않게 해준다. 표준 애플리케이션을 하나 또는 그 이상의 파티션 자체에서 수행할 수 있게 된다.

 

   2) SAN 상의 스토리지 블럭 가상화
    ▷ 대부분의 사람들이 스토리지 가상화를 이야기할 때, 주로 SAN 상의 스토리지 블록 가상화를 가리킨다고 보면 된다.
      - 이러한 형태의 가상화는 사용자로 하여금 제각기 물리적으로 다른 스토리지 컨트롤러에 들어있는 유휴 디스크 조각을 모아서 가상 디스크를 생성할 수 있게 해준다.
      - 예를 들어 어떤 관리자가 디스크 컨트롤러 A로부터 300GB의 유휴디스크를, 컨트롤러 B로부터는 500GB를, 컨트롤러 C로부터는 200GB의 유휴 디스크를 모아서 1TB의 가상 디스크를 생성할 수 있다.
      - 결국 스토리지 블록 가상화는 제각기 다른 스토리지 컨트롤러들로부터 작은 용량의 유휴 디스크 공간을 모아서 하나의 큰 디스크 풀을 만들어서 어떤 서버도 사용할 수 있게 만들고, 디스크 스토리지의 활용률을 획기적으로 향상시킨다.
    ▷ 블록 가상화는 3가지 방법이 있다.
      - 어플라이언스 형태(예, IBM SAN Volume Contoller 또는 IBM SVC)
      - 지능적인 SAN 스위치(예, EMC의 Invista)
      - 스토리지 컨트롤러 자체에 임베디드된 형태(예, 히타치의 TagmaStore)
    ▷ 어플라이언스 또는 스위치는 서버와 스토리지 컨트롤러 사이에 위치한다.
    ▷ 임베디드된 가상화는 서버들과 다른 스토리지 컨트롤러 사이에 존재한다.
    아래 그림은 스토리지 블럭 가상화의 구조도 이다.


    ▷ 구조
      - 스토리지 가상화 솔루션들은 모두 가상 디스크에서 실제 디스크로의 위치에 대한 맵핑을 유지한다.
    ▷ 가상화 방법
      - 맵핑을 통해 하나의 물리적 위치에 대응하고 있는 가상 디스크를 다른 물리적 위치로 이동하여 대응 시킬 수 있다.
      - 이 때 서버 및 애플리케이션은 서로에게 아무런 영향을 끼치거나 받지도 않으면서 정상적으로 작동된다.
    ▷ 장점
      - 이러한 기능으로 인해 스토리지 관리자는 애플리케이션의 가용성에 아무런 영향을 미치지 않고서도 서버에서 스토리지의 데이터 맵핑을 자유롭게 재구성할 수 있게 해준다.
      - 블럭 가상화은 전체 기업 내에 걸쳐서 일관된 방법으로 서버들이 필요로 하는 고급 기능을 제공할 수 있다.
       ·예를 들어, 모든 서버들에 대하여 동일한 방법으로 스냅샷 카피 또는 리모트 카피와 같은 카피 서비스 기능을 제공할 수 있다.
      - 서버들은 수많은 스토리지 컨트롤러들 대신에 하나의 SAN 상의스토리지 가상화 솔루션하고만 인터페이스를 유지하면 된다.
      - 또한 사용자들은 각 스토리지 컨트롤러마다 하나씩 제공되는 디바이스를 모두 올릴 필요도 없이 단지 하나의 디바이스 드라이버만 로딩하면 된다(실제로 각 디바이스 드라이버 간에 충돌 여부가 발생하기도 한다).

 

   3) 파일 가상화
      - 파일 가상화는 이기종 서버간에 진정한 의미의 파일 공유를 가능하게 한다.(아래 그림 참조)
      - 즉 파일 가상화 기술을 이용함으로써 기업 내의 어떤 컴퓨터 또는 어떤 서버로부터라도 동일한 파일 네임을 사용하여 공통된 파일 그룹에 대한 접근이 가능하다.
       · 예를 들어, 파일은 리눅스가 돌아가는 컴퓨터에서 생성되었지만 윈도우가 돌아가는 다른 서버에서 동일한 파일 네임을 가지고 접근이 가능하다.
       · 이렇게 되면 서로 다른 서버들간에도 HA(Hardware Address)를 위한 클러스터가 가능할 수 있게 된다. 


   4) 테이프 가상화
    ▷ 테이프 가상화는 아래 그림 처럼 디스크를 이용하여 테이프 드라이브 자원인 것처럼 에뮬레이션 함으로써, 서버입장에서는 테이프 드라이브로 데이터를 백업 받는다고 간주하지만 실제로 디스크로 데이터를 백업 받게 되는 것이다.
    ▷ 또한 데이터의 일부분이 테이프에 비해 좀 더 빠른 하드디스크스토리지 캐쉬에 저장되기만 해도 마치 전체 데이터가 테이프 카트리지에 전부 저장된 것처럼 보이게 해주는 방식을 통해 데이터를 고속으로 백업 받을 수 있게도 해준다.

  ○ 네트워크 가상화
    ▷ 애플리케이션이나 서버를 네트워크 또는 다른 가상 자원들에게 물리적으로 연결하는데 사용되는 IT 자원들을 가상화하는 능력들의 집합체로 볼 수 있다.
    ▷ 여기서 가상화 가능한 네트워크 자원들에는
      - IP 어드레스,
      - 네트워크 어댑터,
      - LAN,
      - 대역폭 관리 등이 포함된다.

 

  ○ 장점
    ▷ 네트워크를 가상화함으로써 사용자는 IT 인프라스트럭쳐에 걸쳐서 좀 더 효율적이고, 비용 효과적이며, 안정적이며 가용성 있는 통신체계를 만들기 위해 네트워크 요소를 풀링하고 공유할 수 있다.
    ▷ 또한 가상화된 네트워크는 좀 더 유연해짐으로써 사용자들이 최소한의 다운 타임 또는 실시간으로 비즈니스의 니즈에 대처하는데 필요하도록 인프라스트럭쳐를 변경할 수 있게 해준다.

 

  1) 공유를 가능하게 하는 기술

    ▷ 가상 LAN (VLAN) 기술
      - 소프트웨어적으로 구현되며, 컴퓨터의 네트워크를 구성할 때 실제 연결되지 않았으나 마치 물리적으로 연결된 것처럼 행동하게끔 설정한다. VLAN은 사용자 A의 데이터가 공유 네트워크 상에서 사용자 B의 데이터와 서로 섞이지 않도록 보장하기 위해 가상화의 절연 기능을 이용한다.
      - IP-SEC 프로토콜
       · IP 네트워크를 단절되고 독립된 많은 가상 네트워크(VPNs)처럼 보이게 함으로써 IP 네트워크를 좀 더 효율적이고 안전하게 공유될 수 있도록 사용된다.
       · 네트워크의 2개의 논리적 끝단 사이에서 암호화된 데이터의 일치성을 보장해준다.
      - 터널링 기술
       · 다중 프로토콜 스위칭(MPLS)은 단절 기능을 제공해주는 터널링 기술이며 주로 성능 개선 목적으로 사용된다.

    ▷ 다중 호스팅을 지원하는 HTTP 서버
      - 활용률을 증대시키고 자동 복구를 지원하기 위해서, 고객들은 하나의 물리적 애플리케이션 서버가 다수의 가상 어플리케이션 서버인 것처럼 보이게 하기 위해 다수의 가상 로컬 IP 어드레스를 사용할 수 있다.

    ▷ 어댑터 가상화 기술
      - 서버에 붙은 물리적 네트워크 어댑터가 여러 개인 것처럼 보이게 하여 네트워크의 연결을 단순화 시켜서 서버들간의 네트워크 연결의 효율성을 향상시킬 수 있다. 대표적인 예로 System z의 OSA-express L2-L3 공유기술 또는 System p의 가상 이더넷 기술을 들 수 있다.

 

   2) 자원 풀링을 가능하게 하는 기술
    ▷ 아래의 기술들은 가상화의 단일화 기능을 이용하여 사용자로 하여금 네트워크 요소들을 하나로 묶어서 사용하게끔 해준다.
      - 다양한 형태의 IP 워크로드 밸런싱 기술
       · 여러 대의 애플리케이션 서버들을 마치 하나의 단일 애플리케이션 서버 또는 인스턴스 처럼 보이게 해준다.
       · 워크로드 밸런서는 내부적으로 다수의 애플리케이션 서버 풀에서 각 서버의 용량과 가용성 정도에 대한 정보를 실시간으로 수집하면서 애플리케이션 인스턴스들에 걸쳐서 워크로드를 밸런싱 하면서도 외부적으로는 하나의 단일화된 애플리케이션 앤터티를 네트워크에 보여준다.
       · 대표적인 사례로는 z/OS의 Sysplex Distributor, Cisco사의 콘텐츠스위칭모듈(CSM), 노텔/알테온사의 Load Balancer 등이 있다.
      - 네트워크어댑터 가상화 기술
       · 다수의 애플리케이션 네트워크 연결을 연관된IP 어드레스로 이동시킴으로써 동일한 인스턴스로 보이게 해준다.
       · 그렇게 함으로써 네트워크 양 끝단에서 동적 라우팅의 구성이나 라우터 디스커버리 프로토콜을 수행 할 필요 없이도 네트워크상에서 더 높은 가용성을 얻을 수 있게 한다. VIPA takeover, IP address takeover 및VRRP 등이 그러한 기술들의 좋은 사례들이다

 

   3) 에뮬레이션과 추상화
    에뮬레이션 또는 추상화(Abstraction) 기능을 통해 사용자들은 애플리케이션 서비스 영역에서 엔드-투-엔드 연결을 프로비져닝하고 관리하는 기능을 제공해 줄 수 있다.
    ▷ 사용자들은 에뮬레이션 기술을 사용하여 애플리케이션 프로그래머들로 하여금 각 애플리케이션이 SSL 기반 하에 돌아가도록 일일이 코딩하는 노력을 덜어줄 수 있다. 그러한 기술들은 애플리케이션 서버가 연결 지향의 보안 체계를 갖는 것처럼 보이게 해준다(예를 들어 SSL 또는 TLS 지원). 그러한 에뮬레이션은 소켓 프로그래밍 인터페이스 레이어의 아래에 위치한 TCP 레이어에서 수행되어진다.
    ▷ 대역폭 관리 소프트웨어는 특히 WAN 구간 및 TCP를 사용하지 않는 인터넷 링크(예를 들어 스트리밍 오디오 및 비디오 애플리케이션)에서 네트워크 성능을 관리할 수 있는 수단을 제공해준다. 해당 소프트웨어는 TCP/IP 스택에 상주하면서 대역폭의 할당을 제어하기 위해 정책 기반의 관리 기법을 사용한다. 대표적인 예로 z/OS의 하나의 구성요소인 IBM Service Policy Agent를 들 수 있다.
    ▷ 사용자들은 하나의 서버 내에서 서로 다른 논리적 파티션들이 하나 이상의 LAN으로 연결되어 있는 것처럼 행동하게끔 만드는데 가상화를 사용할 수도 있다. 이러한 형태의 가상화를 지원하는 기술들에는 HiperSockets과 가상 이더넷 LAN이 있다.
    ▷ 가상 네트워크 어플라이언스는 여러 가지 형태의 네트워크에 특화된 기능들을 하나로 엮어주는 네트워크 애플리케이션의 일종으로서 외관상 하나의 박스 안에 또는 가상서버상의 전속된 하나의 인스턴스 안에 상주할 수도 있다.

 

   4) 네트워크 자원들의 관리
    ▷ 가상화는 네트워크에 대하여 또 다른 차원의 관리와 제어를 요구한다.
      - 예를 들어 열개의 가상 서버들이 하나의 10GB 네트워크 어댑터를 공유하고 있다고 가정하면
       · 열대의 가상 서버들 중 어떤 하나가 소비할 대역폭을 제한할 수 있는 어떤 제어 메커니즘이 필요하게 된다.
       · 그러한 제어는 대역폭 사용 정책을 정의하거나 가상 네트워크 인프라 스트럭쳐 내에서 네트워크 정책을 강제할 수 있는 에이전트를 제공함으로써 강제로 이행될 수 있다.
    ▷ 네트워크 가상화를 위해 요구되는 관리와 제어 기능들은 온 디맨드 운영 환경(ODOE)의 일부로서 정의되고 있다.
       · 네트워크 자원 매니저(NRM, Network Resource Manager) 요소는 기본적으로 통합된 토폴로지 정보, 비즈니스 연속성(네트워크 자원의 자동 복구) 그리고 그러한 환경에서 가능한 프로비져닝 체제를 제공할 것이다.
       · 그리고 이러한 지원은 WSDM 기반의 인터페이스의 집합 형태로 결합될 것이다.

반응형

'컴퓨터 활용 > 클라우드 컴퓨팅' 카테고리의 다른 글

[14강] 클라우드 오해  (0) 2012.07.16
[12강] 가상화 엔진  (0) 2012.07.15
[10강] 서버 가상화  (0) 2012.07.13
[9강] 가상화 개념  (0) 2012.07.12
[8강] 클라우드 컴퓨팅 도입전략  (0) 2012.07.11
:

[9강] 가상화 개념

컴퓨터 활용/클라우드 컴퓨팅 | 2012. 7. 12. 06:59 | Posted by 깨비형
반응형

1. 가상화의 정의와 개념


  ○ 정의

      - 컴퓨터에서 컴퓨터 자원의 추상화을 일컫는 광범위한 용어임

      - "물리적인 컴퓨터 리소스의 특징을 다른 시스템, 응용 프로그램, 최종 사용자들이 자원과 상호 작용하는 방식으로부터 감추는 기술"로 정의할 수 있다.

      - 이것은 다중 논리 리소스로서의 기능을 하는 것처럼 보이는 서버, 운영체제, 응용 프로그램, 또는 저장장치와 같은 하나의 단일 물리적 자원을 만들어 낸다.

      - 아니면 단일 논리적 자원처럼 보이는 저장장치나 서버와 같은 여러 개의 물리적 지원을 만들어 낼 수 있다.


  ○ 가상화 유래

      - 이 용어는 오래되었다. 1960년대 이후로 널리 쓰였으며, 전체 컴퓨터 시스템에서 개별 기능/구성 요소에 까지 컴퓨터의 다른 많은 면과 영역에 적용되어 왔다.

      - 모든 가상화 기술의 공통 주제는 주변에 막을 씌워 "기술적으로 자세한 부분을 숨기는 것"이다.

      - 가상화는 다른 물리적 위치에서 리소스를 한데로 합치거나 제어 시스템을 단순하게 하여 다중 송수신 접근과 같은 것을 통해 기반이 되는 기능 추가를 보이지 않게 하는 외부 인터페이스를 만들어 낸다.

      - 새로운 가상 플랫폼과 기술의 최근 발전은 이렇게 성숙한 개념에 다시 한번 집중하게 만들었다.


  ○ 가상화 기술은 실제 존재하는 물리적 자원들을 논리적 자원들의 형태로 표시하는 기술로서, 물리적 자원을 이용하는 사용자(구체적으로 애플리케이션 및 서비스를 가리킴)에게는 논리적 형태로만 나타난다. 아래 그림 처럼 가상화 기술이 이들 논리적 자원들과 실제 물리적 자원들에 대한 연결을 담당해 줌으로써, 가상화 자원을 이용하는 사용자는 더 이상 어떤 자원들이 사용되는지를 구체적으로 알 필요가 없어진다.

  ○ 앞의 그림에서 보여주고 있는 것과 같이

    ▷ 가상화라는 중간 계층을 이용하여 애플리케이션과 서비스를 실제적인 자원들과 분리하는 이러한 형태는 사용자로 하여금 동일한 자원을 공유하게 해주고, IT 자원들을 개별 자원이라기 보다는 논리적인 자원 풀로서 사용하고 다루게 해준다.

    ▷ 서버내의 자원 분할(Partitioning)은 가상화의 대표적인 사례로서, 커다란 하나의 서버 시스템을 다수의 작은 시스템으로 보이게 해줌으로써 서버 자원을 공유하게 해준다.

    ▷ 또한 스토리지 가상화 기술은 여러 개의 물리적 스토리지 시스템들에 남아 있는 유휴 디스크을 모아서 만든 디스크 풀에서 가상화된 디스크를 만들 수 있게 해준다. 이렇게 가상화된 디스크에 접근함으로써 애플리케이션 서버는 실제로는 최대 사용 가능한 공간이 300MB 밖에 안되는 상황에서도 마치 1TB의 스토리지가 단독으로 붙어 있는 것처럼 간주하여 실행될 수 있다.


  ○ 결론적으로 가상화 기술은 실제로 존재하는 물리적 자원들에 대한 중재자 역할을 해주는 기술로써 위의 경우에 적용해 보면 가상화 기술은 애플리케이션 서버의 스토리지 요구를 가로채서 여러 개의 스토리지 컨트롤러에 걸쳐 있는 유휴 공간을 찾아내 줌으로써 스토리지 용량에 대한 요구를 만족시켜 주는 것이다.



2. 가상화의유형


  ○ 가상화는 일반적으로 서버, 스토리지 및 네트워크와 같은 전통적인 단위 하드웨어 자원에 많이 적용되어 왔다. 그러나 가상화의 적용 범위는 아래 그림처럼 단순히 하드웨어 차원의 IT 리소스에만 한정되지 않고 애플리케이션, 미들웨어, 분산 시스템 및 가상화 자원들 자체를 포함하여 비실체적인 자원들에 대해서도 적용될 수도 있다.



  ○ 위 그림에서 보여 준 것과 같이 가상화 범위는 다양하다.


  ○ 즉 미들웨어를 통한 워크로드의 가상화에는 잡 스케쥴러(JobScheduler)가 이용될 수 있으며, 애플리케이션 레벨의 가상화에는 애플리케이션 서버가 스스로 인스턴스를 제어하여 워크로드를 관리할 수도 있다. 대표적인 사례로 전자에는 다양한 그리드 스케쥴러가 있고, 후자에는 WAS-XD 같은 웹 애플리케이션을 들 수 있다.


  ○ 향후 전통적인 자원 가상화의 추세는 여전히 개별 하드웨어를 중심으로 이루어져 가겠지만, 새로운 형태의 가상화 역량이 추가적으로 요구되고 있다. 새로운 가상화 역량에는 작은 다수의 시스템 집합에서 가상 시스템을 만들어내거나 플랫폼과 벤더의 경계를 넘어서서 단순화되고 일관된 방식으로 관리될 수 있는 가상 시스템을 구현하는 것이 포함되어 있다. 여기에는 앞 페이지의 그림에서 관리의 가상화, 전사적 차원의 가상화 등이 포함될 수 있다.


  ○ 가상화의 적용 범위로

      - Infrastructure 계층의 디바이스, 네트워크, Power 가상화

      - Hardware, 계층의 서버와 저장장치 가상화

      - Operating Systems 계층의 운영체제 가상화

      - Middleware, 계층의 Applicaton 가상화

      - Workload 계층의 업무의 가상화

      - Bussiness Appplication 계층의 Database 가상화 등이 있다.


  ○ 여기서는 서버, 스토리지 및 네트워크 등 주로 하드웨어 인프라 차원에서의 가상화 기술에 설명해 나가도록 할 예정이며, 기회가 될 경우에 추가적으로 나머지 레이어에 대한 가상화 적용 기술들을 소개할 계획이다.


  ○ 가상화는 자원의 공유(Sharing), 단일화(Aggregation), 에뮬레이션(Emulation) 그리고 절연(Insulation)이라는 4가지 기본적인 기능을 가지고 있다. 아래 그림은 가상화의 기능별 종류 및 이에 따르는 사례들을 보여주고 있다.


   1) 공유(Sharing) :

    ▷ 가장 대표적인 가상화의 기능으로서 다수의 많은 가상 자원들이 하나의 동일한 물리적 자원과 연결되어 있거나 가리키는 것을 말한다. 물리적 자원의 일부분을 가상화된 자원마다 할당하거나 혹은 물리적 자원에 대하여 타임 쉐어링 기법으로 공유하는 방식이 주로 사용된다.

    ▷ 이러한 형태의 가상화는 가상화 자원을 사용하는 여러 사용자들(애플리케이션 또는 서비스)이 물리적 자원을 공유하게 해주며, 이때 각 사용자는 마치 자기가 해당 자원을 혼자서만 사용하는 것과 같은 착각을 하게 된다.

    ▷ 대표적 사례로는 서버 내의 논리적 분할, 가상머신(VM), 가상 디스크, 가상 LAN(VLANs)을 들 수 있다.


   2) 단일화(Aggregation) :

    ▷ 공유의 반대되는 가상화 개념으로서, 가상 자원은 여러 개의 물리적 자원들에 걸쳐서 만들어질 수 있으며, 이를 통해 외견상 전체 용량을 증가시키고 전체적인 관점에서 활용과 관리를 단순화시켜 줄 수 있다.

    ▷ 예를 들어, 스토리지 가상화는 여러 개의 물리적 디스크 시스템에 남아있는 각각의 유휴 디스크들을 하나의 가상화된 디스크로 만들어 주는데, 이때 가상화된 디스크는 가상 디스크를 만드는데 사용 되어진 어떤 물리적 디스크보다도 더 커질 수 있다


   3) 에뮬레이션(Emulation) :

    ▷ 물리적 자원 자체에는 원래부터 존재하지 않았지만 가상 자원에는 어떤 기능들이나 특성들을 마치 처음부터 존재했던 것처럼 가질 수 있다. 예를 들어 IP 네트워크 상에서 가상 SCSI 버스를 구현하는 iSCSI 또는 물리적 디스크 스토리지상에 구현된 가상 테이프 스토리지 등이 여기에 속한다. 또 다른 형태의 에뮬레이션에는 여러 개의 제각기 다른 물리적 자원들을 표준 구성요소 형태인 것처럼 가상 자원으로 표시하는 것이 있다. 여러 종류의 이더넷(Ethernet) 인터페이스를 마치 하나의 특정한 표준 이더넷 인터페이스 모델로 나타내는 것이 그 예이다.


   4) 절연 (Insulation) :

    ▷ 가상화된 자원들과 물리적 자원들간의 상호 맵핑은 가상화 자원들 또는 가상화 자원들을 사용하는 사용자들에게 아무런 영향을 미치지 않으면서 물리적 자원들이 교체될 수 있도록 해준다 . 이것은 투명한 변경(Transparent Change)이라고 불리우며, 투명한 변경은 가상화에 있어서 하나의 부가적인 혜택이기도 하지만, 때때로 그 자체가 하나의 기술로서 중요한 의미를 갖기도 한다. 어떤 가상 프로세서가 결함이 발생하였거나 혹은 곧 발생하려는 물리적 프로세서에서 다른 정상적인 물리적 프로세서로 자동적으로 옮겨간다거나, 디스크의 결함을 사용자들로부터 숨기기 위해 다중디스크(Redundant Disk)를 사용하는 RAID 스토리지 컨트롤러가 대표적인 사례이다. 달리 말해 장애 방지(Failure Proof)의 효과라고 볼 수 있다.


  ○ 가상화의 혜택은 가상화를 도입하려는 사용자들의 목표나 접근 방법, 채택된 기술 및 기존 IT 인프라스트럭쳐의 종류에 따라 크게 달라진다. 대부분의 사용자들은 (심지어는 단순히 서버 통합에 가상화를 사용하는 경우에도) 아래에 언급된 혜택들을 어느 정도 가질 수 있다. 또한 사용자들이 그들의 IT 인프라스트럭쳐를 가상화하는데 더 많은 노력을 기울일 때, 얻을 수 있는 가상화의 혜택은 그만큼 비례해서 커지게 된다. 아래 그림처럼 가상화 도입 시 얻을 수 있는 혜택들을 구체적으로 열거해 보면 다음과 같다.


   1) 높아진 자원의 활용률 :

      - 가상화는 물리적 자원들과 자원 풀에 대한 동적인 공유를 가능하게 해주며, 이를 통해 더 높은 자원의 활용률을 얻을 수 있다. 특히 평균 워크로드가 전체 자원의 워크로드 보다 훨씬 적은 가변적인 워크로드 상황에서는 더 높은 효과를 얻을 수 있다.


   2) 낮아진 관리 비용 :

      - 가상화는 관리해야 하는 물리적 자원들의 대수를 줄여줌으로써 관리 인력의 생산성을 향상시킬 수 있다.

      - 또한 물리적 자원들의 복잡성을 숨겨주고,

      - 자동화, 정보화 및 중앙화를 통해 공통된 관리 작업을 단순화시키고,

      - 워크로드 관리의 자동화를 가능하게 해준다.

      - 가상화는 이기종 플랫폼 환경에서도 관리 도구를 공통으로 사용할 수 있게 해준다


   3) 사용의 유연성:

      - 가상화는 빠르게 변화하는 비즈니스니스를 만족시키기 위하여 자원들이 동적으로 재구성되고 활용 될 수 있도록 해준다.


   4) 향상된 보안

      - 가상화는 단순한 공유 메커니즘에서는 불가능한 분리와 격리를 가능하게 해서 데이터와 서비스에 대하여 통제되고 안전한 액세스를 제공한다.


   5) 높아진 가용성

      - 가상화는 사용자레벨에 아무런 영향을 주지 않고도 물리적자원이 제거되거나 업그레이드 또는 변경 될 수 있도록 지원해 준다.


   6) 증가된 확장성

      - 자원 분할 및 단일화(Aggregation)는 가상화된 자원이 개별 물리적 자원보다 더 작아지거나 혹은 더 커질 수 있게 해준다.

      - 이를 통해 물리적 자원의 구성 변경이 없어도 필요한 만큼의 적정한 확장성을 얻을 수 있다.


   7) 상호 운영성 및 투자의보호

      - 가상화 자원들은 기존 물리적 자원들간에서는 불가능한 인터페이스와 프로토콜 레벨에서의 호환성을 제공해 준다.


   8) 향상된 프로비져닝 (Provisioning)

      - 가상화는 자원의 할당을 개별 물리적 단위보다도 더 세밀한 조각 단위에서 가능하게 해준다


  ○ 가상화를 도입하려고 할 때 처음부터 전사적 차원에서 접근할 필요는 없다. 오히려 장기적인 IT 발전 방향에 대한 로드맵을 그린 다음 단계적으로 가상화를 기업 내에서 확산 시켜나가는 접근 방법이 필요하다. 이러 접근 방법에 맞추어 가상화를 도입하는 순서는 동질적 가상화에서 시작하여 이질적 가상화, 전사적 가상화를 거쳐 마지막으로 글로벌 가상화로 점점 범위를 확대하면서 기업 내의 역량이 이에 따라 갈수 있도록 보조를 맞추어 가는 것이 중요하다. 아래 그림은 가상화의 단계별 발전 과정을 모형화하여 보여주고 있다.



  ○ 먼저 동질적 가상화(Virtualize like resources)란 가상화의 도입을 처음으로 고려할 경우에 많이 발생하며, 조직 또는 부서 단위에서 동일한 또는 비슷한 자원들을 하나의 가상 풀로 묶는 것이다. 여기에는 스토리지 가상화가 대표적인 예이다.


  ○ 이질적 가상화(Virtulaize unlike resources)란 OS 또는 애플리케이션처럼 성격이 다른 자원들을 하나로 묶는 것으로 워크플로우 (Workflow:작업흐름도)와 관련 있는 모든 자원들을 가상화하는 단계를 말한다. 여기에는 트랜잭션 또는 워크플로우의 자동화가 필수적이며, 가상화 엔진 또는 그리드 구축이 구체적인 예이다.


  ○ 가상화가 기업 내에 어느 정도 진척이 되면 전사적 가상화(Virtualize the enterprise)의 단계로 넘어간다. 이 단계에서는 모든 자원들이 동적으로 관리가 되며 각 부서간에 사용량에 따른 비용 할당이 가능하게 된다.


  ○ 마지막 단계의 가상화는 기업의 경계를 넘어서서 비즈니스 파트너와 심지어는 고객까지도 가상화의 주체로 참여하는 글로벌 가상화(Virtualize outside the enterprise)로 이행한다.



3. 가상화의 기술 분류


  ○ 시장에서 실제로 활용되고 있는 다양한 가상화 기술들은 분류 방식에 따라 여러 가지로 나누어볼 수 있다.


  ○ 먼저 이전의 앞 가상화 적용 범위의 그림처럼 가상화 계층의 위치에 따라

    ▷ 하드웨어 가상화에서부터

    ▷ OS 가상화, 애플리케이션 가상화, 관리 가상화 등으로 단계적으로 나누어볼 수 있으며

    ▷ 혹은 가상화가 적용되는 물리적 범위를 기준으로 시스템 내부 가상화, 시스템 외부 가상화 등으로 나누어볼 수도 있다. 물론 이외에도 다양한 분류 방법이 있을 수 있다.


  ○ 여기서는 후자의 경우처럼 가상화가 시스템 내부에 구현되었는가 또는 시스템 외부간에 구현되었는가에 따라 시스템 내부 가상화와 시스템 외부 가상화로 크게 나누었으며 각각은 다시 서버 가상화와 스토리지 가상화로 좀 더 세밀히 나눌 수가 있다. 한편 네트워크 가상화는 특성상 분류가 어려워 별도의 가상화 항목으로 배치하였다. 이것을 정리하면 다음 페이지 그림과 같이 나타낼 수 있다.


  ○ 아래의 그림은 가상화에 대한 기술 분류를 보여 주고 있다.



  ○ 서버 가상화와 스토리지 가상화 그리고 네트워크 가상화를 각각 나누어 진다.


  ○ 이들을 공통적으로 지원하는 차세대 가상화의 대표적인 실체인 가상화 엔진(Virtualization Engine)이 필요하다. 이들 내용은 가상화 설명의 끝 단계에서 자세히 설명한다.


반응형
: