2008. 10. 20. 15:56 Windows/Active Directory
Active Directory 관리 시리즈3 - AD모니터링 및 문제 해결
○ Active Directory Monitoring
왜 성능분석이 필요한가?
문제 해결의 자료 제공
AD관리자의 입장에서 Query의 응답속도가 느리다던지
사용자 인증에 지연이 발생한 경우 Resource에 대한 병목현상등 판단
DC Sizing
New Server Deployment
새로운 DC를 도입할 경우 보다 정확한 DC의 Sizing이 필요
Server Consolidation
기존의 서버 Role을 통합할 경우 필요한 원하는 Spec의 Response를 가져갈 수 있는지 판단
Application 개발(개발자 입장)
AD의 기능
사용자 인증
Directory Service 제공
기업내의 Identity 정보 제공
LDAP Query의 응답속도 튜닝
○ 성능분석 도구들
도구 데이터
Perfmon 성능 카운터
Netmon 네트워크 패킷
Windows Server 2003 Performance Advisor
성능카운터 & Event Tracing(MS Windows에서 제공하는 Event Tracking Architecture, OS
차원에서 제공, Kernel Level Function Level까지 제공)
(Data 수집, 분석해서 Report를 제시함)
Event log 이벤트(오류발생시 오류 표시)
○ Windows Server 2003 Performance Advisor(버전 2.0)
Data 수집/성능분석/Report 기능 제공
- Active Directory
- Internet Information Server(IIS)
- Print Server
- DNS
등..
System Requirements
- Windows Server 2003 Only
- .Net 1.1 Framework
- SQL Server 2000 또는 MSDE
(반드시 필요하지는 않지만 Trending을 하고 싶다면 필요함, 성능추이)
Download
http://www.microsoft.com/downloads/details.aspx?FamilyID=09115420-8c9d-46b9-a9a5-9bffcd237da2&DisplayLang=en
○ Computer Role
Data
성능 데이터를 수집
Report 나 Both Computer Role을 맡은 시스템에 수집한 데이터 전달
Report
데이터를 분석하여 리포트 생성
Warning Rule에 따라 리포트에 상태 표시
(경고 메시지 규칙)
Both
한 시스템에서 Data와 Report 역할을 동시에 수행
데이터를 수집한 후 바로 리포트 생성, DC의 경우엔 Both로 설정하는 것을
권장하지 않음(각 DC는 Data로 설정, Report Computer Role을 다른 시스템에 설정)
Data와 Report 분리의 이유
개별 DC에 Performance Advisor를 설치한다면 부하가 발생하므로
Data로 Computer Role을 지정하고 부하가 덜 걸리는 2003 System에
Report Computer Role을 설정하여 다른 시스템의 Data를 가져와
관련 Report를 생성하는 역할을 분리
○ Data Collector
성능 카운터
일정간격(3초)마다 CPU, Disk, Memory와 같은 지정된 성능 카운터 데이터 수집
레지스트리
성능과 관련된 레지스트리 설정 값 수집
Event Tracing for Windows
User/Kernel mode provider가 제공하는 다음과 같은 데이터 수집
State Changes
Begin/End of significant operations
Resource creation/deletion
other events related to performance or reliability
Debug Event
○ Data Collector Group
SPA(Server Performance Advisor)에 의해 수집할 데이터와 리포트에 대해 정의한 Template
SPA가 설치될 때 자동으로 서버에 맞는 Data Collector Group이 설정됨
현재 9개의 Data Collector Group Template 제공
- System Overview
기본적 CPU, Memory, HDD, Network
- Active Directory
- ADAM
- IIS
- Print Spooler
- Performance Counters
- File
- DNS
- DNS Extended
DNS Debugging 기능 제공
○ Warning Rules
수집된 데이터들의 임계값 정의
Report를 생성할 때 각 데이터별로 정의된 Warning Rule의 임계값 내에서 동작중인지 점검
임계값을 넘으면 리포트에 관련 Advice 출력
시스템 성능에 따라 임계값 수정 가능
- System Health Index
CPU
0 < CPU활용률(%) <= 20 : Idle
20 < CPU활용률(%) < 80 : Normal
80 <= CPU활용률(%) : Busy
Network
Network활용률(%) <= 15 : Low Traffic
15 < Network활용률(%) < 60 : Normal Traffic
60 <= Network활용률(%) : High Traffic
Memory
0<Memory활용률(%) <=15 : Idle
15 < Memory활용률(%) < 75 : Normal
75 <= Memory 활용률(%) : High
Disk I/O
Disk I/O Rate <= 100 : Idle
100 < Disk I/O Rate < 500 : Normal
500 <= Disk I/O Rate : High
○ Warning Rule 변경
Server Performance Advisior -> Edit -> Rule
IDLE, Normal, Busy등의 값을 적절히 수정
○ 일반적인 AD 성능 이슈
- 높은 CPU 사용률(LSASS 100%)
현상
DC의 CPU 사용률이 지속적으로 100% 유지
일반적인 원인
Filter 없는 전체 검색
적절한 OU Baseline 지정 필요
연속적인 인증 재시도
Client로부터 인증 Request가 계속 날아오면
인증실패의 빈도가 늘어나면서 CPU 사용률이 100%를 차지함
대부분의 경우 인증 재시도 요구는 Application에서 오는 경우가
많음(예: 비밀번호 변경된 경우)
- Search Timeout
LDAP Query의 Response가 지정된 시간에 응답이 없는 경우
현상
Directory 검색 응답 시간이 매우 늦거나 Timeout으로 인해 Application 실패
일반적인 원인
Filter 없는 전체 검색
DC의 Resource 부족(CPU, 메모리, 디스크)
○ DS Search 성능 이슈
Windows Server Performance Advisor 이용
HKLM\SYSTEM\CurrentControlSet\Services\NTDS\Diagnostics의 Field Engineering값을 5로 설정
=> AD에서 수행한 LDAP Query문이 Event Log에 남는다.
○ Active Directory Troubleshooting
http://www.microsoft.com/technet/prodtechnol/windows2000serv/technologies/activedirectory/
maintain/opsguide/part1/adogd07.mspx