KVM สามารถระงับหรือปิดแขกโดยอัตโนมัติเมื่อโฮสต์ถูกปิดหรือไม่?


16

เรามีโฮสต์ CentOS 5.5 KVM ซึ่งให้บริการแขกด้วย CentOS รุ่นต่างๆและอาจเป็น OS อื่น ๆ ในภายหลัง

เราต้องการที่จะสามารถ (a) ส่งการปิด ACPI โดยอัตโนมัติไปยังแขกทุกคนหรือ (b) ระงับแขกทั้งหมดลงในดิสก์ในการปิดโฮสต์

มีวิธีมาตรฐานที่จะทำให้สำเร็จอย่างใดอย่างหนึ่งหรือเป็นสถานการณ์ของคุณเอง? ขอบคุณ!

คำตอบ:


5

ใช่.

virsh shutdownคำสั่ง (หรือใช้งานอื่น ๆ ของ "ปิด" ใช้ libvirt เช่นเดียวกับในvirt-manager) สั่งให้บุคคล OS จะปิดตัวลงอย่างหมดจด จากหน้าคน:

   shutdown domain-id

   Gracefully shuts down a domain.  This coordinates with the domain
   OS to perform graceful shutdown, so there is no guarantee that it
   will succeed, and may take a variable length of time depending on
   what services must be shutdown in the domain.

   The exact behavior of a domain when it shuts down is set by the
   on_shutdown parameter in the domain’s XML definition.

ด้วย KVM สิ่งนี้ควรส่งเหตุการณ์ ACPI system_powerdown

ใน Fedora และ RHEL 6 libvirt-guestsสคริปต์เริ่มต้นจะออกมาจากกล่องที่กำหนดค่าเพื่อระงับแขกทั้งหมดเมื่อปิดระบบ มันไม่ได้เป็นเวทมนตร์โดยเฉพาะ แต่อย่างใดอย่างหนึ่งสามารถคัดลอกนี้ไปยัง CentOS 5 ด้วยการปรับเปลี่ยนเล็กน้อย


นั่นเป็นความคิดที่ดีฉันมีเครื่อง Fedora ฉันจะไป backporting กับ CentOS5 ขอบคุณ
Andrew Clegg

ฉันไม่เห็น on_shutdown ใน doco: libvirt.org/formatdomain.html#elementsLifecycle
Thiago Figueiro

hmmmm ใช่มันยังมีพิรุธที่ขาดหายไปในรหัส อะไรlibvirt-guestsสคริปต์จริงvirsh managedsaveจะเป็นระยะ (ดูเหมือนว่าอาจเป็นเพียงไดรเวอร์ UML ที่รองรับ system_powerdown) ขอบคุณสำหรับการจับ! ฉันจะอัปเดตคำตอบของฉันและยื่นข้อผิดพลาดกับเอกสาร
mattdm

4

ตอนนี้เป็นคุณลักษณะมาตรฐานใน Fedora และ RHEL 6 ล่าสุด


ฉันคิดว่ามันได้รับการแก้ไขใน Ubuntu เช่นกัน: bugs.launchpad.net/ubuntu/+source/libvirt/+bug/350936
hdave

0

เท่าที่ฉันรู้ว่าไม่มีสคริปต์มาตรฐานสำหรับ CentOS เป็นไปได้ที่จะเขียนโค้ดขึ้นมา แต่มีอันตรายเล็กน้อยเนื่องจากคุณต้องจัดการกับแขกที่ต้องใช้เวลานานในการปิดตัวลง เพียงฆ่าพวกเขาหลังจากหมดเวลาสามารถทำลายข้อมูลในขณะที่รอพวกเขาสามารถออกจากการปิดเครื่องของคุณแขวน

แทนที่จะเป็นการดีกว่าที่จะปิดแขกด้วยมือก่อนที่จะรีบูต ในขณะที่ฉันมีสคริปต์ที่แทนที่ปิดและรีบูต สคริปต์นั้นเตือนฉันว่ามีแขกที่กำลังทำงานอยู่ (รายการ lc ธรรมดาในรายการของเครื่องเสมือน) และบล็อกคำสั่งหากมีแขกที่เข้าพักอยู่


-2

ผู้เข้าร่วม KVM เป็นเพียงกระบวนการของผู้ใช้ คุณควรมีกระบวนการตรวจสอบในสถานที่ ดูเหมือนจะเป็น libvirt ที่พบมากที่สุด (พัฒนาโดย RedHat ดังนั้นฉันคิดว่ามันควรจะมีใน CentOS)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.