오픈 스택의 overcommit 정보
https://docs.openstack.org/arch-design/design-compute/design-compute-overcommit.html
오픈 스택의 가상화 서버의 overcommit 기본 값은 다음과 같이 되어 있다. 가상 서버를 사용할 때 효율을 위해서 비율이 크다.
- CPU allocation ratio: 16:1
- RAM allocation ratio: 1.5:1
CPU allocation ratio가 16:1이라는 의미는 스케쥴러가 물리 코어 하나 당 16개의 가상 코어를 쓸 수 있도록 할당하겠다는 의미이다. 물리 서버가 12코어가 있다면.. 스케쥴러는 192개의 가상 코어를 사용할 수 있다. 인스턴스당 4 가상 코어를 쓰겠다고 하면.. 물리 서버의 192개중 48 인스턴스를 제공한다는 의미이다.
오픈 스택 문서를 보면 설명이 잘 나와 있다.
- OR
- CPU overcommit ratio (virtual cores per physical core)
- PC
- Number of physical cores
- VC
- Number of virtual cores per instance
인스턴스 개수 = (OR*PC)/VC
https://inter6.github.io/2016/04/22/nova-overcommit/ 이 분의 글이 좋아서 발췌한다.
- (Instance Count) = (Overcommit Ratio) * (Physical Cores) / (vCores per Instance)
- (Overcommit Ratio) = (Instance Count) / (Physical Cores) * (vCores per Instance)
만약 인텔의 Hyper-Thread 기능을 사용할 경우, Mirantis에서는 총 코어 개수를 물리 코어 x 1.3 으로 계산할 것을 가이드한다.
다음 환경에서 오버커밋 비율로 생성해낼 수 있는 인스턴스 개수는 다음과 같다.
- 인텔 E5-2640 v3 2.6Ghz 8Core x 2way
- Hyper-Thread 활성화
- 인스턴스당 평균 4개의 코어를 사용
Overcommit Ratio | Instance Count | Physical Cores | vCores per Instance |
---|---|---|---|
1 | 5.2 | 20.8 | 4 |
2 | 10.4 | 20.8 | 4 |
4 | 20.8 | 20.8 | 4 |
8 | 41.6 | 20.8 | 4 |
16 | 83.2 | 20.8 | 4 |
'Cloud' 카테고리의 다른 글
아마존 AWS 아키텍처를 그리는 툴 - cloudcraft (0) | 2018.04.19 |
---|---|
java docker image 확인하기 (0) | 2018.04.19 |
[docker] Permission denied 해결, docker 드라이버(aufs를 overlay)를 변경하는 방법 (0) | 2018.04.11 |
fluentd 정규식 확인하기 (0) | 2018.04.10 |
[fluentd] format json (0) | 2018.04.10 |