콘텐츠로 이동

컴퓨팅 리소스 용량 추정

이 항목에서는 컴퓨팅 리소스의 용량을 예측하고 과잉 판매를 가능하게 하거나 방지하는 방법을 알아봅니다.

SolusVM 2로 호스팅을 시작하려면 하나의 컴퓨팅 리소스에 생성할 수 있는 가상 서버(또는 지금부터는 단순히 "서버") 수를 추정해야 합니다. 이를 컴퓨팅 리소스의 용량 추정이라고 합니다.

비즈니스 시나리오, 하드웨어, 데이터 센터 등 다양한 요소(예: )에 따라 달라지므로 정확한 수치를 제공하는 것은 불가능합니다. 그러나 우리의 경험을 바탕으로 몇 가지 추정치를 공유할 수 있습니다.

두 가지 일반적인 비즈니스 시나리오를 다루고 모든 비즈니스 시나리오에 대한 컴퓨팅 리소스 용량을 예측하는 데 대한 일반적인 권장 사항 도 제공합니다.

부분적인 CPU 로드 비즈니스 시나리오

우리는 모든 서버에 충분한 리소스가 할당되어 있지만 모든 서버가 항상 사용 가능한 모든 리소스를 사용하는 것은 아니라고 가정합니다.

시나리오 및 용량 예측은 다음 전제를 기반으로 합니다.

  • CPU 용량은 초기값의 최대 900%까지 가능합니다.

    예를 들어 컴퓨팅 리소스에 12개의 CPU 논리 코어가 있는 경우 생성할 수 있는 2vCPU 서버의 최대 수량은 다음과 같습니다.

    12(컴퓨팅 리소스의 vCPU 수) × 9(900% 용량) / 2(서버당 vCPU) = 서버 54개

  • RAM 용량은 초기값의 최대 300%까지 가능합니다.

  • 부하 평균이 최대 용량의 85%에 도달하면 컴퓨팅 리소스가 과부하된 것으로 간주됩니다.

    예를 들어, 컴퓨팅 리소스에 12개의 CPU 논리 코어가 있는 경우 CPU 과부하 임계값을 고려하여 다음과 같은 수의 2vCPU 서버 를 생성할 수 있습니다.

    12(컴퓨팅 리소스의 vCPU 수) * 9(900% 용량) * 0.85(최대 로드 평균) / 2(서버당 vCPU) = 서버 45대

  • RAM이 최대 용량의 90%에 도달하면 컴퓨팅 리소스가 과부하된 것으로 간주됩니다.

  • 컴퓨팅 리소스에는 동일한 사양의 서버가 포함됩니다. 예를 들어 각 서버에는 CPU 2개와 GiB RAM이 2개 있습니다.

  • 추정은 qcow2 저장소 유형에 유효합니다. 다른 저장소 유형을 사용하는 경우 추정치가 다를 수 있습니다.

Note

디스크 I/O는 환경(즉, HDD/SSD 유형 및 속도)에 따라 다르기 때문에 언급하지 않습니다.

추정을 위해 다음 사양을 가진 컴퓨팅 리소스를 사용합니다.

  • CPU: AMD Ryzen 5 3600 헥사 코어(vCPU 코어 12개)
  • RAM: 64GiB

아래 표에서는 컴퓨팅 리소스에서 생성할 수 있는 다양한 사양의 서버 수를 확인할 수 있습니다.

Note

서버에는 정기적인 로드가 있습니다.

서버 사양 CPU 기준으로 생성된 서버 수 RAM 기준으로 생성된 서버 수 메모
CPU 1개 + GiB RAM 1개 최대 91개의 서버 최대 91개의 서버 더 많은 RAM을 할당할 수 있지만 CPU 제한으로 인해 더 많은 서버를 만들 수는 없습니다.
2 CPU + 2 GiB RAM 최대 45개의 서버 최대 45개의 서버 더 많은 RAM을 할당할 수 있지만 CPU 제한으로 인해 더 많은 서버를 만들 수는 없습니다.
2 CPU + 4GiB RAM 최대 43개의 서버 최대 43개의 서버 CPU를 더 할당할 수 있지만 CPU 제한으로 인해 서버를 더 만들 수는 없습니다.
4 CPU + 4 GiB RAM 최대 22개의 서버 최대 22개의 서버 CPU를 더 할당할 수 있지만 CPU 제한으로 인해 서버를 더 만들 수는 없습니다.

Note

스왑 공간과 메모리 공간의 총합이 게스트 실행을 위해 구성된 모든 메모리 보다 크거나 같은지 확인하세요.

전체 CPU 로드 비즈니스 시나리오

우리는 환경이 대부분의 경우 많이 활용된다고 가정합니다. 예를 들어, 이는 항상 활성화된 개발 환경입니다.

시나리오 및 용량 예측은 다음 전제를 기반으로 합니다.

  • CPU 용량은 초기값의 최대 150%까지 가능합니다. 예를 들어 컴퓨팅 리소스에 12개의 CPU 논리 코어가 있는 경우 생성할 수 있는 2vCPU 서버의 최대 수량은 다음과 같습니다.

    12(컴퓨팅 리소스의 vCPU 수) × 1.5(150% 용량) / 2(서버당 vCPU) = 서버 9대

  • RAM 용량은 초기값의 최대 150%까지 가능합니다.

  • 부하 평균이 최대 용량의 85%에 도달하면 컴퓨팅 리소스가 과부하된 것으로 간주됩니다.

    예를 들어, 컴퓨팅 리소스에 12개의 CPU 논리 코어가 있는 경우 CPU 과부하 임계값을 고려하여 다음과 같은 수의 2vCPU 서버 를 생성할 수 있습니다.

    12(컴퓨팅 리소스의 vCPU 수) * 1.5(150% 용량) * 0.85(최대 로드 평균) / 2(서버당 vCPU) = 서버 7대

  • RAM이 최대 용량의 90%에 도달하면 컴퓨팅 리소스가 과부하된 것으로 간주됩니다.

  • 컴퓨팅 리소스에는 동일한 사양의 서버가 포함됩니다. 예를 들어 각 서버에는 CPU 2개와 GiB RAM이 2개 있습니다.

  • 추정은 qcow2 저장소 유형에 유효합니다. 다른 저장소 유형을 사용하는 경우 추정치가 다를 수 있습니다.

Note

디스크 I/O는 환경(즉, HDD/SSD 유형 및 속도)에 따라 다르기 때문에 언급하지 않습니다.

추정을 위해 다음 사양을 가진 컴퓨팅 리소스를 사용합니다.

  • CPU: AMD Ryzen 5 3600 헥사 코어(vCPU 코어 12개)
  • RAM: 64GiB

아래 표에서는 컴퓨팅 리소스에서 생성할 수 있는 다양한 사양의 서버 수를 확인할 수 있습니다.

Note

서버에는 정기적인 로드가 있습니다.

서버 사양 CPU 기준으로 생성된 서버 수 RAM 기준으로 생성된 서버 수 메모
CPU 1개 + GiB RAM 1개 최대 15개의 서버 최대 15개의 서버 더 많은 RAM을 할당할 수 있지만 CPU 제한으로 인해 더 많은 서버를 만들 수는 없습니다.
2 CPU + 2 GiB RAM 최대 7개의 서버 최대 7개의 서버 더 많은 RAM을 할당할 수 있지만 CPU 제한으로 인해 더 많은 서버를 만들 수는 없습니다.
2 CPU + 4GiB RAM 최대 7개의 서버 최대 7개의 서버 CPU를 더 할당할 수 있지만 CPU 제한으로 인해 서버를 더 만들 수는 없습니다.
4 CPU + 4 GiB RAM 최대 3개의 서버 최대 3개의 서버 CPU를 더 할당할 수 있지만 CPU 제한으로 인해 서버를 더 만들 수는 없습니다.

일반 권장사항

아래 절차는 모든 비즈니스 시나리오에 대한 컴퓨팅 리소스의 용량과 성능을 예측하는 데 도움이 됩니다.

컴퓨팅 리소스의 용량과 성능을 예측하려면 다음을 수행하세요.

  1. CPU 용량의 200%에 도달하기 위해 서버 생성을 시작하세요. 예를 들어 컴퓨팅 리소스에 vCPU 코어가 12개 있는 경우 vCPU가 2개인 서버 12개를 생성합니다.

  2. 이전 단계에서 생성한 서버의 절반에 대해 CPU 로드를 생성합니다. 이 예에서는 서버가 6개입니다.

  3. 계속해서 서버를 만들어보세요. 동시에 서버의 CPU 사용량과 성능을 모니터링합니다.

    새 서버를 생성하면 CPU가 소모되며 컴퓨팅 리소스는 서버에 영향을 주지 않고 이를 처리할 수 있어야 합니다.

    Note

    RAM을 확인할 때 OOM 킬러의 보고서가 있는지 `/var/log/syslog` 또는 `/var/log/messages`를 모니터링하세요.
    
  4. 성능이 만족스러우면 1단계로 돌아가서 용량 제한 400%로 반복합니다.

  5. 2단계와 3단계를 반복합니다.

  6. 어느 시점에서 새 서버 생성이 기존 서버에 영향을 미치기 시작합니다. 이는 컴퓨팅 리소스의 용량을 찾았다는 의미입니다.

Note

대부분의 경우 RAM보다 CPU 용량이 더 중요합니다. 일반적으로 RAM을 늘릴 수 있지만 CPU는 늘릴 수 없습니다.