ADP(데이터분석 전문가)/스터디노트

[2과목] 클라우드 인프라 기술 - 2

bonanza 2021. 2. 13. 19:18

1. 메모리 가상화: VMware 기법

  • VMware는 한대의 컴퓨터로 마치 여러 대의 컴퓨터를 사용하는 것 같은 가상의 공간을 만들어 주는 프로그램

참고 - 제가 그린거라 정확하진 않음

  • VMware는 하이퍼바이저 내에 Shadow Page Table을 별도로 두어 VPN과 MPN의 중간 변환 과정을 가로챔 (매핑)
  • 매핑 연산을 하드웨어적으로 도와주는 것을 TLB(Translation Lookaside Buffer)
  • 하이퍼바이저의 핵심 모듈은 VMkernel
  • VMkernel: 서비스 콘솔, 디바이스 드라이버들의 메모리 영역을 제외한 나머지 전체 메모리 영역을 모두 관리하면서 가상머신에 메모리를 할당

 

 

* 예시) 가상 머신 메모리 할당

   - 예를 들어, 여러 개의 가상머신이 동시에 수행중인 경우라면 위의 그림과 같은 메모리 사용 상황이 발생할 수 있다. 예제에서는 물리적인 1GB의 메모리를 갖고 있는 1대의 물리적인 장비에 2개의 가상머신을 탑재했다. 하이퍼바이저 내에서도 일부 메모리를 사용해야하기 때문에 하이퍼바이저가 가상머신에 할당할 수 있는 메모리는 768MB이다.

  - VM1는 Minimum reserved로 256MB를 사용하고 있다.

   - 이 상황에서 VM2의 Minimum reserved는 512MB이기 때문에 하이퍼바이저는 가상머신에 256MB를 더 할당해야 하지만 물리적으로 남아 있는 메모리가 256MB가 되지 않기 때문에 VM1에서 사용하고 있는 메모리를 반납 받아야 한다. 이런 문제를 해결하기 위해 다음과 가은 몇가지의 방법을 사용한다.

 

  • 가상머신 메모리 할당의 문제 해결을 위한 방법
    1. Memory balloning: VM의 메모리 영역을 빈값으로 강제로 채워 VM OS가 자체적으로 swapping
    2. Transparent page sharing: 동일한 내용을 담고 있는 페이지는 물리적인 메모리 영역에 하나만 존재시키고 모든 VM을 공유
    3. Memorry overcommitment: 갖고 있는 메모리보다 많은 가상머신 메모리를 할당

 

2. I/O 가상화

  • 가상 이더넷: 물리적으로 존재하지 않는 자원을 만들어 내는 에뮬레이션(emulation) 기능을 이용
  • 가상 이더넷 어댑터: 여러개의 VM이 물리적인 네트워크 카드를 공유하여 외부 네트워크와 통신이 가능 (병목현상)
  • 가상 디스크 어댑터: 가상 디스크를 이용 (내장디스크, 외장 디스크)
반응형