A way to create live dump when CsvIoT occurs

Windows Server 2008 R2 부터 Virtual Machine의 고가용성을 보장하기 위한 방법의 일환으로 CSV(Cluster Shared Volume)가 도입되었습니다.

아마 많은 고객 분들이 CSV를 사용하면서 CSV 단절과 같은 증상들을 겪으셨을 텐데요.

만약 2012 R2에서 CSV를 사용하는 경우라면 System을 중지시키지 않고 CSV에 문제가 생겼을 때 Live Dump를 수집할 수 있는 방법이 있습니다.

단, 2012 R2에서 발생하는 CSV 문제는 CSV의 Timeout으로만 국한됩니다. 2016에서는 CSV Timeout 뿐만 아니라 다양한 형태의 문제 증상을 Live Dump 수집을 통해서 분석을 시도해 볼 수 있습니다.

2012 R2에서는 Live Dump 수집이 Default로 Enable 되어 있지 않으므로 다음 가이드를 통해서 CSV Timeout 발생 시 Live Dump가 수집되도록 할 수 있습니다.

 

1. LiveDumpEnabled 값을 1로 변경합니다.(Reboot 필요 없음)

Get-Cluster | Set-ClusterParameter -create LiveDumpEnabled -value 1
2. 덤프가 올바르게 생성될 수 있도록 WER 설정을 변경합니다.(Reboot 필요)

 

2-1. Windows Error Reporting의 Live Dump Throttling을 다음 Registry 변경을 통해서 해제할 수 있습니다.

reg add "HKLM\Software\Microsoft\Windows\Windows Error Reporting\FullLiveKernelReports" /v SystemThrottleThreshold /t REG_DWORD /d 0 /f

reg add "HKLM\Software\Microsoft\Windows\Windows Error Reporting\FullLiveKernelReports" /v ComponentThrottleThreshold /t REG_DWORD /d 0 /f
2-2. Live Dump가 생성되고 나면 Windows Error Reporting이 원본 Dump를 제거하고 Minidump만 남기지 않고 원본 Dump를 남길 수 있도록 다음 Registry 변경을 통해서 설정할 수 있습니다.

reg add "HKLM\Software\Microsoft\Windows\Windows Error Reporting\FullLiveKernelReports" /v FullLiveReportsMax /t REG_DWORD /d 10 /f

reg add "HKLM\SYSTEM\CurrentControlSet\Control\CrashControl" /v AlwaysKeepMemoryDump /t REG_DWORD /d 1 /f
[참고 자료]
Troubleshooting Hangs Using Live Dump

https://blogs.msdn.microsoft.com/clustering/2016/03/02/troubleshooting-hangs-using-live-dump/