Amazon Elastic Compute Cloud(Amazon EC2) Windows 인스턴스의 CPU 사용률이 높지만 인스턴스 CPU가 제한되지 않습니다. 높은 CPU 사용률을 진단하고 싶습니다.
해결 방법
높은 CPU 사용률을 확인하려면 AWSSupport-TroubleshootWindowsPerformance 런북을 실행하거나 CPU 사용률이 높은 프로세스를 수동으로 식별하십시오.
CPU 사용률을 높이는 특정 프로세스를 파악한 후 해당 애플리케이션의 문제를 해결하십시오.
AWSSupport-TroubleshootWindowsPerformance 런북 실행
사전 요구 사항: 런북을 시작하기 전에 AWS Identify and Access Management(IAM) 사용자 또는 역할에 필요한 권한이 있는지 확인하십시오. 자세한 내용은 AWSSupport-TroubleshootWindowsPerformance의 필수 IAM 권한을 참조하십시오.
다음 단계를 완료하십시오.
- AWS Systems Manager 콘솔을 엽니다.
- 리전 목록에서 AWS 리전을 선택합니다.
- 탐색 창에서 공유 리소스를 확장한 다음, 문서를 선택합니다.
- 검색 창에 AWSSupport-TroubleshootElasticBeanstalk를 입력한 다음, 런북을 선택합니다.
- 자동화 실행을 선택합니다.
- 실행을 선택합니다. 런북이 수행하는 작업 목록은 AWSSupport-TroubleshootWindowsPerformance의 문서 단계를 참조하십시오.
- 실행 결과에 대한 자세한 내용은 출력을 검토합니다.
수동으로 문제 해결
작업 관리자를 사용하여 높은 CPU 사용률의 원인 식별
다음 단계를 완료하십시오.
- 원격 데스크톱 프로토콜(RDP)을 사용하여 인스턴스에 연결합니다.
- CPU별로 정렬하려면 작업 관리자를 연 다음, CPU 열을 선택합니다.
- CPU 사용률이 높은 프로세스를 식별하여 프로세스가 예상 CPU 양을 사용하는지 확인합니다.
- 예상보다 많은 CPU를 사용하는 애플리케이션의 문제를 해결합니다.
애플리케이션이 예상 CPU 양을 사용하는 경우 인스턴스 유형을 변경하십시오. 자세한 내용은 EC2 Windows 인스턴스의 크기를 조정하거나 EC2 Windows 인스턴스 유형을 변경하려면 어떻게 해야 합니까?를 참조하십시오.
프로세스 탐색기를 사용하여 높은 CPU 사용률의 원인 식별
프로세스 탐색기는 Sysinternals Microsoft 유틸리티입니다. 자세한 내용은 Microsoft Learn 웹 사이트에서 Sysinternals를 참조하십시오.
다음 단계를 완료하십시오.
- 프로세스 탐색기를 인스턴스에 다운로드합니다. 다운로드하려면 Microsoft Ignite 웹 사이트의 프로세스 탐색기를 참조하십시오.
- 관리자 권한으로 애플리케이션을 실행합니다.
- CPU 열을 선택하여 사용량별로 프로세스를 정렬합니다.
- 보기, 프로세스 트리 표시를 선택하여 프로세스 간의 상위-하위 관계를 확인합니다.
참고: 스레드 탭을 선택하면 프로세스로 인해 CPU 사용률이 높아질 때 프로세스에서 수행하는 작업을 자세히 볼 수 있습니다.
여전히 높은 CPU 사용률의 원인을 확인할 수 없는 경우 성능 모니터 및 PAL(로그 성능 분석) 도구를 사용하십시오. 성능 모니터는 내장 Windows 도구입니다.
(선택 사항) 성능 모니터를 사용하여 높은 CPU 사용률의 원인 식별
다음 단계를 완료하십시오.
- RDP를 사용하여 인스턴스에 연결합니다.
- 성능 모니터를 연 다음, 데이터 수집기 세트를 확장합니다.
- 사용자 정의에 대한 컨텍스트 메뉴를 연 다음, 새로 생성, 데이터 수집기 세트를 선택합니다.
이름에 새 데이터 수집기 세트의 이름을 입력한 다음, **수동으로 생성(고급)**을 선택합니다.
- 다음을 선택합니다.
- 데이터 로그 생성에서 성능 카운터를 선택한 후 다음을 선택합니다.
- 추가를 선택합니다.
사용 가능한 카운터에서 프로세스, % 프로세서 시간을 선택합니다.
선택한 객체의 인스턴스에서 모든 인스턴스를 선택합니다.
추가를 선택합니다.
추가하려는 다른 성능 카운터에 대해 이 단계를 반복합니다.
- 확인을 선택합니다.
- (선택 사항) 샘플 간격 및 단위를 원하는 값으로 설정합니다.
- 다음을 선택합니다.
- 데이터를 저장할 여유 공간이 1GB 이상인 위치를 선택한 후 다음을 선택합니다.
- 저장 후 닫기를 선택한 다음, 마침을 선택합니다.
참고: CPU가 급증하는 경우 Start this data collector set now(지금 이 데이터 수집기 세트 시작)를 선택하십시오. 그런 다음, 마침을 선택합니다.
성능 모니터 도구가 데이터 수집을 완료한 후 보고서를 열고 검토하여 인스턴스 CPU를 사용하는 프로세스를 확인할 수 있습니다. 그런 다음, 해당 정보를 사용하여 CPU를 사용하는 특정 애플리케이션의 문제를 해결하십시오.
(선택 사항) PAL(로그 성능 분석)을 사용하여 분석용 보고서 생성
참고: 다음 단계는 GitHub에서 호스팅되는 오픈 소스 소프트웨어 사용을 포함합니다.
PAL은 성능 모니터 파일에서 보고서를 생성하여 보다 자세한 분석을 수행하는 데 사용할 수 있는 타사 도구입니다. PAL을 사용하려면 다음 단계를 완료하십시오.
- PAL을 설치한 후 PAL 마법사를 시작하고 다음을 선택합니다.
- 성능 카운터 로그에 성능 모니터 파일의 경로를 입력하고 다음을 선택합니다.
- 제목에서 시스템 개요를 선택한 후 다음을 선택합니다.
참고: 시스템 개요는 일반적인 운영 체제 성능 분석을 제공합니다.
- 질문 섹션의 각 항목에 대한 질문을 검토하고 답합니다. OS의 경우 인스턴스와 일치하는 비트 버전이 포함된 목록에서 사용 가능한 최신 운영 체제(OS) 버전을 선택합니다. 다음을 선택합니다.
- 카운터 로그의 모든 카운터 처리를 선택하고 다음을 선택합니다.
참고: 모든 카운터 인스턴스를 처리하려면 리소스가 많이 필요할 수 있습니다.
- 출력 폴더에서 PAL 보고서의 출력 디렉터리를 선택합니다.
- HTML 보고서의 경우 HTML 보고서를 선택한 후 다음을 선택합니다.
- 다음을 선택하고 마침을 선택합니다.
- PAL 보고서의 프로세스 및 프로세서 섹션을 검토하여 인스턴스 CPU를 사용하는 프로세스를 확인합니다.
관련 정보
T2 또는 T3 EC2 Windows 인스턴스의 CPU가 제한되고 있는지 어떻게 확인할 수 있습니까?
Systems Manager Automation으로 구동되는 자동화 작업 실행
자동화 설정