Saya mengalami VM Windows10 di OpenStack yang secara otomatis memulai ulang pada autologon yang berhasil. Berjuang dengan ini untuk sementara waktu dan berjam-jam dihabiskan untuk mencari topik ini di google menjadi sia-sia. Ikuti prosedur langkah demi langkah di bawah ini untuk menemukan penyebab utama dan menghentikan VM Windows10 di OpenStack agar tidak memulai ulang secara otomatis!
Bertanya-tanya mengapa Windows restart secara otomatis? Untungnya, Windows melacak peristiwa dan catatan di log sistem. Dengan Windows Event Viewer bawaan, Anda dapat memantau aktivitas yang terjadi di komputer Anda sebelum, selama, dan setelah komputer dimatikan atau dimulai ulang. Artikel ini membantu saya melihat log sistem di Windows10 yang memicu restart otomatis.
Melihat log Shutdown dan Restart dari Peraga Peristiwa
Buka aplikasi Peraga Peristiwa
Arahkan ke Windows Logs -> System
di panel kiri. Tunggu sampai semua log dimuat. Klik Filter Current Log
di panel kanan. Ketik 41, 1074, 6006, 6008 ke dalam kotak teks di bawah sertakan/Kecualikan ID Peristiwa, lalu klik OK untuk memfilter log peristiwa.
Dari log yang difilter, ditemukan log mencurigakan yang menyatakan bahwa Cloudbase-Init telah memulai restart komputer seperti di bawah ini:
Ini memberikan petunjuk untuk meneliti lebih lanjut dan menemukan bug yang dilaporkan di launchpad terkait dengan cloudbase-init. Di bawah ini adalah pemahaman saya tentang mengapa restart otomatis terjadi:
Dari unattend.xml
cloudbase-init kami file (C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\unattend.xml
) Anda dapat melihat bahwa cloudbase-init mencoba mengatur nama host di pengaturan khusus. Ini menyebabkan fungsi SetComputerName berjalan selama langkah spesialisasi, yang mengubah nama komputer menjadi DESKTOP-<random string>
. Masalah umum di Windows10 adalah bahwa perubahan nama komputer memerlukan restart.
Cara menghentikan VM Windows10 di OpenStack agar tidak memulai ulang secara otomatis!
Terima kasih kepada Curt Moore atas solusi cepatnya. Hal yang sama telah saya coba jelaskan secara rinci di bawah ini:
Langkah 1: Instal Cloudbase-init menggunakan MSI seperti biasa, kecuali JANGAN membuatnya melakukan sysprep otomatis selama penginstalan otomatis.
Langkah 2: Setelah instalasi Cloudbse-init selesai, jalankan perintah berikut dari command prompt (Run as administrator) untuk menonaktifkan startup otomatis cloudbase-init versi layanan Windows.
sc config cloudbase-init start= disabled
Langkah 3: Edit file unattend.xml dan tambahkan RunSynchronousC
yang lain node untuk mengaktifkan kembali mulai otomatis layanan Windows cloudbase-init. Perintah ini _harus_ disetel sebagai <Order>1</Order>
dan node cloudbase-init tanpa pengawasan yang ada disetel ke <Order>2</Order>
sehingga perintah re-enable berjalan sebelum instance cloudbase-init tanpa pengawasan, yang memerlukan reboot. Idenya adalah jika kita mengaktifkan kembali layanan cloudbase-init (tetapi tidak memulai ulang saat ini) setelah reboot yang diperlukan oleh cloudbase-init tanpa pengawasan, instance layanan Windows akan mulai sesuai keinginan dan tidak akan bertentangan dengan instance tanpa pengawasan karena sudah dieksekusi. Di bawah ini adalah unattend.xml
yang dimodifikasi berkas:
Langkah 4: Setelah mengedit unattend.xml
file, jalankan perintah sysprep secara manual dari command prompt (Jalankan sebagai administrator) dan rujuk XML yang dimodifikasi.
C:\Windows\system32>"%SYSTEMROOT%\system32\ sysprep\ sysprep. exe" /generalize /oobe /quit /unattend:C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\unattend.xml
Lihat unattend.xml
Rujuk jalur file unattend.xml dengan benar sehubungan dengan penginstalan Anda.
Langkah 5: Lepaskan konfigurasi IP Windows setelah sysprep dan kemudian segera matikan VM.
Mengapa melepaskan IPIni akan menghindari untuk MENEMUKAN kembali alamat IP yang sama dengan yang dimiliki VM sebelum sysprepped. Ini merepotkan saat mem-boot VM di OpenStack karena segmen jaringannya sangat berbeda dan Windows membutuhkan waktu ~10-20 detik untuk berhenti mencoba TEMUKAN kembali alamat lama dan hanya mengeluarkan PERMINTAAN DHCP baru.
ipconfig /release shutdown /s /f /t 1
Sekarang unggah VM Windows ke OpenStack dan boot sebuah instance. Voila! VM Windows10 masuk secara otomatis dan tidak memulai ulang!