티스토리 뷰

CPU, Memory Overcommit 기능....
Overcommit : 보급 능력 이상으로 할당하다.

실제 가용 양보다 더 많이 할당 할 수 있는 것.

 

허상 아닌가,...? 가상화, 논리적 개념이 만들어 낸,  Storage의 Thin Provisioning과 같은,.. 보이는 것은 10인데 실제 사용 가능한 것은 5.

당연 이 기능들은 CPU의 클럭 수의 발전과 같은 Hardware 성능 발전으로 가능한 일들 같은데..

 

Hardware의 발전과 함께 낭비를 줄이고 싶은,

노는 녀석이 없게,

쉬지 않고 일을 시키기 위한,  

하지만, Overcommit이 항상 옳은 선택만은 아니다.

아래 VMware 사이트에도 높은 성능을 요구하는 엔터프라이즈 어플리케이션 워크로드에는 사용하지 말라고 한다.

https://docs.vmware.com/en/VMware-Cloud-on-AWS/solutions/VMware-Cloud-on-AWS.91696a39d9cb804e2888c43d538bab50/GUID-BBB20701F8770682CF7895CE359FD039.html

 

ESXi Host Memory Overcommitment

 

docs.vmware.com

 

VMware의 경우 2GB의 RAM을 가진 호스트에 1GB의 메모리를 가진 4개의 VM을 구성 할 수 있다는 글을  본 적이 있다. 하지만 특정 VM 에서 메모리 사용이 높을 경우 이미 동작하고 있는 VM은 영향이 없지만 Power-On을 하려는 VM은 Fail 될 수도 있다는...

 

기존 운영체제의 CPU 스케줄링, Memory 관리 기법 아닌가?

여러 가상화 솔루션들의 하이퍼바이저 입장에서 VM들은 운영체제 안의 여러 프로세스들중 하나이다.


아래 링크는 OpenStack의 cpu, memory overcommit에 대한 설명 페이지이며,

https://docs.openstack.org/arch-design/design-compute/design-compute-overcommit.html

 

Overcommitting CPU and RAM — arch-design 0.0.1.dev15 documentation

Overcommitting CPU and RAM OpenStack allows you to overcommit CPU and RAM on compute nodes. This allows you to increase the number of instances running on your cloud at the cost of reducing the performance of the instances. The Compute service uses the fol

docs.openstack.org

OpenStack에서는 CPU 할당 비율 16 : 1, Physical Core 1개당 Virtual Core 16개 까지 할당 가능하다.
예를들어  Physical Core 12개를 가진 물리 서버 1대에 총 192개의 Virtual Core를 할당 가능하며, 이들 Virtual Core를 4개씩 할당하는 인스턴스(VM)을 만든다면, 총 48개의 인스턴스(VM)를 만들 수 있다.

                                                                                  (16 * 12) / 4  = 48

OpenStack의 CPU Core 기준 컴퓨트 노드(호스트 또는 물리 서버)의 인스턴스 생성 가능 수 곗산 공식은 아래와 같다.

(OR * PC) / VC

                                                        OR : CPU Overcommit Ratio,  CPU Overcommit 비율

                                                        PC : Number of Physical Cores, 실제 물리 코어 수

                                                        VC : Number of Virtual Cores for instance,  인스턴스(VM)에 할당 할 Virtual Core의 수

 

 RAM 할당 비율 1.5 : 1은 물리 서버에서 사용 가능한 전체 RAM의 1.5배의 범위에서 인스턴스(VM)에 할당 가능하다.

예를들어 위의 비율로 48GB의 RAM을 가진 물리 서버가 있다고 가정할 경우, 48GB의 1.5배 24GB를 더한 72GB까지 인스턴스에 할당 가능하다. 따라서 8GB의 RAM을 갖는 인스턴스(VM) 9개를 만들 수 있다.