คำแนะนำสำหรับโซลูชันสำรองข้อมูลระยะไกลนอกสถานที่ที่มีประสิทธิภาพของ vm


15

ฉันกำลังมองหาคำแนะนำสำหรับการสำรองข้อมูล 6 vm ปัจจุบันของฉัน (และในไม่ช้าจะเติบโตได้ถึง 20) ขณะนี้ฉันกำลังรันคลัสเตอร์โหนด proxmox สองโหนด (ซึ่งเป็นฐานเดเบียนโดยใช้ kvm สำหรับการจำลองเสมือนด้วยส่วนหน้าเว็บที่กำหนดเองเพื่อจัดการ) ฉันมีสองกล่องที่เกือบเหมือนกันกับ amd phenom II x4 และมาเธอร์บอร์ด asus แต่ละอันมี 4 500 GB sata2 hdd, 1 สำหรับระบบปฏิบัติการและข้อมูลอื่น ๆ สำหรับการติดตั้ง proxmox และ 3 ใช้ mdadm + drbd + lvm เพื่อแชร์พื้นที่เก็บข้อมูล 1.5 TB ระหว่างสองเครื่อง ฉันเมานต์ lvm images ไปยัง kvm สำหรับเครื่องเสมือนทั้งหมด ขณะนี้ฉันมีความสามารถในการถ่ายโอนข้อมูลสดจากเครื่องหนึ่งไปยังอีกเครื่องหนึ่งโดยทั่วไปภายในไม่กี่วินาที (ใช้เวลาประมาณ 2 นาทีสำหรับ vm ที่ใหญ่ที่สุดที่ใช้ win2008 พร้อมเซิร์ฟเวอร์ m $ sql) ฉันกำลังใช้ยูทิลิตี้ vzdump ในตัวของ proxmox เพื่อถ่ายภาพสแนปชอตของ vm ' s และเก็บไว้ในฮาร์ดไดรฟ์ภายนอกบนเครือข่าย ฉันมีบริการ jungledisk (ใช้ rackspace) เพื่อซิงค์โฟลเดอร์ vzdump สำหรับการสำรองข้อมูลระยะไกลนอกสถานที่

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

ทางออกที่ดีกว่านั้นแน่นอนว่าเป็นสิ่งที่ทำให้ฉันสามารถรับความต่างของเวลาสองจุดได้ทันที (พูดในสิ่งที่เขียนตั้งแต่ 6 โมงเช้าถึง 7 โมงเช้า) zip แล้วส่งไฟล์ที่แตกต่างไปยังเซิร์ฟเวอร์สำรองซึ่งจะโอนไปยัง ที่เก็บข้อมูลรีโมตบน rackspace ฉันดู zfs นิดหน่อยแล้วมันสามารถส่ง / รับได้ เมื่อรวมกับไพพ์ของข้อมูลใน bzip หรือบางสิ่งบางอย่างก็ดูจะสมบูรณ์แบบ อย่างไรก็ตามดูเหมือนว่าการติดตั้งเซิร์ฟเวอร์ nexenta ด้วย zfs จำเป็นต้องมีเซิร์ฟเวอร์หน่วยเก็บข้อมูลเฉพาะอย่างน้อยหนึ่งหรือสองตัวเพื่อให้บริการบล็อก iSCSI (ผ่านทาง zvol's ???) กับเซิร์ฟเวอร์ proxmox ฉันต้องการให้การตั้งค่าให้น้อยที่สุดเท่าที่จะทำได้ (เช่นไม่มีเซิร์ฟเวอร์เก็บข้อมูลแยกต่างหาก) ถ้าเป็นไปได้

ฉันได้อ่านเกี่ยวกับ zumastor ด้วย ดูเหมือนว่ามันจะสามารถทำสิ่งที่ฉันต้องการได้ แต่ดูเหมือนว่าจะหยุดการพัฒนาในปี 2551

ดังนั้น zfs, zumastor หรืออื่น ๆ ?

คำตอบ:


3

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

คุณสามารถสำรองข้อมูลไปยังที่ที่คุณเก็บสแน็ปช็อตได้ทุกวัน (หรือกำหนดเวลาที่เหมาะสม) จากนั้นขึ้นอยู่กับ VMs ของคุณและ JungleDisk สามารถสำรองข้อมูลได้ การถ่ายโอนไฟล์ที่เปลี่ยนแปลงจะมีประสิทธิภาพมากขึ้นและลดพื้นที่ที่ต้องใช้ในการสำรองข้อมูลและลดเวลาที่ต้องใช้ นอกจากนี้คุณยังสามารถเก็บสแนปชอตเพื่อเก็บไว้และทำได้บ่อยกว่านั้น (เช่นรายสัปดาห์)

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


1
ฉันได้พิจารณาบางอย่างเช่นนั้นแล้ว ปัญหาคืออย่างน้อยหนึ่ง vm หลักกำลังเรียกใช้ซอฟต์แวร์ฐานข้อมูลแบบกำหนดเองที่เหมาะกับอุตสาหกรรม HVAC และไม่มีคุณสมบัติการถ่ายโอนข้อมูลเหมือนที่คุณเห็นในฐานข้อมูล sql เรากำลังส่งออกข้อมูลบางส่วนไปยัง M $ SQL แต่ไม่มีข้อมูลทั้งหมดและเพียงวันละครั้ง น่าเสียดายที่การเป็นผู้ดูแลระบบเครือข่ายไม่อนุญาตให้ฉันทำการตัดสินใจการออกแบบในสิ่งที่กำลังทำงานอยู่ใน vm ... เฉพาะวิธีการเรียกใช้ vm และสำรองข้อมูลไว้
senorsmile

1

หากฉันทำการสำรองข้อมูลนอกสถานที่ฉันจะเลือกตัวเลือกต่อไปนี้:

(a) เชลล์สคริปต์ที่ทำสำเนา SCP ไปยังเซิร์ฟเวอร์ระยะไกลด้วยวิธีนี้คุณสามารถเพิ่มงาน cron ที่รันสคริปต์ที่สร้างข้อมูลสำรองโดยอัตโนมัติ นอกจากนี้คุณสามารถสร้างมันขึ้นมาเพื่อสร้างไฟล์เก็บถาวรชั่วคราวก่อนที่จะทำการถ่ายโอนไฟล์ซึ่งจะช่วยประหยัดแบนด์วิดท์โดยไม่ถ่ายโอนในขณะที่ทำการ gziping

หรือ

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

ลิงค์พิเศษ:

http://www.debianhelp.co.uk/backup.htm

http://ubuntuforums.org/showthread.php?t=35087

หวังว่าจะช่วย RayQuang


ขอบคุณ! ลิงก์เหล่านั้นมีข้อมูลที่ดีมากมาย สิ่งที่ฉันต้องการคือสิ่งที่สามารถทำงานบนเครื่องเสมือนที่ใช้งานจริงและไม่ต้องใช้เวลาหลายชั่วโมงในการคำนวณความแตกต่าง เครื่องเดียวที่ดีที่สุดคือการติดตั้งเน็กเซ็นที่สามารถเรียกใช้ xen, kvm (เห็นได้ชัดว่าอยู่ในเคอร์เนล linux) หรือสิ่งที่คล้ายกัน ฉันมีโซลูชัน virtualization ที่มีประสิทธิภาพสูงสำหรับ windows และ linux server ติดตั้งบนไฟล์รูปภาพหรือ lvm (หรือ zvol) และวิธีถ่ายภาพไม่ จำกัด และถ่ายโอนความแตกต่างจากการสำรองข้อมูลล่าสุดอย่างรวดเร็ว!
senorsmile

1

คุณอาจต้องการดู backuppc

backuppc สามารถทำงานบน rsync ซึ่งทำสำเนาแบบเพิ่มหน่วย

ยิ่งไปกว่านั้นคุณสามารถเขียนรายชื่อโฟลเดอร์ที่ไม่ต้องสำรองข้อมูลไว้ได้อย่างง่ายดาย ตัวอย่างเช่น: temp / / tmp .garbages / ...

http://backuppc.sourceforge.net/

backuppc มีเว็บอินเตอร์เฟสที่สะอาดช่วยให้คุณสามารถดาวน์โหลดข้อมูลสำรองบางส่วนเป็นไฟล์ zip ได้โดยตรง สามารถตรวจสอบได้โดย nagios โดยใช้ check_backuppc


ฉันคิดว่า backuppc จะสมบูรณ์แบบสำหรับโครงการที่แตกต่างอย่างสิ้นเชิง! ขอบคุณมาก. นอกจากนี้อาจเป็นการทดแทนที่ดีสำหรับการเรียกใช้การสำรองข้อมูลระยะไกลไปยังไซต์อื่นเพื่อเพิ่มหรือแทนที่ jungledisk สำหรับการสำรองข้อมูลภายนอก
senorsmile

1

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

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


น่าเสียดายที่ฉันกำลังมองหาบางอย่างที่ค่อนข้างคล้ายกับสิ่งที่ฉันกำลังวิ่งอยู่ตอนนี้ โดยเฉพาะอย่างยิ่งจะต้องเป็นโอเพนซอร์สและปรับขนาดได้ ฉันได้ตรวจสอบโซลูชั่นของ VMWare และค่าใช้จ่ายของสองคลัสเตอร์ virt node ที่มีบุคคลที่สามที่ดีใกล้กับวิธีการสำรองข้อมูล CDP นั้นมีราคาแพงมาก
senorsmile

ฉันคิดว่าคุณหมายถึง VizionCore ไม่ใช่ VzionCore
Sean Reifschneider

0

zfs ทำได้ดีมากคุณได้ทราบแล้วว่าถึงแม้ว่าและข้อเสียของการทำงานไม่ดีในระดับเซิร์ฟเวอร์ 2 เครื่อง มันจะไม่ให้ DRDB ล้มเหลวนั่นคือ Nexenta จะเป็นเพียงจุดเดียวของความล้มเหลว

คุณสามารถลองรับ VirtualBox บน OpenSolaris หรือ NexentaCore แต่ไม่ง่ายเหมือน ProxMox + DRDB เพื่อให้คุณสามารถใช้เครื่องที่มีอยู่อีกครั้งได้

ถ้าคุณวัดการเปลี่ยนแปลงของคุณและพบว่าพวกมันต่ำพอคุณสามารถลอง DRDB ด้วยมิเรอร์นอกสถานที่ที่ 3 - มันจะทำงานได้ก็ต่อเมื่อจำนวนการเขียนของ VMs ของคุณต่ำมาก

Steve Radich - ประสิทธิภาพการโฮสต์ Windows & SQL ตั้งแต่ปี 1995 - http://www.BitShop.com/Blogs.aspx


0

ฉันรันคลัสเตอร์ proxmox ขนาดใหญ่และขอแนะนำให้คุณเปลี่ยนกลยุทธ์การสำรองข้อมูลของคุณจากการสำรองข้อมูลในรูปแบบ vzdump snapshot style snapshot ซึ่งใช้เวลานานจึงเต็มขนาดใหญ่เสมอและทำการคืนค่าไฟล์แต่ละไฟล์ที่ยืดเยื้อมาก

พิจารณาโซลูชันการสำรองข้อมูลไฟล์ 'แขก' ซึ่งมีจำนวนมาก Backuppc, Urbackup, Bacula, Amanda ฯลฯ ...

มันจะเร็วขึ้นมากใช้พื้นที่น้อยกว่าและง่ายกว่ามากในการกู้คืนไฟล์ที่เฉพาะเจาะจง


0

ฉันคิดว่าฉันอาจพบคำตอบสุดท้ายสำหรับคำถามของฉัน:

BUP https://github.com/bup/bup

คุณสมบัติ:

  • มันใช้อัลกอริทึมการตรวจสอบกลิ้ง (คล้ายกับ rsync) เพื่อแยกไฟล์ขนาดใหญ่เป็นชิ้น ผลลัพธ์ที่มีประโยชน์มากที่สุดคือคุณสามารถสำรองอิมเมจดิสก์ขนาดใหญ่เครื่องเสมือน (VM) ฐานข้อมูลและไฟล์ XML แบบเพิ่มขึ้นแม้ว่าโดยทั่วไปจะอยู่ในไฟล์ขนาดใหญ่เพียงไฟล์เดียวและไม่ใช้พื้นที่ดิสก์เป็นตันสำหรับหลายรุ่น

    มันใช้รูปแบบ packfile จาก git (ระบบควบคุมเวอร์ชันโอเพ่นซอร์ส) ดังนั้นคุณสามารถเข้าถึงข้อมูลที่เก็บไว้ได้แม้ว่าคุณจะไม่ชอบส่วนต่อประสานผู้ใช้ของ bup

    ซึ่งแตกต่างจาก git มันเขียน packfiles โดยตรง (แทนที่จะแยกเก็บขยะ / ขั้นตอนการบรรจุใหม่) ดังนั้นมันจึงรวดเร็วแม้ว่าจะมีข้อมูลจำนวนมหาศาล รูปแบบดัชนีที่ได้รับการปรับปรุงของ bup ยังช่วยให้คุณสามารถติดตามชื่อไฟล์ได้มากกว่า git (ล้าน) และติดตามวัตถุอื่น ๆ อีกมากมาย (หลายร้อยหรือหลายพันกิกะไบต์)

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

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

    Bup สามารถใช้ความซ้ำซ้อน "par2" เพื่อกู้คืนข้อมูลสำรองที่เสียหายแม้ว่าดิสก์ของคุณจะตรวจพบเซกเตอร์เสีย

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

    คุณสามารถติดตั้งที่เก็บ bup ของคุณเป็นระบบไฟล์ FUSE และเข้าถึงเนื้อหาในแบบนั้นและยังสามารถส่งออกได้ทาง Samba

แก้ไข: (19 ส.ค. 2558) และยังมีทางออกที่ยอดเยี่ยมอีกวิธีหนึ่งที่ดียิ่งขึ้น: https://github.com/datto/dattobd

มันช่วยให้การถ่ายภาพสด, การให้คุณลักษณะเหมือนวัวกับระบบไฟล์เก่าทั่วไปใน Linux

แก้ไข: (15 ก.ค. 2016) และแม้แต่ทางออกที่ยอดเยี่ยมอีกอย่างที่ทำให้ bup พุ่งออกจากน้ำ: https://github.com/borgbackup/borg

โดยเฉพาะอย่างยิ่งมันดีกว่า bup ที่การตัดแต่งกิ่ง ดูเหมือนว่าจะมีการสนับสนุนที่ดีสำหรับการบีบอัดการเข้ารหัสและการขจัดข้อมูลซ้ำซ้อนที่มีประสิทธิภาพ dattobd + borg ftw !!!

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