저장소 공간 Direct의 성능 기록

적용 대상: Windows Server 2022, Windows Server 2019

성능 기록은 저장소 공간 직접 관리자가 호스트 서버, 드라이브, 볼륨, 가상 머신 등에서 기록 컴퓨팅, 메모리, 네트워크 및 스토리지 측정에 쉽게 액세스할 수 있도록 하는 새로운 기능입니다. 성능 기록은 자동으로 수집되어 최대 1년 동안 클러스터에 저장됩니다.

Important

이 기능은 Windows Server 2019의 새로운 기능입니다. Windows Server 2016에서는 사용할 수 없습니다.

시작하기

성능 기록은 Windows Server 2019에서 저장소 공간 Direct를 사용하여 기본적으로 수집됩니다. 아무것도 설치, 구성 또는 시작할 필요가 없습니다. 인터넷 연결이 필요하지 않고, System Center가 필요하지 않으며, 외부 데이터베이스가 필요하지 않습니다.

클러스터의 성능 기록을 그래픽으로 보려면 Windows 관리 Center를 사용합니다.

Performance history in Windows Admin Center

프로그래밍 방식으로 쿼리하고 처리하려면 새 Get-ClusterPerf cmdlet을 사용합니다. PowerShell에서 사용량을 참조하세요.

수집된 항목

성능 기록은 7가지 유형의 개체에 대해 수집됩니다.

Types of objects

각 개체 형식에는 여러 계열이 있습니다. 예를 들어 ClusterNode.Cpu.Usage 각 서버에 대해 수집됩니다.

각 개체 형식에 대해 수집되는 항목과 이를 해석하는 방법에 대한 자세한 내용은 다음 하위 항목을 참조하세요.

Object 계열
드라이브 드라이브에 대해 수집되는 항목
네트워크 어댑터 네트워크 어댑터에 대해 수집되는 항목
서버 서버에 대해 수집되는 항목
가상 하드 디스크 가상 하드 디스크에 대해 수집되는 항목
가상 머신 가상 머신에 대해 수집되는 항목
볼륨 볼륨에 대해 수집되는 항목
클러스터 클러스터에 대해 수집되는 항목

많은 계열이 피어 개체에서 부모로 집계됩니다. 예를 들어 NetAdapter.Bandwidth.Inbound 각 네트워크 어댑터에 대해 개별적으로 수집되고 전체 서버에 집계됩니다. 마찬가지로 ClusterNode.Cpu.Usage 전체 클러스터로 집계됩니다.

시간대

성능 기록은 세분성이 감소하여 최대 1년 동안 저장됩니다. 가장 최근 시간 동안 측정값은 10초마다 사용할 수 있습니다. 그 후, 더 많은 시간에 걸쳐 덜 세분화된 계열로 지능적으로 병합됩니다(평균 또는 합계를 적절하게 합산). 가장 최근의 날에는 5분마다 측정값을 사용할 수 있습니다. 가장 최근 주, 15분마다; 등등.

Windows 관리 센터에서 차트의 오른쪽 위에 있는 시간 범위를 선택할 수 있습니다.

Timeframes in Windows Admin Center

PowerShell에서 매개 변수를 -TimeFrame 사용합니다.

사용 가능한 기간은 다음과 같습니다.

시간 프레임 측정 빈도 보존 기간
LastHour 10초마다 1시간
LastDay 5분마다 25시간
LastWeek 15분마다 8일
LastMonth 1시간마다 35일
LastYear 1일마다 400일

PowerShell의 사용량

cmdlet을 Get-ClusterPerformanceHistory 사용하여 PowerShell에서 성능 기록을 쿼리하고 처리합니다.

Get-ClusterPerformanceHistory

Get-ClusterPerf 별칭을 사용하여 일부 키 입력을 저장합니다.

예시

지난 1시간 동안의 가상 머신 MyVM 의 CPU 사용량을 가져옵니다.

Get-VM "MyVM" | Get-ClusterPerf -VMSeriesName "VM.Cpu.Usage" -TimeFrame LastHour

고급 예제를 보려면 최고값을 찾고, 평균을 계산하고, 추세선을 표시하고, 이상값 검색을 실행하는 시작 코드를 제공하는 게시된 샘플 스크립트 를 참조하세요.

개체 지정

파이프라인에서 원하는 개체를 지정할 수 있습니다. 7가지 유형의 개체에서 작동합니다.

파이프라인의 개체 예시
Get-PhysicalDisk Get-PhysicalDisk -SerialNumber "XYZ456" | Get-ClusterPerf
Get-NetAdapter Get-NetAdapter "Ethernet" | Get-ClusterPerf
Get-ClusterNode Get-ClusterNode "Server123" | Get-ClusterPerf
Get-VHD Get-VHD "C:\ClusterStorage\MyVolume\MyVHD.vhdx" | Get-ClusterPerf
Get-VM Get-VM "MyVM" | Get-ClusterPerf
Get-Volume Get-Volume -FriendlyName "MyVolume" | Get-ClusterPerf
Get-Cluster Get-Cluster "MyCluster" | Get-ClusterPerf

지정하지 않으면 전체 클러스터의 성능 기록이 반환됩니다.

계열 지정

다음 매개 변수를 사용하여 원하는 계열을 지정할 수 있습니다.

매개 변수 예시 List
-PhysicalDiskSeriesName "PhysicalDisk.Iops.Read" 드라이브에 대해 수집되는 항목
-NetAdapterSeriesName "NetAdapter.Bandwidth.Outbound" 네트워크 어댑터에 대해 수집되는 항목
-ClusterNodeSeriesName "ClusterNode.Cpu.Usage" 서버에 대해 수집되는 항목
-VHDSeriesName "Vhd.Size.Current" 가상 하드 디스크에 대해 수집되는 항목
-VMSeriesName "Vm.Memory.Assigned" 가상 머신에 대해 수집되는 항목
-VolumeSeriesName "Volume.Latency.Write" 볼륨에 대해 수집되는 항목
-ClusterSeriesName "PhysicalDisk.Size.Total" 클러스터에 대해 수집되는 항목

탭 완성을 사용하여 사용 가능한 계열을 검색합니다.

지정하지 않으면 지정된 개체에 사용할 수 있는 모든 계열이 반환됩니다.

시간 범위 지정

매개 변수를 사용하여 원하는 -TimeFrame 기록 기간을 지정할 수 있습니다.

탭 완성을 사용하여 사용 가능한 기간을 검색합니다.

지정하지 않으면 측정값이 MostRecent 반환됩니다.

작동 원리

성능 기록 스토리지

저장소 공간 Direct를 사용하도록 설정한 직후 약 10GB의 볼륨이 ClusterPerformanceHistory 생성되고 확장 가능한 스토리지 엔진(Microsoft JET라고도 함)의 인스턴스가 프로비전됩니다. 이 경량 데이터베이스는 관리분석자 개입 또는 관리 없이 성능 기록을 저장합니다.

Volume for performance history storage

볼륨은 저장소 공간 지원되며 클러스터의 노드 수에 따라 간단한 양방향 미러 또는 3방향 미러 복원력을 사용합니다. 저장소 공간 Direct의 다른 볼륨과 마찬가지로 드라이브 또는 서버 오류가 발생한 후 복구됩니다.

볼륨은 ReFS를 사용하지만 CSV(클러스터 공유 볼륨)는 아니므로 클러스터 그룹 소유자 노드에만 표시됩니다. 이 볼륨은 자동으로 생성되는 것 외에도 이 볼륨을 보거나, 찾아보거나, 크기를 조정하거나, 삭제할 수 있습니다(권장하지 않음). 문제가 발생하면 문제 해결을 참조 하세요.

개체 검색 및 데이터 수집

성능 기록은 클러스터의 어디서나 가상 머신과 같은 관련 개체를 자동으로 검색하고 성능 카운터 스트리밍을 시작합니다. 카운터는 집계, 동기화 및 데이터베이스에 삽입됩니다. 스트리밍은 지속적으로 실행되며 시스템 영향을 최소화하기 위해 최적화됩니다.

컬렉션은 상태 관리 서비스 처리되며, 이 노드가 실행 중인 노드가 다운되면 나중에 클러스터의 다른 노드에서 다시 시작됩니다. 성능 기록은 잠시 경과할 수 있지만 자동으로 다시 시작됩니다. PowerShell에서 실행 Get-ClusterResource Health 하여 상태 관리 서비스 및 해당 소유자 노드를 볼 수 있습니다.

측정 간격 처리

시간 프레임에 설명된 대로 측정값이 더 많은 시간에 걸쳐 있는 덜 세분화된 계열로 병합되는 경우 누락된 데이터의 기간은 제외됩니다. 예를 들어 서버가 30분 동안 다운된 후 다음 30분 ClusterNode.Cpu.Usage 동안 50%의 CPU에서 실행되는 경우 시간 평균은 50%(25%)가 아닌 50%로 올바르게 기록됩니다.

확장성 및 사용자 지정

성능 기록은 스크립팅에 친숙합니다. PowerShell을 사용하여 데이터베이스에서 직접 사용 가능한 기록을 끌어오면 자동화된 보고 또는 경고 빌드, 안전 유지 기록 내보내기, 사용자 고유의 시각화 롤 등을 수행할 수 있습니다. 유용한 시작 코드는 게시된 샘플 스크립트를 참조하세요.

추가 개체, 시간 범위 또는 계열에 대한 기록을 수집할 수 없습니다.

측정 빈도 및 보존 기간은 현재 구성할 수 없습니다.

성능 기록 시작 또는 중지

이 기능을 사용하도록 설정할 어떻게 할까요? 있나요?

사용자가 아닌 한 Stop-ClusterPerformanceHistory성능 기록은 기본적으로 사용하도록 설정됩니다.

다시 사용하도록 설정하려면 이 PowerShell cmdlet을 관리istrator로 실행합니다.

Start-ClusterPerformanceHistory

이 기능을 사용하지 않도록 설정할 어떻게 할까요? 있나요?

성능 기록 수집을 중지하려면 이 PowerShell cmdlet을 관리istrator로 실행합니다.

Stop-ClusterPerformanceHistory

기존 측정값을 삭제하려면 플래그를 -DeleteHistory 사용합니다.

Stop-ClusterPerformanceHistory -DeleteHistory

초기 배포 중에는 의 매개 변수 Enable-ClusterStorageSpacesDirect 를 설정 -CollectPerformanceHistory 하여 성능 기록이 시작되지 않도록 할 $False수 있습니다.

문제 해결

cmdlet이 작동하지 않음

"'Get-ClusterPerf'라는 용어가 cmdlet의 이름으로 인식되지 않습니다"와 같은 오류 메시지는 기능을 사용할 수 없거나 설치되지 않음을 의미합니다. Windows Server Insider Preview 빌드 17692 이상이 있고 장애 조치(failover) 클러스터링을 설치했으며 저장소 공간 Direct를 실행하고 있는지 확인합니다.

참고 항목

이 기능은 Windows Server 2016 또는 이전 버전에서는 사용할 수 없습니다.

데이터를 사용할 수 없음

차트에 그림과 같이 "사용 가능한 데이터 없음"이 표시되면 문제를 해결하는 방법은 다음과 같습니다.

No data available

  1. 개체를 새로 추가하거나 만든 경우 개체가 검색될 때까지 기다립니다(최대 15분).

  2. 페이지를 새로 고치거나 다음 백그라운드 새로 고침(최대 30초)을 기다립니다.

  3. 특정 특수 개체는 성능 기록(예: 클러스터되지 않은 가상 머신 및 CSV(클러스터 공유 볼륨) 파일 시스템을 사용하지 않는 볼륨에서 제외됩니다. 볼륨의 성능 기록과 같은 개체 형식에 대한 하위 항목을 확인하여 세밀한 인쇄를 확인합니다.

  4. 문제가 지속되면 powerShell을 관리istrator로 열고 cmdlet을 Get-ClusterPerf 실행합니다. cmdlet에는 ClusterPerformanceHistory 볼륨이 누락된 경우와 같은 일반적인 문제를 식별하는 문제 해결 논리가 포함되어 있으며 수정 지침을 제공합니다.

  5. 이전 단계의 명령이 아무 것도 반환하지 않으면 PowerShell에서 실행 Stop-ClusterResource Health ; Start-ClusterResource Health 하여 상태 관리 서비스 다시 시작할 수 있습니다(성능 기록을 수집).

추가 참조