การสำรองผู้เยี่ยมชม qcow2 kvm


13

ฉันไม่พบข้อมูลที่ดีในการสำรองข้อมูลผู้เข้าพัก qcow2 kvm ฉันไม่ได้สนใจผู้เข้าพักที่ทำงานอยู่รัฐเพียงระบบไฟล์ คำถามนี้แนะนำให้ใช้savevmแต่สร้างสแนปชอตแทน ฉันต้องการสำรองข้อมูลระบบไฟล์จากระยะไกล

มีวิธีที่ดีกว่า:

  1. ระงับ virt_machine # หยุดเครื่องเสมือน
  2. rsync --sparse /home/vm/image.qcow2 /tmp/image.dec_14_2010.qcow2 # คัดลอกรูปภาพในไดรฟ์เดียวกัน
  3. ดำเนินการต่อ virt_machine
  4. rsync --sparse /tmp/image.dec_14_2010.qcow2 ssh: // backup @ backupmachine: / vmbackups

มีข้อเสียสองสามประการเกี่ยวกับเรื่องนี้ ขั้นแรกการคัดลอกไฟล์ภาพขนาดใหญ่ใช้เวลานาน (ค่อนข้าง) ประการที่สองฉันต้องแน่ใจเสมอว่าฉันมีพื้นที่เพียงพอในการสำรองข้อมูลเครื่องของฉัน มันไม่เหมาะ มีวิธีอื่นที่ดีกว่าในการจัดการการสำรองข้อมูล KVM หรือไม่?

ขอบคุณ

คำตอบ:


7

ฉันอยากจะแนะนำคุณสมบัติสแนปชอตของ qemu-nbd:

qemu-nbd --snapshot --connect=/dev/nbd0 image.qcow2

จากนั้น mount / dev / nbd0p1 (พาร์ติชัน 1), rsync, unmount และยกเลิกการเชื่อมต่อในที่สุด:

qemu-nbd - เลิกเชื่อมต่อ / dev / nbd0


5

ภาพสกปรกด้วยสิ่งนี้ (การหยุดชั่วคราวของคุณอาจช่วยได้ แต่ก็อาจไม่สอดคล้องกันอย่างสมบูรณ์):

ทำสแน็ปช็อตบนระบบไฟล์ LVM ที่เก็บไฟล์ qcow2 sparse (อีกครั้งสมมติว่าคุณมีที่ว่างสำหรับสแน็ปช็อต LVM)

เมานต์สแน็ปช็อต LVM

เมาท์ระยะไกลโดยใช้ sshfs

คัดลอกไปยังเมานต์ sshfs โดยใช้สำเนาแบบกระจาย (cp --sparse = always src dest)

ใช้เวลาในการคัดลอกน้อยลง แต่ยังคงใช้เวลาเต็มเวลาหากภาพเต็มโดยส่วนใหญ่

การสำรองข้อมูลจากภายใน VM อาจเป็นแนวคิดที่ดีกว่า (ใช้พื้นที่น้อยกว่า / เวลา) ปฏิบัติต่อ vm แต่ละตัวในฐานะโฮสต์ปกติที่จะทำการสำรอง / กู้คืน - เพียงแค่ได้รับสิ่งที่คุณต้องการและเก็บชุด stub vm ​​ไว้โดยไม่มีข้อมูลเพื่อสำรองและทำงานได้อย่างรวดเร็ว


น่าสนใจขอบคุณ ฉันไม่มี LVM ด้านบนของระบบไฟล์ของฉันเพื่อความง่าย ฉันต้องการคัดลอกภาพทั้งหมดเพราะจะทำให้ฉันมีสถานะการเข้าแทนที่แบบสแตนด์บายพร้อมในกรณีที่เครื่องล้มเหลวในทุกจุด
EightyEight

1
ไม่มีปัญหา. LVM จะช่วยให้คุณประหยัดไม่ต้องหยุด VM ชั่วคราวและอนุญาตให้คุณสแน็ปช็อตแบบต่อเนื่องเพื่อให้ทำงานได้ต่อไป
ax25

3

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

หลังจากการทดลองเป็นจำนวนมากฉันใช้การสำรองข้อมูลรูปภาพทั้งหมดและไปกับโซลูชันการสำรองข้อมูลเครือข่ายแบบดั้งเดิมซึ่งอาจใช้กับเซิร์ฟเวอร์โลหะเปลือย ในกรณีของฉันเราไปกับ BackupPC ซึ่งเก่า แต่เชื่อถือได้สุด ๆ ในแต่ละเซิร์ฟเวอร์ฉันกำหนดค่าโซลูชันสำรองข้อมูลสำหรับแอปพลิเคชันที่ใช้งานเฉพาะ เช่น sqldump สำหรับ MySQL, ปลั๊กอินสำหรับ Joomla, ฯลฯ

มันคือ PIA แต่มันเร็วกว่าและน่าเชื่อถือมาก


ขอบคุณ @hdave ฉันรู้สึกว่าด้วยวิธีนี้ฉันสูญเสียประโยชน์หลักอย่างหนึ่งของ VMs การกักกัน ในการกู้คืนฉันต้องติดตั้งใหม่ทุกอย่างด้วยตนเองและกำหนดค่า ไม่ใช่วิธีที่ฉันต้องการ อย่างไรก็ตามขอบคุณมันเป็นเทคนิคที่ถูกต้อง
EightyEight

100% ยอมรับว่ามันเป็นความเจ็บปวดของราชวงศ์ หากคุณเคยแตกถั่วนี้ให้เราทุกคนรู้ว่าคุณทำมัน!
hdave

@EightyEight: ฉันขอแนะนำซอฟต์แวร์การจัดการการกำหนดค่าเช่น Chef หรือ Puppet มีความยืดหยุ่นมากกว่าและเจ็บปวดน้อยกว่าหากคุณต้องการตั้งค่าเซิร์ฟเวอร์ที่สองเหมือนกัน (แบบฟิสิคัลหรือแบบเสมือนไม่สำคัญ) Chef มีปลั๊กอินสำหรับไฮเปอร์ไวเซอร์เกือบทั้งหมดและสามารถช่วยคุณเตรียมและกำหนดค่าโฮสต์ วิธีนี้คุณจะได้รับประโยชน์จากการใช้พื้นที่น้อยลงสำหรับการสำรองข้อมูล (VM ทั้งหมดมีขนาดใหญ่กว่าเมื่อเทียบกับชุดข้อมูลเฉพาะ) และเวลาการปรับใช้ที่รวดเร็วขึ้นในสภาพแวดล้อมใหม่ ยิ่งไปกว่านั้น CM ก็เหมือนเอกสารโครงสร้างพื้นฐานในรหัส
Rafael Bugajewski

2

ไม่ว่าคุณจะทำสแน็ปช็อต - LVM หรือ qcow2 คุณจะต้องหยุดนิ่งก่อนที่คุณจะใช้ VM ไม่เช่นนั้นข้อมูลของคุณจะสูญหายและภาพที่เสียหาย


ไม่มากไปกว่าที่คุณจะถ้าคุณดึงสายไฟว่า?

1
ไม่มากและไม่น้อยแน่นอน :)
dyasny

กำลังคิดเกี่ยวกับสิ่งนี้อีกมากการหยุดโดเมนไม่ได้เพิ่มอะไรเลย - ไม่ว่าจะด้วยวิธีใดก็ตามสแนปช็อตคือ 'สอดคล้องกับความผิดพลาด' ไม่มากไปกว่านี้

errr กำหนด "ความผิดพลาดที่สอดคล้องกัน" guest OS อาจมีข้อมูลในเที่ยวบินบางส่วนที่กำหนดไว้สำหรับ v-disk ซึ่งจะหายไปหากคุณดึงปลั๊ก ในทางทฤษฎีข้อมูลนี้อาจถูกเขียนไปยังสแน็ปช็อตหลังจากที่มันถูกถ่ายทอดสด แต่มีเหตุผลที่ดีที่สแนปชอตสดในแพลตฟอร์มคุณธรรมทั้งหมดรวมถึง quiescing / ละลายในตัวแทนแขก ยิ่งไปกว่านั้นหากข้อมูลไม่สูญหายมันจะยังคงอยู่ในสแนปชอตแทนภาพฐานซึ่งเอาชนะจุดประสงค์ของ PIT
dyasny

"ความล้มเหลวสอดคล้อง" หมายถึง "สอดคล้องตามที่คุณคาดหวังในความผิดพลาด" iiuc - นั่นคือการพึ่งพาวารสาร ฯลฯ และยอมรับการสูญเสียข้อมูลบางส่วนเนื่องจากการขาด fsync ทันเวลา "มีเหตุผลที่ดีอยู่ในทุกแพลตฟอร์มรวมถึง quiescing / ละลายในตัวแทนแขก" ที่ฉันเข้าใจเหตุผลที่ดีเหมือนกันกับการถ่ายภาพ LVM - คุณรู้จักแตกต่างกันหรือไม่? ดูเหมือนว่า KVM จะไม่ fsync ก่อนที่จะหยุดทำงานใด ๆ ที่เกินกว่าภาพรวมของ LVM? แน่นอนถ้าคุณไม่ได้ใช้ LVM ในการถ่ายภาพสแนปช็อตคุณจะโง่ที่จะไม่นิ่งเฉย - แต่นั่นแตกต่างและไม่ใช่สิ่งที่คุณพูด
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.