Pemecahan masalah hibernasi pada VM Windows

Penting

Azure Virtual Machines - Hibernasi saat ini dalam PRATINJAU. Lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure untuk persyaratan hukum yang berlaku pada fitur Azure dalam versi beta, pratinjau, atau belum dirilis secara umum.

Hibernasi komputer virtual memungkinkan Anda mempertahankan status VM ke disk OS. Artikel ini menjelaskan cara memecahkan masalah dengan fitur hibernasi di Windows, masalah saat membuat VM Windows yang diaktifkan hibernasi, dan masalah terkait hibernasi VM Windows.

Untuk melihat panduan pemecahan masalah umum untuk hibernasi, lihat Memecahkan masalah hibernasi di Azure.

Tidak dapat menghibernasi VM Windows

Jika Anda tidak dapat menghibernasi VM, pertama-tama periksa apakah hibernasi diaktifkan pada VM.

Jika hibernasi diaktifkan pada VM, periksa apakah hibernasi berhasil diaktifkan di OS tamu. Anda dapat memeriksa status ekstensi Hibernasi untuk melihat apakah ekstensi berhasil mengonfigurasi OS tamu untuk hibernasi.

Cuplikan layar status dan pelaporan pesan status bahwa provisi berhasil untuk VM Windows.

Tampilan instans VM akan memiliki output akhir ekstensi:

"extensions": [
    {
      "name": "AzureHibernateExtension",
      "type": "Microsoft.CPlat.Core.WindowsHibernateExtension",
      "typeHandlerVersion": "1.0.2",
      "statuses": [
        {
          "code": "ProvisioningState/succeeded",
          "level": "Info",
          "displayStatus": "Provisioning succeeded",
          "message": "Enabling hibernate succeeded. Response from the powercfg command: \tThe hiberfile size has been set to: 17178693632 bytes.\r\n"
        }
      ]
    },

Selain itu, konfirmasikan bahwa hibernasi diaktifkan sebagai status tidur di dalam tamu. Output yang diharapkan untuk tamu akan terlihat seperti ini.

C:\Users\vmadmin>powercfg /a
    The following sleep states are available on this system:
        Hibernate
        Fast Startup

    The following sleep states are not available on this system:
        Standby (S1)
            The system firmware does not support this standby state.

        Standby (S2)
            The system firmware does not support this standby state.

        Standby (S3)
            The system firmware does not support this standby state.

        Standby (S0 Low Power Idle)
            The system firmware does not support this standby state.

        Hybrid Sleep
            Standby (S3) isn't available.


Jika Hibernate tidak terdaftar sebagai status tidur yang didukung, seharusnya ada alasan yang terkait dengannya, yang akan membantu menentukan mengapa hibernasi tidak didukung. Ini terjadi jika hibernasi tamu tidak dikonfigurasi untuk VM.

C:\Users\vmadmin>powercfg /a
    The following sleep states are not available on this system:
        Standby (S1)
            The system firmware does not support this standby state.

        Standby (S2)
            The system firmware does not support this standby state.

        Standby (S3)
            The system firmware does not support this standby state.

        Hibernate
            Hibernation hasn't been enabled.

        Standby (S0 Low Power Idle)
            The system firmware does not support this standby state.

        Hybrid Sleep
        Standby (S3) is not available.
            Hibernation is not available.

        Fast Startup
            Hibernation is not available.

Jika ekstensi atau status tidur tamu melaporkan kesalahan, Anda harus memperbarui konfigurasi tamu sesuai deskripsi kesalahan untuk mengatasi masalah tersebut. Setelah memperbaiki semua masalah, Anda dapat memvalidasi bahwa hibernasi telah berhasil diaktifkan di dalam tamu dengan menjalankan perintah 'powercfg /a' - yang harus mengembalikan Hibernate sebagai salah satu status tidur. Validasi juga bahwa AzureHibernateExtension kembali ke status Berhasil. Jika ekstensi masih dalam status gagal, perbarui status ekstensi dengan memicu terapkan ulang API VM

Catatan

Jika ekstensi tetap dalam status gagal, Anda tidak dapat menghibernasi VM.

Masalah yang umum terlihat di mana ekstensi gagal.

Masalah Perbuatan
File halaman berada dalam disk sementara. Pindahkan ke disk OS untuk mengaktifkan hibernasi. Pindahkan file halaman ke drive C: dan picu terapkan kembali pada VM untuk menjalankan ulang ekstensi
Windows gagal mengonfigurasi hibernasi karena ruang yang tidak memadai untuk hiberfile Pastikan drive C: memiliki ruang yang cukup. Anda dapat mencoba memperluas disk OS, ukuran partisi C: Anda untuk mengatasi masalah ini. Setelah Anda memiliki ruang yang cukup, picu operasi Terapkan kembali sehingga ekstensi dapat mencoba lagi mengaktifkan hibernasi di tamu dan berhasil.
Pesan kesalahan ekstensi: "Perangkat yang dilampirkan ke sistem tidak berfungsi" Pastikan drive C: memiliki ruang yang cukup. Anda dapat mencoba memperluas disk OS, ukuran partisi C: Anda untuk mengatasi masalah ini. Setelah Anda memiliki ruang yang cukup, picu operasi Terapkan kembali sehingga ekstensi dapat mencoba lagi mengaktifkan hibernasi di tamu dan berhasil.
Hibernasi tidak lagi didukung setelah Keamanan Berbasis Virtualisasi (VBS) diaktifkan di dalam tamu Aktifkan Virtualisasi di tamu untuk mendapatkan kemampuan VBS bersama dengan kemampuan untuk menghibernasi tamu. Aktifkan virtualisasi di OS tamu.
Gagal mengaktifkan hibernasi. Respons dari perintah powercfg. Kode Keluar: 1. Pesan kesalahan: Hibernasi gagal dengan kesalahan berikut: Permintaan tidak didukung. Item berikut mencegah hibernasi pada sistem ini. Konfigurasi Device Guard saat ini menonaktifkan hibernasi. Hibernasi yang dinonaktifkan komponen sistem internal. Hypervisor Aktifkan Virtualisasi di tamu untuk mendapatkan kemampuan VBS bersama dengan kemampuan untuk menghibernasi tamu. Untuk mengaktifkan virtualisasi di tamu, lihat dokumen ini

VM Windows Tamu tidak dapat berhibernasi

Jika operasi hibernasi berhasil, peristiwa berikut terlihat di tamu:

Guest responds to the hibernate operation (note that the following event is logged on the guest on resume)

    Log Name:      System
    Source:        Kernel-Power
    Event ID:      42
    Level:         Information
    Description:
    The system is entering sleep

Jika tamu gagal berhibernasi, maka semua atau beberapa peristiwa ini hilang. Masalah yang umum dilihat:

Masalah Perbuatan
Tamu gagal berhibernasi karena Layanan Matikan Tamu Hyper-V dinonaktifkan. Pastikan bahwa Layanan Matikan Tamu Hyper-V tidak dinonaktifkan. Mengaktifkan layanan ini harus menyelesaikan masalah.
Tamu gagal berhibernasi karena HVCI (Integritas memori) diaktifkan. Jika Integritas Memori diaktifkan di tamu dan Anda mencoba hibernasi VM, pastikan tamu Anda menjalankan build OS minimum yang diperlukan untuk mendukung hibernasi dengan Integritas Memori.

Win 11 22H2 – Build OS Minimum - 22621.2134
Win 11 21H1 - Build OS Minimum - 22000.2295
Win 10 22H2 - Build OS Minimum - 19045.3324

Log yang diperlukan untuk pemecahan masalah:

Jika Anda mengalami masalah di luar skenario yang diketahui ini, log berikut dapat membantu Azure memecahkan masalah:

  • Log peristiwa yang relevan pada tamu: Microsoft-Windows-Kernel-Power, Microsoft-Windows-Kernel-General, Microsoft-Windows-Kernel-Boot.
  • Selama pemeriksaan bug, crash dump tamu sangat membantu.

Tidak dapat melanjutkan VM Windows

Saat Anda memulai VM dari status hibernasi, Anda dapat menggunakan tampilan instans VM untuk mendapatkan detail selengkapnya tentang apakah tamu berhasil dilanjutkan dari status hibernasi sebelumnya atau jika gagal dilanjutkan dan sebaliknya melakukan cold boot.

Output tampilan instans VM saat tamu berhasil melanjutkan:

{
  "computerName": "myVM",
  "osName": "Windows 11 Enterprise",
  "osVersion": "10.0.22000.1817",
  "vmAgent": {
    "vmAgentVersion": "2.7.41491.1083",
    "statuses": [
      {
        "code": "ProvisioningState/succeeded",
        "level": "Info",
        "displayStatus": "Ready",
        "message": "GuestAgent is running and processing the extensions.",
        "time": "2023-04-25T04:41:17.296+00:00"
      }
    ],
    "extensionHandlers": [
      {
        "type": "Microsoft.CPlat.Core.RunCommandWindows",
        "typeHandlerVersion": "1.1.15",
        "status": {
          "code": "ProvisioningState/succeeded",
          "level": "Info",
          "displayStatus": "Ready"
        }
      },
      {
        "type": "Microsoft.CPlat.Core.WindowsHibernateExtension",
        "typeHandlerVersion": "1.0.3",
        "status": {
          "code": "ProvisioningState/succeeded",
          "level": "Info",
          "displayStatus": "Ready"
        }
      }
    ]
  },  
  "extensions": [
    {
      "name": "AzureHibernateExtension",
      "type": "Microsoft.CPlat.Core.WindowsHibernateExtension",
      "typeHandlerVersion": "1.0.3",
      "substatuses": [
        {
          "code": "ComponentStatus/VMBootState/Resume/succeeded",
          "level": "Info",
          "displayStatus": "Provisioning succeeded",
          "message": "Last guest resume was successful."
        }
      ],
      "statuses": [
        {
          "code": "ProvisioningState/succeeded",
          "level": "Info",
          "displayStatus": "Provisioning succeeded",
          "message": "Enabling hibernate succeeded. Response from the powercfg command: \tThe hiberfile size has been set to: XX bytes.\r\n"
        }
      ]
    }
  ],
  "statuses": [
    {
      "code": "ProvisioningState/succeeded",
      "level": "Info",
      "displayStatus": "Provisioning succeeded",
      "time": "2023-04-25T04:41:17.8996086+00:00"
    },
    {
      "code": "PowerState/running",
      "level": "Info",
      "displayStatus": "VM running"
    }
  ]
}


Jika tamu Windows gagal melanjutkan dari status sebelumnya dan boot dingin, maka respons tampilan instans VM adalah:

  "extensions": [
    {
      "name": "AzureHibernateExtension",
      "type": "Microsoft.CPlat.Core.WindowsHibernateExtension",
      "typeHandlerVersion": "1.0.3",
      "substatuses": [
        {
          "code": "ComponentStatus/VMBootState/Start/succeeded",
          "level": "Info",
          "displayStatus": "Provisioning succeeded",
          "message": "VM booted."
        }
      ],
      "statuses": [
        {
          "code": "ProvisioningState/succeeded",
          "level": "Info",
          "displayStatus": "Provisioning succeeded",
          "message": "Enabling hibernate succeeded. Response from the powercfg command: \tThe hiberfile size has been set to: XX bytes.\r\n"
        }
      ]
    }
  ],
  "statuses": [
    {
      "code": "ProvisioningState/succeeded",
      "level": "Info",
      "displayStatus": "Provisioning succeeded",
      "time": "2023-04-19T17:18:18.7774088+00:00"
    },
    {
      "code": "PowerState/running",
      "level": "Info",
      "displayStatus": "VM running"
    }
  ]
}

Peristiwa tamu Windows saat diumumkan kembali

Jika tamu berhasil dilanjutkan, acara tamu berikut tersedia:

Log Name:      System
    Source:        Kernel-Power
    Event ID:      107
    Level:         Information
    Description:
    The system has resumed from sleep. 

Jika tamu gagal dilanjutkan, semua atau beberapa peristiwa ini hilang. Untuk memecahkan masalah mengapa tamu gagal dilanjutkan, log berikut diperlukan:

  • Log peristiwa pada tamu: Microsoft-Windows-Kernel-Power, Microsoft-Windows-Kernel-General, Microsoft-Windows-Kernel-Boot.
  • Pada pemeriksaan bug, diperlukan crash dump tamu.