Thursday, November 08, 2007

Exchange 메모리 사용과 /3GB 스위치

기본적으로 Windows는 총 4GB의 가상 주소 공간을 주소 지정할 수 있습니다. 기본적으로 이 중 2GB는 커널(운영 체제)용으로 예약되고 나머지 2GB는 Exchange 같은 사용자 모드 프로그램용으로 예약됩니다.

운영 체제의 Boot.ini 파일에 /3GB 스위치를 추가하면 사용자 모드 프로그램에 3GB의 공간을 제공하고 커널을 1GB로 제한하도록 가상 주소 공간 분배가 다시 할당됩니다. /3GB 스위치는 사서함 저장소나 공용 폴더 저장소가 있는 컴퓨터에서만 필요합니다. 사서함 저장소나 공용 폴더 저장소가 없는 컴퓨터에서는 이 스위치를 사용하지 않는 것이 좋습니다.

중요 다음 운영 체제에서만 /3GB 스위치를 사용하십시오.
• Microsoft Windows Server 2003 Datacenter Edition
• Microsoft Windows Server 2003 Enterprise Edition
• Microsoft Windows 2000 Advanced Server
• Microsoft Windows 2000 Datacenter Server
• Microsoft Windows NT 4.0 Enterprise Server
주의 Microsoft는 Active Directory에서 사용할 수 있도록 제작 환경의 Microsoft Windows Server 2003 Standard Edition에서 /3GB 스위치 사용을 지원합니다. 제작 환경에서 이 기능을 사용할 때 Microsoft Exchange Server 2003이 지원됩니다. 그렇지 않은 경우 Windows Server 2003 Standard Edition에서 /3GB 스위치는 개발 및 테스트용으로만 사용됩니다.

다음 운영 체제에서는 /3GB 스위치를 사용하지 마십시오.
• Microsoft Windows 2000 Server
• Microsoft Windows NT 4.0 Server
Windows 2000 Server와 Windows NT 4.0 Server에서는 사용자 모드 프로그램에 최대 2GB만 할당할 수 있습니다. Windows 2000 Server나 Windows NT 4.0 Server에서 /3GB 스위치를 사용하면 커널용으로 1GB와 사용자 모드 프로그램용으로 2GB가 할당되어 1GB의 주소 공간이 손실됩니다.

이런 메모리 부족이 발생하면 가상 메모리 조각화가 발생하여 문제를 information store 서비스가 비정상 동작하게 된다.

관련 성능 카운터
(1) MSExchangeIS - VMLargest Block Size
가상 메모리의 가장 큰 free block 크기를 byte 크기로 알려 줍니다.
이 값이 32MB 이하가 되면 9582 이벤트가 경고로 발생하고
16MB 이하가 되면 에러로 이벤트가 남게 됩니다.
이 값은 32MB 이하로 내려가서는 안 됩니다.
(2) MSExchangeIS – VM Total 16mb Free Blocks
16MB 이상의 가상 메모리 블록의 개수를 나타내고 1 밑으로 값이 떨어져서는 안 됩니다.
(3) MSExchangeIS – VM Total Free Blocks
크기와 상관없이 가용한 가상 메모리 블록크리의 총 개수를 나타냅니다.
역시 1 밑으로 값이 떨어져서는 안 됩니다.
(4) MSExchangeIS – VM Total Largest Free Block Bytes
16MB 이상이ㅡ 크기를 가지는 가상 메모리들만의 총 바이트 입니다.
50MB 밑으로 떨어져서는 안 됩니다.

관련 성능 카운터의 임계치를 넘어서면
이벤트 9582를 발생시킨다. 해당 이벤트를 만나면 서비스를 재시작하여 큰 문제를 막아야 한다.

No comments: