Project Server 2010에서 하드웨어 아키텍처 계획

 

적용 대상: Project Server 2010

마지막으로 수정된 항목: 2015-03-09

다양한 요인이 Microsoft Project Server 2010의 처리량에 큰 영향을 줄 수 있습니다. 이러한 요인으로는 사용자 수, 사용자 작업의 유형/복잡도/빈도, 작업의 포스트백 수, 데이터 연결 성능 등이 있습니다. 하드웨어 아키텍처를 계획할 때는 이 섹션에서 설명하는 요인을 면밀하게 고려해야 합니다. Project Server는 다양한 방식으로 배포 및 구성할 수 있으므로, 지정된 수의 서버에서 지원 가능한 사용자 수를 간단하게 예측할 수 있는 방법은 없습니다. 따라서 프로덕션 환경에서 Project Server 2010을 배포하기 전에 작업 환경에서 테스트를 진행해야 합니다.

이 문서에서는 테스트를 통해 확인된 Microsoft Project Server 2010의 성능 및 용량 제한에 대해 설명하고, 테스트 환경 및 테스트 결과를 소개하며, 적절한 성능을 유지하기 위한 지침을 제공합니다. 이 문서의 정보를 참고하여 Project Server의 처리량 목표를 예측할 수 있습니다.

Microsoft Project Server 2010의 용량을 계획할 때는 Project Server 배포의 성능에 영향을 줄 수 있는 변수를 파악해야 합니다.

Project Server에서는 다양한 기능을 제공하므로, 간략하게 설명할 때는 비슷해 보이는 배포도 실제 성능 특성은 크게 다를 수 있습니다. 따라서 프로젝트 수나 시스템의 사용자 수만으로 수요의 특성을 지정해서는 안 됩니다. Project Server 배포의 성능을 고려할 때는 훨씬 세밀하고도 전체적인 방식을 사용해야 합니다. 예를 들어 작업 및 그에 따른 하드웨어 요구 사항은 다음 변수에 따라 달라집니다.

요인 특성

프로젝트

  • 프로젝트 수

  • 일반적인 프로젝트 규모(작업 측면)

  • 프로젝트 수준 사용자 지정 필드 수

  • 작업 간의 연결(종속성) 수

사용자

  • 사용자의 동시 작업 수준. 동시에 시스템을 사용하는 사용자의 수, 평균 로드 및 트래픽 스파이크 등이 있습니다.

  • 사용자의 보안 권한. 서버에서 지정된 시간에 사용자에게 제공해야 하는 데이터의 양과, 서버에서 수행해야 하는 보안 확인의 복잡도에 모두 영향을 줍니다.

  • 사용자의 지리적 분포. 사용자가 여러 지역에 걸쳐 분포되어 있으면 네트워크 대기 시간으로 인해 성능이 저하될 수 있습니다. 또한 사용자들이 각각 다른 시간에 서버를 사용하여 백업, 보고, Active Directory 동기화 등의 유지 관리 작업을 실행할 트래픽이 낮은 기간을 찾기가 어렵기 때문에 사용 패턴에도 영향을 줍니다.

사용 패턴

  • 작업 상황. 일반적으로 사용되는 기능 집합입니다. 예를 들어 작업표 작성 기능을 많이 사용하는 배포의 특성은 그렇지 않은 배포의 특성과는 다릅니다.

  • 페이지 요청 간의 평균 시간

  • 평균 세션 시간

  • 페이지 페이로드. 지정된 페이지의 웹 파트 수, 웹 파트에 포함된 페이지 등이 있습니다.

지정된 환경에서 성능에 영향을 줄 수 있는 변수는 훨씬 더 많으며, 이러한 각 변수는 서로 다른 영역에서 성능에 영향을 줄 수 있습니다. 이 문서에 설명된 일부 테스트 결과 및 권장 사항은 사용 중인 환경에 없는 기능이나 사용자 작업과 관련이 있을 수 있으므로 이러한 경우에는 솔루션에 적용하지 마십시오. 철저히 테스트를 거쳐야만 해당 환경과 관련된 정확한 데이터를 파악할 수 있습니다.

고려해야 할 기타 변수는 다음과 같습니다.


  • 사용자의 동시 작업 수준: 동시 사용자 부하는 용량 요구 사항을 설정하는 데 있어 중요한 요인입니다. 시스템의 사용자 수는 적지만 트래픽이 높은 기간 동안 사용자들이 모두 동시에 서버와 상호 작용을 할 수 있습니다. 예를 들어 모든 사용자들이 매주 같은 시간에 상태/작업표 업데이트를 제출하는 조직의 경우 해당 기간 동안에는 성능이 크게 떨어집니다. 이처럼 사용량이 특히 많은 기간이 있는 경우 데이터 집합에 권장되는 추가 리소스를 토폴로지에 추가하도록 계획할 수 있습니다.


  • 사용자 역할 분할: 관리자, 포트폴리오 관리자, 프로젝트 관리자, 팀 구성원 등과 같이 사용자가 세분화되어 있으면 각 유형의 사용자가 액세스하는 데이터의 양이 다르기 때문에 배포의 성능에 영향을 줍니다. 서로 다른 보안 범주에 속한 사용자가 볼 수 있는 프로젝트 및 리소스의 수는 각각 다릅니다. 예를 들어 관리자는 Project Center를 로드할 때 서버의 모든 프로젝트를 볼 수 있고 Resource Center를 로드할 때 모든 리소스를 볼 수 있는 반면, 프로젝트 관리자는 자신의 프로젝트만 볼 수 있습니다. 따라서 이러한 사용자의 체감 성능이 저하될 수 있습니다. 가능한 경우에는 서버 설정 > 보기 관리에서 정의하는 보기에서 적절한 필터를 정의하여 지정된 보기에 표시되는 프로젝트, 작업 또는 리소스의 수를 제한하는 것이 좋습니다.


  • 사용자의 전 세계적 분산


  • 문제점, 위험 및 결과물: 이러한 항목들이 많은 경우 SQL Server의 부하가 추가될 수 있습니다. 특히 프로젝트 사이트에서 이러한 항목들을 보고 상호 작용하는 빈도가 높아지면 부하가 추가될 가능성이 높습니다. 이러한 기능을 많이 사용하는 경우 SQL Server 배포에 리소스를 추가로 할당하여 높은 수준의 성능을 유지할 수 있습니다. 이러한 요소와 프로젝트 사이트 기능은 SharePoint 사이트 및 목록이므로, 설명서에서 SharePoint 사이트 및 목록 확장에 대한 내용을 참조할 수 있습니다.


  • 일정: 프로젝트, 작업 및 리소스에 대해 사용자 지정 일정을 정의할 수 있습니다. 이렇게 하면 일정 엔진에 큰 영향을 주며, 응용 프로그램 및 데이터베이스 서버에서 CPU 사용량이 늘어납니다.

일반적인 데이터 집합

이 섹션에서 설명하는 데이터 집합의 특징은 아래 표에 나와 있는 변수로 지정됩니다. 이러한 변수가 Project Server의 성능에 영향을 주는 모든 요인을 보여 주는 것은 아닙니다. 즉, 배포에서 흔히 사용되는 기능 조합에 대한 특징을 보여 주지는 않습니다. 그러나 적절한 용량을 결정하는 데 있어 큰 영향을 주는 대부분의 정보는 보여 줍니다.

엔터티 설명/참고 사항 소규모 중간 규모 대규모

1

프로젝트

100

5000

20000

1

작업

17125

856250

3425000

1

프로젝트당 평균 작업 수

171.25

171.25

171.25

2

작업 트랜잭션 기록

지정된 작업에 대해 상태를 제출 및 승인하는 횟수

10

100

1000

1

배정

22263

1113125

4500000

1

작업당 평균 배정 수

1.3

1.3

1.3

2/3

승인

관리자당 보류 중인 업데이트 수

50

600

3000

사용자

1000

10000

50000

사용자 지정 필드

프로젝트(수식)

3

20

25

사용자 지정 필드

프로젝트(수동)

2

40

50

사용자 지정 필드

작업(수식)

작업 수식 필드는 각 작업에 대해 계산해야 하므로 성능에 가장 큰 영향을 주는 경우가 많습니다.

6

12

15

사용자 지정 필드

작업(수동)

4

8

10

사용자 지정 필드

배정 롤다운

50%

50%

50%

사용자 지정 필드

리소스

10

20

25

사용자 지정 필드

조회 테이블 사용자 지정 필드

2

15

100

1

연도별 작업표

작업표를 많이 사용할수록 SQL Server에 대한 리소스 수요가 높아집니다.

52000

780000

8,320,000

1

작업표 행

5

10

10

하드웨어 권장 사항

다음 섹션에서는 성능 및 용량에 대한 일반적인 권장 사항을 설명합니다. 이러한 권장 사항을 참조하여 요구 사항에 맞는 적절한 시작 토폴로지를 파악하고 시작 토폴로지의 수평 또는 수직 확장 여부를 결정할 수 있습니다.

이 문서 전반에 걸쳐 Windows Server에서 설정되는 세 가지 역할(웹 프런트 엔드 서버 역할, 응용 프로그램 서버 역할, 데이터베이스(SQL) 서버 역할)에 대해 설명합니다. 이러한 역할은 모두 전체 Project Serveer 2010 배포의 구성 요소입니다. 웹 프런트 엔드 서버는 Project Server에 액세스하는 사용자의 인터페이스 역할을 합니다. 응용 프로그램 서버는 Project Server 데이터 계층에 대한 요청을 처리하고 Project Server 2010의 비즈니스 논리를 구현합니다. 마지막으로, 데이터베이스 계층은 Project Server 2010 데이터베이스가 저장되는 데이터 원본입니다. 소규모 배포의 경우 웹 프런트 엔드 서버, 응용 프로그램 서버 및 데이터베이스 서버 역할을 같은 실제 컴퓨터에서 결합할 수 있습니다. 대규모 배포의 경우에는 이 세 항목을 각각 별도의 컴퓨터로 분리하거나 같은 역할을 여러 대의 실제 컴퓨터에서 수행하도록 할 수 있습니다.

소규모 집합 하드웨어 권장 사항

이 섹션에서는 위의 "일반적인 데이터 집합" 섹션에서 해당 특성을 살펴보았던 소규모, 중간 규모 및 대규모 데이터 집합 크기에 각각 권장되는 토폴로지에 대해 설명합니다. 이러한 데이터 집합 크기에 대한 대부분의 사용 패턴에는 각 데이터 집합의 권장 토폴로지를 사용하면 적절한 성능을 얻을 수 있습니다. 그러나 이 문서의 나머지 부분에서 제공하는 특정 권장 사항을 고려하여 대략적인 데이터 집합에 대해 권장되는 토폴로지를 확장해야 할지를 결정하는 것이 좋습니다. 일반적으로는 토폴로지의 성능 메트릭을 모니터링하여 성능 특성이 만족스럽지 않으면 토폴로지를 적절하게 확장해야 합니다.

Project Server 2010과 SharePoint Server 2010은 함께 사용되므로 프로세서, RAM, 하드 디스크 등의 리소스가 추가로 사용됩니다. SharePoint Server 2010에 대한 지침 요구 사항은 Project Server 2010 설치(소규모 데이터 집합/가끔 사용)에도 적용됩니다. 그러나 데이터 집합이 더 크고 사용량도 많은 경우에는 추가 하드웨어 리소스가 필요합니다. 독립 실행형 컴퓨터에서 배포하며 데이터 집합이 소규모인 경우 체감 성능을 높은 수준으로 유지하려면 16GB RAM이 권장됩니다. 데이터 집합이 더 큰 경우에는 가능하면 SQL Server를 실행하는 전용 컴퓨터에 데이터베이스를 배치하여 데이터베이스 서버를 응용 프로그램 및 웹 프런트 엔드 계층에서 분리하는 것이 좋습니다*.*

아래 표에는 기본 제공 데이터베이스가 설치된 단일 서버 및 팜에 서버가 하나 또는 여러 개 포함된 서버 팜 설치의 사양이 나와 있습니다.

프런트 엔드 웹/응용 프로그램 서버

구성 요소 권장

프로세서

64비트 4개 코어, 코어당 최소 2.5GHz

RAM

개발자 또는 평가용의 경우 4GB/프로덕션용 단일 서버 및 다중 서버 팜 설치의 경우 8GB

하드 디스크

80GB

SQL Server

구성 요소 권장

프로세서

64비트 4개 코어, 코어당 최소 2.5GHz(데이터베이스 크기가 중간 규모 데이터 집합보다 훨씬 큰 경우에는 8개 코어 권장)

RAM

개발자 또는 평가용의 경우 4GB/프로덕션용 단일 서버 및 다중 서버 팜 설치의 경우 8GB

하드 디스크

80GB

중간 규모 집합 하드웨어 권장 사항

중간 규모 데이터 집합에 대해 지정된 최소 요구 사항은 추가 로드를 처리하기 위해 수평 및 수직 확장할 수 있습니다. 수평 및 수직 확장된 토폴로지에서는 증가한 사용자 부하 및 데이터 부하를 처리하는 방법에 대한 고려 사항에 대해 설명합니다.

일반적으로는 토폴로지에 웹 프런트 엔드 서버 및 응용 프로그램 서버를 추가할 수 있는 컴퓨터를 충분히 준비하여 추가 사용자 로드 및 데이터 로드를 처리할 수 있도록 준비해야 합니다. 웹 프런트 엔드 서버 및 응용 프로그램 서버의 하드웨어 사양은 거의 동일하게 유지할 수 있습니다. 대부분의 중간 규모 데이터 집합 및 사용 패턴의 요구를 충족하는 데는 4x2x1 토폴로지면 충분합니다. 응용 프로그램 및 웹 프런트 엔드 서버를 수평 확장하면 SQL Server 배포에 로드가 더 추가되며, 이를 보완하기 위해 메모리와 CPU 리소스를 더 추가해야 합니다. 다음 SQL Server 사양을 적용하면 대부분의 중간 규모 데이터 집합 성능 요구 사항을 충족할 수 있습니다. 디자인한 토폴로지가 성능 요구 사항을 충족하는지를 파악하는 가장 좋은 방법은, 준비 환경을 설정하여 토폴로지를 테스트하고 성능 특성을 모니터링하는 것입니다.

프런트 엔드 웹 서버

구성 요소 권장

프로세서

64비트 4개 코어, 코어당 최소 2.5GHz

RAM

개발자 또는 평가용의 경우 4GB/프로덕션용 단일 서버 및 다중 서버 팜 설치의 경우 8GB

하드 디스크

80GB

응용 프로그램 서버

구성 요소 권장

프로세서

64비트 4개 코어, 코어당 최소 2.5GHz

RAM

개발자 또는 평가용의 경우 4GB/프로덕션용 단일 서버 및 다중 서버 팜 설치의 경우 8GB

하드 디스크

80GB

SQL Server

구성 요소 권장

프로세서

64비트 8개 코어, 코어당 최소 2.5GHz(데이터베이스 크기가 중간 규모 데이터 집합보다 훨씬 큰 경우에는 8개 코어 권장)

RAM

32GB

하드 디스크

160GB

대규모 집합 하드웨어 권장 사항

대규모 데이터 집합의 경우 데이터 로드로 인해 성능 병목 현상이 가장 많이 발생합니다.

일반적으로 대규모 데이터 집합에서는 최소한 4x2x1 토폴로지를 사용해야 합니다. 웹 프런트 엔드 및 응용 프로그램 서버의 하드웨어 특성은 소규모 및 중간 규모 데이터 집합의 권장 특성과 거의 비슷하게 유지할 수 있습니다. 그러나 SQL Server 설치에서 병목 현상이 발생하는 경우 이와 같이 특성을 동일하게 유지하면 웹 프런트 엔드 및 응용 프로그램 서버를 추가하여 수평 확장하는 기능이 제한될 수 있습니다. 데이터 로드에서 병목 현상이 발생하는 경우 웹 프런트 엔드 및 응용 프로그램 서버를 추가해도 처리량은 증가하지 않습니다.

대규모 데이터베이스의 경우 Project Server 2010도 설치되어 있는 SharePoint Server 2010 인스턴스의 사용량도 많은 경우, 즉 SharePoint Server 2010 배포를 Project Server 2010 기능뿐만이 아니라 다른 용도로도 사용하는 경우에는 4개의 Project Server 2010 데이터베이스를 SharePoint Server 2010 콘텐츠 데이터베이스와 분리하여 자체 전용 SQL Server 인스턴스에 배치하는 것이 좋습니다.

데이터 처리량에서 병목 현상이 발생하는 경우에는 토폴로지의 SQL Server 계층에 리소스를 더 추가해야 합니다. RAM, CPU 및 하드 디스크 리소스를 추가하여 SQL Server 설치를 수직 확장할 수 있습니다. 다음 섹션에는 대규모 데이터 집합 토폴로지의 SQL Server 계층에 대한 최소 및 권장 사양이 나와 있습니다.

최소 SQL Server 요구 사항

구성 요소 권장

프로세서

64비트 8개 코어, 코어당 최소 2.5GHz(데이터베이스 크기가 중간 규모 데이터 집합보다 훨씬 큰 경우에는 8개 코어 권장)

RAM

32GB

하드 디스크

250GB

권장 SQL Server 요구 사항

구성 요소 권장

프로세서

64비트 8개 코어, 코어당 최소 2.5GHz(데이터베이스 크기가 중간 규모 데이터 집합보다 훨씬 큰 경우에는 8개 코어 권장)

RAM

64GB

하드 디스크

300GB 이상. 보고 데이터베이스는 별도의 데이터베이스 서버에 배치합니다. 여러 디스크에 데이터를 분리하고 데이터 우선 순위를 지정하는 것이 좋습니다. 데이터 파일과 SQL Server 2008 트랜잭션 로그는 별도의 실제 하드 디스크에 배치합니다. RAID 5를 사용하면 안정성과 처리량 간의 균형을 적절하게 유지할 수 있습니다.

가상화 요구 사항

Project Server 2010에서는 가상화된 컴퓨터 실행을 지원하지 않습니다. SharePoint Server 2010의 가상화에 대한 권장 사항은 대부분 Project Server 2010에도 적용됩니다. SharePoint Server 2010의 가상화에 대한 문서는 가상화 계획(SharePoint Server 2010)을 참조하십시오. Project Server 2007 가상화 가이드에서도 가상화 및 Project Server 2010에 대한 추가 정보를 참조할 수 있습니다(대부분의 지침은 계속 적용됨). 그러나 가상화를 적용하는 경우에는 동일한 실제 인스턴스에서 실행되는 가상화된 컴퓨터 간의 실제 컴퓨터 리소스 경합을 고려해야 합니다.

참고

가상화된 컴퓨터에서는 SQL Server를 실행하지 않는 것이 좋습니다. 가상화된 컴퓨터에서 리소스 경합이 발생하는 경우 서버 성능이 크게 저하될 수 있습니다. 가상화된 환경에서 SQL Server를 실행해야 하는 경우에는 다음 설정을 사용하는 것이 좋습니다.

  1. 네트워크 어댑터:

    • Hyper-V 가상화를 사용하는 경우 기존의 네트워크 어댑터가 아닌 가상 네트워크 어댑터를 사용해야 합니다.

  2. 가상 디스크:

    • SQL Server를 실행하는 가상 컴퓨터의 경우 디스크 유형으로 "동적"이나 "고정"이 아닌 "통과" 옵션을 선택하는 것이 좋습니다. 이 옵션을 선택할 수 없는 경우 동적으로 크기가 조정되는 가상 디스크가 아닌 고정된 디스크 크기를 사용해야 합니다.

    • 부팅 드라이브로는 SCSI가 아닌 IDE를 선택하는 것이 좋습니다.

    • 예상되는 최대 데이터 집합 크기와 ULS 로깅 수요를 처리할 수 있도록 하드 디스크 공간을 충분히 할당합니다.

  3. 메모리:

    • SQL Server를 실행하는 가상 컴퓨터에는 최대한 메모리를 충분히 할당해야 합니다. 즉, 동일한 기능을 제공하는 실제 서버의 필수/권장 메모리 양에 해당하는 메모리를 할당해야 합니다.

    • 호스트 운영 체제용으로 2GB 이상의 메모리를 예약해야 합니다.

가상화된 환경에서 웹 프런트 엔드 또는 응용 프로그램 서버를 실행하는 경우 가상화된 환경에서 SQL Server를 실행하는 성능이 크게 저하되지는 않습니다.

네트워크 요구 사항

대부분의 Project Server 배포에서는 네트워크 대역폭으로 인해 성능 병목 현상이 발생하지 않습니다. 아래 표에는 네트워크 구성 요소의 권장 사양이 나와 있습니다. 일반적으로는 응용 프로그램 계층과 SQL Server 계층 간에 낮은 대기 시간을 유지해야 합니다.

구성 요소 소규모/중간 규모 데이터 집합 대규모 데이터 집합

NIC 수

1

2

NIC 속도(네트워크)

100mbps 이상이면 적절함

1GB/s

부하 분산 장치 유형

NLB 또는 하드웨어(둘 다 사용 가능)

NLB 또는 하드웨어(둘 다 사용 가능)