檢查 VM 角色是否有布建錯誤 [SPFSDK][VMROLE]
適用于:Windows Azure Pack
每當在 VM 角色上執行作業時,VM 角色 ProvisioningState 屬性會根據作業的結果設定為 Provisioned、 Provisioning或 Failed 。 某些會影響 ProvisioningState 屬性的作業類型包括建立 VM 角色、從不同的資源庫專案版本更新 VM 角色,以及調整/修復 VM 角色。
如何偵測錯誤
如果先前的作業導致ProvisioningState屬性的Provisioned或Provisioning值,則不需要執行任何動作。 不過,如果作業的結果導致 失敗,您必須進一步調查以判斷問題的原因。 Substate屬性也存在於 VM 角色實例上。 此屬性描述使用 VM 角色時可能發生的錯誤。 此屬性具有名為 VMRoleMessages 的 子屬性,這是描述錯誤的訊息陣列。
以下範例顯示包含單一 VM 角色實例的 HTTP 回應主體。 此實例在布建 VM 角色期間發生三個問題。 請注意 ,ProvisioningState 屬性設定為 Failed , 而 Substate 屬性包含 VMRoleMessages 屬性,這是錯誤詳細資料陣列。
{
"InstanceView": {
"InstanceCount": "1",
"ResolvedResourceDefinition": { "... removed for brevity ... ": "" },
"VIPs": []
},
"Label": "testquickvm",
"Name": "testquickvm",
"ProvisioningState": "Failed",
"ResourceConfiguration": { "... removed for brevity ... ": "" },
"ResourceDefinition": { "... removed for brevity ... ": "" },
"Substate": {
"VMRoleMessages": [{
"Message": "Virtual Machine Manager cannot detect a heartbeat from the specified virtual machine. Either the virtual machine is not running or Virtual Machine Additions is not installed.",
"MessageQualifier": "Error",
"VMId": null
},
{
"Message": "One or more virtual machines have failed during customization during the deployment of the service.",
"MessageQualifier": "Warning",
"VMId": null
},
{
"Message": "Virtual Machine Manager cannot detect a heartbeat from the specified virtual machine. Either the virtual machine is not running or Virtual Machine Additions is not installed.",
"MessageQualifier": "Error",
"VMId": "9f7ac179-68f2-4703-9d58-d64b45fadc92"
}]
},
"odata.metadata": "https://spf-server:8090/SC2012R2/VMM/Microsoft.Management.Odata.svc/$metadata#VMRole/@Element"
}
關於錯誤的動作
如果在布建 VM 角色時發生錯誤,則可能與其設定有關。 如果為 true,請更新 ResourceConfiguration 屬性並起始 修復 作業。 如果錯誤與部署相關, (尋找資源來放置虛擬機器或類似此) 您可能也會嘗試起始 修復 作業來強制重新部署。 否則,Virtual Machine Manager可能會發生問題,系統管理員必須進一步調查。 如需修復作業的詳細資訊,請參閱修復 VM 角色 [SPFSDK][VMROLE]。
另請參閱
建立雲端服務以裝載 VM 角色 [SPFSDK][VMROLE]
從資源庫 [SPFSDK][VMROLE] 建立新的 VM 角色實例