จะเกิดอะไรขึ้นกับเด็ก ๆ เมื่อทำการลบ snapshot ใน vmware?


13

ฉันใหม่กับการจำลองเสมือนและต้องการให้แน่ใจว่าฉันเข้าใจว่าจะเกิดอะไรขึ้นเมื่อฉันลบสแนปชอต

สมมติว่าฉันมีต้นไม้แบบนี้

  • ฐาน
    • SnapshotA
      • SnapshotB
        • SnapshotC

สองคำถาม:

  1. ถ้าฉันลบ SnapShotB จะเกิดอะไรขึ้นกับ SnapShotC?

  2. จากความช่วยเหลือของ vmware " หมายเหตุ: การคลิกลบจะส่งข้อมูลสแน็ปช็อตไปยังพาเรนต์และลบสแน็ปช็อตที่เลือก " ดังนั้นหากฉันติดตั้งซอฟต์แวร์หรือเพิ่มไฟล์ลงใน SnapShotB และฉันก็ลบออกนั่นหมายความว่า SnapShotA?


แต่ดูเหมือนว่ามันจะเป็นเรื่องง่ายที่จะพอเพียงการทดสอบด้วยตัวคุณเอง :)
สเวน

คำตอบ:


14

คุณต้องเขียนแผนผังสแน็ปช็อตนั้นใหม่ ต้นไม้จริงมีลักษณะดังนี้:

  • SnapshotA
    • SnapshotB
      • SnapshotC
        • ปัจจุบัน

เมื่อคุณใช้ SnapshotA ไฟล์ vmdk หลักจะถูกตรึงและไฟล์ delta ใหม่ถูกสร้างขึ้น การเปลี่ยนแปลงทั้งหมดถูกเขียนไปยังไฟล์ delta จากจุดนั้นเป็นต้นไป

เมื่อคุณใช้ SnapshotB ไฟล์เดลต้าแรกถูกตรึงและไฟล์เดลต้าอื่นถูกสร้างขึ้น การเปลี่ยนแปลงทั้งหมดถูกเขียนไปยังไฟล์เดลต้าใหม่นี้จากจุดนั้นเป็นต้นไป

และเมื่อคุณใช้ SnapshotC ไฟล์เดลต้าที่สองถูกหยุดการทำงานและยังมีการสร้างไฟล์เดลต้าอีกอันซึ่งแสดงสถานะ "ปัจจุบัน" การเปลี่ยนแปลงทั้งหมดจะถูกเขียนลงไฟล์นี้

  1. หากคุณลบ SnapshotB ไฟล์เดลต้าแรกจะถูกรวมเข้ากับไฟล์เดลตาที่สองซึ่งแสดงถึง SnapshotC ดังนั้นไฟล์สำรอง SnapshotC จะเปลี่ยน แต่สถานะที่แท้จริงของ SnapshotC จะไม่เปลี่ยนแปลง

  2. ไม่สแนปชอตไม่มีการแก้ไขด้วยวิธีดังกล่าว การลบ SnapshotB จะผลักดันการเปลี่ยนแปลงเหล่านั้นไปยังไฟล์ถัดไปในแผนผังซึ่งขึ้นอยู่กับการเปลี่ยนแปลงเหล่านั้น การนำไปใช้กับ SnapshotA (ฐาน vmdk) จะเปลี่ยน SnapshotA เป็น SnapshotB ซึ่งจะทำให้ snapshot ไม่สามารถใช้งานได้ :)


4

ภาพรวมการทำงานแตกต่างกันใน vSphere vs Workstation ในบางกรณี

สำหรับคำถามที่คุณถามลักษณะการทำงานจะเหมือนกันถ้าคุณใช้ VMware Workstation หรือ VMware vSphere Client พฤติกรรมนั้นไม่เหมือนกันหากคุณลบ SnapshotC

  • SnapshotA
    • SnapshotB
      • SnapshotC
        • คุณอยู่ที่นี่

หากคุณลบ SnapshotC ในไคลเอนต์ vSphere SnapshotB จะกลายเป็น SnapshotC แต่ยังคงชื่อไว้ โดยการลบคุณกำลังยอมรับการเปลี่ยนแปลงที่คุณทำกับ SnapshotC จนถึง SnapshotB หากคุณไม่ต้องการทำเช่นนั้นคุณต้อง 'ไปที่' SnapshotB ก่อนที่จะทำการลบแบบนี้:

  • SnapshotA
    • SnapshotB
      • คุณอยู่ที่นี่
    • SnapshotC

พฤติกรรมนี้มีรายละเอียดในโพสต์ฟอรัม VMware นี้:

http://communities.vmware.com/thread/58030

ใน VMware Workstation หากคุณลบ SnapshotC ในขณะที่อยู่ภายใต้การเปลี่ยนแปลงนั้นจะไม่เกิดขึ้น คุณจะสูญเสียการเปลี่ยนแปลงและกลับมาอยู่ภายใต้ SnapshotB

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