Как включить аварийные дампы Windows с помощью шаблона Azure ARM
2 ответа
Да, вы можете добавить информацию в свой шаблон ARM, используя DSC или CSE, но ksy - это то, что в сценарии. Ниже приведен пример информации, которая должна быть в сценарии, enableDump.ps1
# Setup the Guest OS to collect a kernel dump on an OS crash event
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\CrashControl' -name CrashDumpEnabled -Type DWord -force -Value 2
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\CrashControl' -name DumpFile -Type ExpandString -force -Value "%SystemRoot%\MEMORY.DMP"
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\CrashControl' -name NMICrashDump -Type DWord -force -Value 1
Ссылка на значения в скрипте; https://support.microsoft.com/en-us/help/254649/overview-of-memory-dump-file-options-for-windows
Настройка CustomScript в шаблоне Arm может быть такой простой, как;
{
"type": "extensions",
"name": "CustomScriptExtension",
"apiVersion": "2017-03-30",
"location": "[parameters('location')]",
"dependsOn": [
"[variables('vmName')]"
],
"properties": {
"publisher": "Microsoft.Compute",
"type": "CustomScriptExtension",
"typeHandlerVersion": "1.8",
"autoUpgradeMinorVersion": true,
"settings": {
"fileUris": [
"https://xxxxxxx.blob.core.windows.net/buildServer1/enableDump.ps1"
],
"commandToExecute": "powershell -ExecutionPolicy Unrestricted -File ./EnableCrashDump.ps1"
}
}
}
Надеюсь это поможет.
Вы не можете сделать это с ARM Template, однако вы можете использовать скрипт или расширение dsc powershell (как часть шаблона arm) для его настройки. примеры этих расширений:
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "[concat(variables('vmName'),'/installcustomscript')]",
"apiVersion": "2015-05-01-preview",
"location": "[parameters('location')]",
"properties": {
"publisher": "Microsoft.Azure.Extensions",
"type": "CustomScript",
"typeHandlerVersion": "2.0",
"autoUpgradeMinorVersion": true,
"settings": {
"fileUris": [
"[concat(parameters('_artifactsLocation'), '/scripts/hello.sh')]"
],
"commandToExecute": "[parameters('commandToExecute')]"
}
}
},
{
"apiVersion": "2015-05-01-preview",
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "[concat(parameters('vmName'),'/enabledsc')]",
"location": "[parameters('location')]",
"properties": {
"publisher": "Microsoft.Powershell",
"type": "DSC",
"typeHandlerVersion": "2.0",
"settings": {
"Mode": "[parameters('mode')]",
"FileUri": "[parameters('fileUri')]"
},
"protectedSettings": {
"StorageAccountName": "[parameters('storageAccountName')]",
"StorageAccountKey": "[parameters('storageAccountKey')]",
"RegistrationUrl": "[parameters('registrationUrl')]",
"RegistrationKey": "[parameters('registrationKey')]"
}
}
}
Чтение:
https://docs.microsoft.com/en-us/azure/virtual-machines/extensions/custom-script-windows
https://docs.microsoft.com/en-us/azure/virtual-machines/extensions/dsc-overview