용량 계획을 도와 줄 수 있습니까?


132

이것은이다 표준 질문 에 대한 용량 계획

관련 :

용량 계획과 관련하여 질문이 있습니다. 서버 결함 커뮤니티가 다음을 도울 수 있습니까?


  • 일부 사용자 를 처리하려면 어떤 종류의 서버가 필요 합니까?
  • 일부 사양 의 서버는 명의 사용자를 처리 할 수 있습니까?
  • 일부 서버 구성은 충분히 빨리 내 사용 사례 ?
  • 소셜 네트워킹 사이트를 구축하고 있습니다. 어떤 종류의 하드웨어가 필요합니까?
  • 일부 프로젝트 에는 얼마나 많은 대역폭이 필요 합니까?
  • 일부 응용 프로그램 에서 명의 사용자가 사용 하는 대역폭은 얼마 입니까?

답변:


97

서버 결함 커뮤니티는 일반적으로 용량 계획에 도움을 줄 수 없습니다. 우리가 제공 할 수있는 가장 좋은 대답은 "운영 환경에서 사용하는 것과 유사한 하드웨어에서 코드를 벤치마킹하고 병목 현상을 식별 한 다음 워크로드의 양을 결정하는 것입니다. 현재 하드웨어는 대상 워크로드를 처리하는 데 필요한 하드웨어 성능 및 / 또는 얼마나 많은 하드웨어 성능을 제공 할 수 있습니다 .


용량 계획에는 다음과 같은 여러 가지 요인이 있습니다. 질문과 대답 사이트에서는 적절하게 평가할 수 없습니다.

  • 특정 코드 / 소프트웨어의 요구 사항
  • 외부 리소스 (데이터베이스, 기타 소프트웨어 / 사이트 / 서버)
  • 작업량 (피크, 평균, 대기열)
  • 성과의 비즈니스 가치 (비용 / 이익 분석)
  • 사용자의 성능 기대
  • 귀하가 가질 수있는 모든 서비스 수준 계약 / 계약 상 의무

이러한 요소 및 기타 요소에 대한 적절한 분석을 수행하는 것은 간단한 질문 및 답변 사이트의 범위를 벗어납니다. 팀 및 (또는 적절한 보상 컨설턴트) 만 효율적으로 수집 할 수있는 환경 및 요구 사항에 대한 자세한 지식이 필요합니다.


일부 용량 계획 원칙

  1. RAM이 저렴
    합니다. 응용 프로그램에서 많은 RAM을 사용할 것으로 예상되는 경우 가능한 한 많은 RAM을 넣어야합니다.
  2. 디스크가 저렴
    합니다. 많은 디스크를 사용하려면 큰 드라이브를 구입해야합니다.
    SAN / NAS 스토리지는 저렴하며 나중에 비용이 많이 드는 업그레이드를 피하기 위해 일반적으로 작은 것이 아니라 큰 것으로 지정해야합니다.
  3. 시간이지나면서 워크로드 증가
    리소스 요구가 증가한다고 가정합니다.
    증가가 대칭 적이 지 않을 수 있으며 (CPU 및 RAM이 디스크보다 빠르게 상승 할 수 있음) 선형이 아닐 수 있습니다.
  4. 전기는 비싸다
    RAM과 디스크의 가격은 상당히 하락했지만 전기 비용은 꾸준히 증가했다. CPU 전원은 말할 것도없고 추가 디스크와 RAM은 전기 요금 (또는 공급자에게 지불하는 요금)을 증가시킵니다. 그에 따라 계획하십시오.

1
당신은 그것을 완전히 버리고 부품별로 통합을 사용해야합니다!
Gilles

+1. 공리 # 1에서 제안한 것처럼 RAM은 큰 이점이있는 것들 중 하나입니다. 예를 들어, 캐싱을보다 잘 활용하는 능력이 향상되어 데이터베이스 쿼리를 줄일 수있어 디스크 및 CPU의 부하가 줄어 듭니다. 서버와 함께 빠른 CPU를 제공하고 최소한의 RAM을 제공하는 호스팅 제공 업체에 종종 좌절합니다.
Steve Wortham 23

31
디스크 용량 이 저렴합니다. 디스크 성능 이 비쌉니다. 특히 10 년 이상 디스크 크기가 커지는 것을 볼 때 물리 법칙은 바뀌지 않았습니다. 필자가 사용하는 규칙 (오늘 현재, 2014 년 6 월)은 최적의 성능을 위해 SATA의 스핀들 당 75 IOP, FC의 스핀들 당 200 IOP 및 SSD 당 1500 IOP입니다. 큰 SATA 드라이브는 기가 바이트 당 IO 비율이 매우 낮습니다.
Sobrique

2019 년 중반에는 더 이상 스핀들 드라이브를 구매하지 않아야합니다.
Robert Harvey

@RobertHarvey 는 더 이상 SAS 스핀들 드라이브를 구매하지 않아야합니다 . 페타 박스 스케일 서버의 용량을 확보하려면 여전히 많은 SATA 드라이브가 필요합니다.
Mikko Rantalainen

44

가상 머신 수 계획

단일 호스트에서 몇 개의 VM을 계획해야하는지 파악할 때 실제로는 좋은 규칙이 없습니다. 사실, 단 하나만 있으며, 그것은 단지 좋은 것입니다.

가상 머신 수는 일반적으로 RAM이 아닌 경우를 제외하고 RAM에 의해 제한됩니다.

별로 도움이되지 않습니다. 해당 VM에서 CPU가 적은 애플리케이션을 실행하는 경우 리미터는 RAM을 기반으로합니다. 각 VM 플랫폼에는 RAM을 과도하게 구독 할 수있는 고유 한 기능이 있으므로 TOTAL_RAM / Per-VM-RAM = MachineCount만큼 쉽지는 않지만 그 수는 좋은 계획 항목입니다.

그러나 VM이 CPU가 적은 패킷 슬링 외에 다른 작업을 수행하는 경우 어떻게됩니까?


가상 시스템 수는 호스트 시스템에서 사용 가능한 7 개의 개별 리소스로 제한됩니다.

  • 하이퍼 바이저 VMware, Xen, HyperV, KVM 등 각각 고유 한 카운트 영향 기능이 있습니다. 일부는 메모리 페이지 중복 제거에 매우 능숙하고 다른 일부는 그다지 중요하지 않습니다. 일부는 CPU 용량의 초과 가입을 허용하지 않으며 일부는 허용합니다.
  • CPU Core Speed ​​(CPU 코어 속도) VM이 실행할 수있는 최대 단일 스레드 성능을 제한합니다. 1.8GHz CPU의 36 코어는 호스트에서 64.8GHz CPU 일 수 있지만 단일 스레드는 1.8GHz보다 빠르게 실행되지 않습니다.
  • CPU 코어 수 코어 속도와 함께 경험할 수있는 최대 CPU 성능의 상한을 설명합니다.
  • 시스템 RAM 위에서 설명한 것처럼 실행할 수있는 VM의 수가 제한됩니다. 특정 하이퍼 바이저는 메모리 페이지 중복 제거와 같은 점에서 다른 하이퍼 바이저보다 낫습니다. 따라서 100 개의 동일한 VM을 실행하는 경우 100 개의 완전히 다른 VM을 실행하는 것보다 이러한 중복 제거 시스템에서 훨씬 더 많은 것을 포장 할 수 있습니다.
  • 디스크 크기 각 OS 이미지에는 일정한 공간이 필요합니다. 모두 저장하기에 충분한 공간이 필요합니다. 따라서 디스크 크기는 호스팅 할 수있는 VM 수의 상한을 설정합니다.
  • I / O 대역폭 VM의 기본 디스크는 초당 처리 할 수있는 I / O 수에 대한 최대 값을 갖습니다. 너무 많이 던지면 I / O가 완료 될 때까지 시스템이 멈출 것입니다. 이렇게하면 실행할 수있는 I / O 소비 VM 수에 대한 상한이 설정됩니다.
  • 네트워크 대역폭 네트워크를 사용하는 VM의 경우 사용 가능한 네트워크 대역폭은 지정된 호스트에서 실행할 수있는 VM 수를 상한선으로 설정합니다.

이 모든 것들이 넘어 질 수 있으며 VM에서 수행하는 작업에 따라 다릅니다. 기억해야 할 사항 :

  • 일반적인 시스템은 없습니다.
  • 애플리케이션 코드는 간신히 이동 하는 CDN 스타일 서빙에서 비디오 트랜스 코딩과 같은 큰 틈새에 이르기까지 실행할 수 있기 때문에 일반적인 웹 서버와 같은 것은 없습니다 .
  • 일반 데이터베이스 서버와 같은 것은 없습니다 . 세션 상태 추적에 사용되는 작은 시스템에서 매우 큰 시스템까지 실행할 수 있습니다.

호스트 시스템에 얼마나 많은 VM을 패키징 할 수 있는지 파악하려면 시스템의 실행 방식과 제대로 실행하는 데 필요한 사항을 알아야합니다. 그 사실을 알면 카운트 계획을 수행 할 수 있습니다. 그리고 더 나은 방법으로, 호스트 시스템을 만드는 데 얼마나 강력한 지 알아보십시오!


무엇보다도 바인딩되지 않은 VM이있는 두 개의 별도 물리적 서버에서 vm 기반 시스템을 사용하십시오. 이것은 전체 시스템의 손실없이 하드웨어 고장을 허용합니다. vm은 데이터 손실없이 동일한 서버간에 이동할 수 있습니다. 세션이 손실 된 다음 다시 작성됩니다. 개인적으로 이러한 서비스를 제공하는 호스팅 회사 (Google 또는 Amazon)에 아웃소싱합니다. 그들은 비싸지 만 자신을 운영하는 것보다 훨씬 적습니다.
랜덤 -IT

2
VM 구현에서 가장 자주 크기가 축소 된 것은 디스크 I / O입니다. 대부분의 사람들은 디스크 공간, CPU 속도 및 메모리를 이해합니다. 그들은 그 디스크 성능을 잊어 버립니다.
Dan Pritts

6

올바른 질문을하고 있는지 확인하십시오.

  • 컴퓨터가 싸다
  • 미래의 요구는 예측하기 매우 어렵다
  • 미리 구매할 것이 아니라 확장하는 방법 계획

필요한 것이 무엇인지 모른다면 크게 필요하지 않다는 것을 의미합니다. 핫 웹 사이트가 있다면 앱에 필요한 램, 디스크, io, 네트워크 등을 얼마나 알고있는 운영 팀도있을 것입니다. 당신이 꿈꾸는 단계에 있다면, 당신은 데스크탑에서 시작하여 당신의 길을 따라야합니다.

일이 커질 때 어떻게 확장 할 것인지에 대한 아이디어가 있는지 확인하십시오. 로드 밸런서 뒤에 서버를 더 추가 할 수 있습니까? redis 서버를 파쇄 할 수 있습니까?

또한 자신 만의 데이터 센터를 보유하고 있습니다. 데이터 센터 (컴퓨터 한 대 일지라도)는 실제 목적에 방해가됩니다. 컴퓨터를 구입하여 켜고 나갈 수는 없습니다. 에어컨, 공기 여과, 안정적인 전력, 안정적인 인터넷, 백업, 예비 부품, 성장할 물리적 공간, 성장할 전력 용량, 넘어지지 않는 전원 케이블 및 다른 골치 아픈 두통이 필요합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.