반응형

분류 전체보기 33

가상 머신의 구조

가상 머신의 구성 파일 VMware ESXi 서버 운영체제 입장에서의 가상 머신이란 일종의 파일 집합체이다. 시스템이 부팅하기 위해 필요한 BIOS 정보도 파일로 존재하며 몇 개의 CPU를 장착하고 있는지, 메모리 크기는 어느 정도인지, 하드 디스크 종류와 크기가 어느 정도인지 등 하드웨어 구성과 관련한 내용들이 전부 파일로 존재한다. 가상 머신을 구성하는 대표적인 파일들의 종류는 다음의 표와 같다. 파일 종류 설명 .vmx 가상 머신의 구성 파일 .vmdk 가상 디스크의 종류 및 형태를 정의하는 descriptor 파일 -flat.vmdk 실제 데이터가 담겨져 있는 가상 디스크 파일 .nvram 가상 머신의 BIOS 파일 vmware.log 가상 머신의 로그 파일 vmware-#.log 가상 머신의 예..

⫸VMware 2022.10.10

vCenter 서버 구조

핵심 서비스 vCenter 서버는 다음과 같은 핵심 서비스(Core Service)를 제공하고 있다. • 가상 머신 배포 - 단일 ESXi 서버에서도 가상 머신을 생성할 수 있지만, 오직 vCenter 서버를 통해서 사용자들은 다양한 환경과 요구사항에 부합하는 템플릿을 제작할 수 있으며, 이러한 템플릿을 바탕으로 손쉽고 매우 빠르게 가상 머신을 생성, 배포할 수 있다. • ESXi 호스트 및 가상 머신 구성 - vCenter 서버에 접속하여 복수의 ESXi 호스트와 가상 머신들의 구성 정보들을 단일 콘솔 화면만으로 손쉽게 살펴보고 수정할 수 있다. • 가상 머신 및 리소스 인벤토리 관리 - 데이터센터 내의 리소스들을 구별하기 쉽게 객체화하여 관리자에게 정확하고 간편한 인벤토리 관리 기능을 제공한다. • ..

⫸VMware 2022.10.09

VMware 스토리지 - 데이터스토어

데이터스토어는 ESXi에서 가상 머신을 담아두기 위한 저장소 역할을 한다. ESXi 서버에서는 이러한 저장소 위치를 논리적으로 구별하기 쉽게 하기 위하여 스토리지 볼륨을 생성하여 연결할 경우 label을 부여할 수 있는데, ESXi 서버에서는 그것을 데이터스토어라고 부른다. 데이터 스토어는 크게 세 가지 종류로 나뉜다. VMFS 데이터스토어 VMFS 데이터스토어는 ESXi 서버에서 가상 머신의 디스크를 저장하는 저장소로서 가장 많이 선택하는 데이터스토어이며 VMFS 파일 시스템으로 포맷된 스토리지 볼륨을 나타낸다. 가상 머신 디스크 파일들(VMDK)은 VMFS 볼륨 위에 저장되며, 각 개별 가상 머신들은 VMDK 파일을 마치 자신에게 물리적으로 연결된 SCSI 디스크로 인식하게 된다. 하지만 ESXi 서..

⫸VMware 2022.10.08

VMware 네트워킹 - 분산 스위치(Distributed Switch)

분산 스위치(Distributed Switch) 표준 가상 스위치를 생성하고 구성하는 것은 전부 ESXi 서버 호스트 위에서였다. 예를 들어, 3대의 ESXi 서버 호스트 위에 표준 가상 스위치를 생성한다고 가정해 보면, 가상머신용 포트 그룹을 가진 가상 스위치와 VMkernel용 포트 그룹 가상 스위치를 만들고 각각의 가상 스위치에 서버의 물리적인 NIC를 업링크로 연결시킨다. 업링크 연결 후 각 가상 스위치별 보안 설정과 Teaming 구성을 끝내고 난 후 네트워크가 정상 연결된 것을 확인한 다음, 이러한 똑같은 작업을 두 번째, 세 번째 서버에서 반복해야 한다. 세 번째 서버까지는 그러한 작업이 가능하나 10대, 20대, 100대가 넘는 ESXi 서버를 관리하는 가상화 데이터 센터 관리자라면 이야기..

⫸VMware 2022.10.06

VMware 네트워킹 - 표준 가상 스위치

표준 가상 스위치 가상 스위치 앞에 표준(Standard)을 붙인 이유는 분산 스위치와 구별하기 위함이며, 또한 실제로 VMware에서도 Standard Virtual Switch라 구별하여 부르고 있기 때문이다. 가상 스위치는 VMkernel 위에서 CPU 파워를 이용하여 소프트웨어 기반으로만 작동되는 OSI Layer 2 기반의 스위치이다. 물리적인 L2 스위치와 비교하자면 몇 가지 공통점과 차이점을 가지고 있다. 기본적으로 L2 스위치 본연의 임무로써 MAC 주소를 전달해 준다는 점과 표준 VLAN 구성 및 업링크 연결까지 지원해 준다는 점에서 공통점을 가지고 있다. 반면에, 차이점은 루프 구조가 형성되지 않기 때문에 스패닝 트리 프로토콜이 작동하지 않는데, 즉 가상 스위치와 가상 스위치끼리 직접 ..

⫸VMware 2022.10.05

VMware 리소스 가상화 - 스토리지 가상화

스토리지 가상화 ESXi 서버 내의 가상 머신 안에서 작동되는 게스트 운영체제들은 자신이 인식하고 있는 디스크가 물리적인 디스크 컨트롤러에 연결된 일종의 하드 디스크라고 착각할 뿐이지만 실상은 그렇지 않다. ESXi 서버는 수많은 가상 머신들에게 다양한 크기의 디스크와 함께 또 각각 원하는 개수만큼, 그러면서 동시에 읽고 쓰는 데 있어 전혀 문제가 없게끔 디스크를 인식시켜 주어야 하지만, 그렇다고 해서 VMkernel이 인식하고 있는 물리적인 디스크를 가상 머신의 개수만큼 직접 연결시켜 주어야 한다면 이 역시 진정한 가상화 환경이라고 볼 수가 없을 것이다. ESXi 서버가 제공하는 스토리지 가상화의 가장 큰 핵심은 크게 두 가지이다. 그 하나는 바로 이러한 수많은 가상 머신들에게 어떻게 해서 가상의 하드..

⫸VMware 2022.10.05

VMware 리소스 가상화 - 네트워킹 가상화

네트워킹 가상화 가상 머신들은 외부 세상과 통신하기 위해서는 반드시 물리적인 네트워크 인터페이스 카드(NIC)를 이용해야 한다. 호스트 시스템에 장착된 NIC에게 패킷을 전달하여 외부 세상과 통신해야 하지만 각각의 가상 머신들이 전부 자신만의 물리적인 NIC를 필요로 한다면 호스트 시스템에 장착해야 하는 NIC 개수는 가상 머신의 개수만큼 필요하다는 이야기이다. 이를테면 30개의 가상 머신이 작동되고 있는 x86 서버 시스템에 물리적인 NIC가 30개 장착이 되어야 한다는 것이다. 그러나 이것은 가상화 사상에 맞지도 않을뿐더러 현실성도 없는 이야기이다. 네트워킹 가상화는 바로 이러한 문제를 해결하기 위한 것이다. 즉, 모든 가상 머신들은 자신만의 가상 네트워크 어댑터를 가지고 호스트 시스템의 물리적인 N..

⫸VMware 2022.10.04

VMware 리소스 가상화 - 메모리 가상화 구현 기술

Transparent Page Sharing 호스트 시스템 위에 작동 중인 다수의 가상 머신들 대부분이 동일한 게스트 운영체제를 실행하는 조건이라면, 이를테면 Windows 운영체제에서 동일한 버전일 경우 그 안에서 필수적으로 항상 실행되는 기본적인 DLL이나 EXE 등과 같은 내용들은 동일하다. 따라서 이러한 내용들을 함께 공유할 수만 있다면 물리적 메모리 공간을 좀 더 효율적으로 사용할 수 있지 않을까 하는 것이 바로 Transparent 페이지 공유 기술(이하 TPS)의 배경이다. 우선 작동 중인 가상 머신 중에서 몇몇 후보군을 선택한 다음, 게스트 물리 메모리의 내용을 기반으로 한 해시(Hash) 값을 뽑아내어 그것을 기준으로 혹시 동일한 내용이 담겨 있는지 호스트 물리 메모리 페이지와 비교한다...

⫸VMware 2022.10.04

VMware 리소스 가상화 - 메모리 가상화

Shadow Page Table 현대 운영체제들은 메모리 관리를 하기 위해 두 가지 주소 체계를 사용하고 있는데, 하나는 물리적 주소(Physical Address)이며 다른 하나는 가상 주소(Virtual Address)이다. 물리적 주소는 실제 호스트 시스템에 장착된 물리적인 메모리의 크기에 해당하지만, 가상 주소는 운영체제에서 실행되는 모든 프로세스들에게 할당되는 주소이다. 32비트 운영체제의 경우 각 프로세스들은 약 4GB까지, 64비트 운영체제의 경우 이론적으로 약 16TB까지의 가상 주소를 사용할 수 있게 된다. 이렇게 각 프로세스들은 전부 자신만의 가상 주소 값을 가지게 되므로 물리적 주소의 실제 크기에 상관없이 운영체제에서 제공하는 크기만큼 소유하게 된다. 이러한 프로세스들이 포인터를 통해..

⫸VMware 2022.10.03

VMware 리소스 가상화 - CPU 가상화

CPU 가상화 가상 머신도 엄연히 CPU를 지니고 있지만, 실제로 이러한 가상 머신 내의 게스트 운영체제에서 발생하는 모든 프로세스들은 전부 물리적인 CPU에서 처리가 이루어진다. 제2장에서 언급한 것처럼, 게스트 운영체제에서 발생하는 CPU 프로세스들은 VMkernel의 VMM을 통해 실제 물리적인 CPU로 프로세스 처리가 이루어질 수 있도록 전달된다. VMkernel은 모든 가상 머신들에게 발생하는 CPU 프로세스들을 기본적으로는 최대한 균등하게 분배될 수 있도록 전체 물리적인 CPU 리소스를 적극적으로 스케줄링한다. VMekrnel은 모든 가상 머신에서 발생하는 프로세스들을 물리적인 CPU에 골고루 할당하여 처리한다. 이때 전체 물리적 CPU 리소스들에 과도한 부하가 발생하지 않도록 VMkernel..

⫸VMware 2022.10.03
반응형