Sao lưu khách qcow2 kvm


13

Tôi không thể tìm thấy bất kỳ thông tin tốt về sao lưu khách qcow2 kvm. Tôi không thực sự quan tâm đến trạng thái chạy của khách, chỉ có hệ thống tệp. Câu hỏi này gợi ý sử dụng savevmnhưng điều đó tạo ra một ảnh chụp nhanh tại chỗ. Tôi muốn sao lưu hệ thống tập tin từ xa.

Có cách nào tốt hơn:

  1. đình chỉ virt_machine # tạm dừng máy ảo
  2. rsync --spzzy /home/vm/image.qcow2 /tmp/image.dec_14_2010.qcow2 # sao chép hình ảnh trên cùng một ổ đĩa
  3. tiếp tục virt_machine
  4. rsync - thưa thớt /tmp/image.dec_14_2010.qcow2 ssh: // backup @ backupmachine: / vmbackups

Có một vài nhược điểm của việc này. Đầu tiên, sao chép một tệp hình ảnh khổng lồ mất một thời gian (tương đối). Thứ hai, tôi phải luôn đảm bảo rằng tôi có đủ dung lượng để sao lưu máy. Điều này không lý tưởng. Có cách nào khác tốt hơn để quản lý sao lưu KVM không?

Cảm ơn.

Câu trả lời:


7

Tôi muốn đề xuất tính năng chụp nhanh của qemu-nbd:

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

sau đó mount / dev / nbd0p1 (phân vùng 1), rsync, ngắt kết nối và cuối cùng ngắt kết nối:

qemu-nbd - kết nối / dev / nbd0


5

Hình ảnh bẩn với điều này (tạm dừng của bạn có thể có thể giúp đỡ, nhưng vẫn có thể không hoàn toàn nhất quán):

Thực hiện một ảnh chụp nhanh trên hệ thống tệp LVM giữ tệp thưa thớt qcow2 (một lần nữa giả sử bạn có chỗ cho ảnh chụp nhanh LVM)

Gắn ảnh chụp nhanh LVM.

Gắn điều khiển từ xa bằng sshfs.

Sao chép vào điểm gắn kết sshfs bằng cách sử dụng bản sao thưa thớt (cp --spzzy = always src Dest)

Ít thời gian hơn để sao chép, nhưng vẫn sẽ mất đến toàn thời gian nếu hình ảnh hầu hết là đầy đủ.

Sao lưu dữ liệu từ bên trong VM có lẽ là một ý tưởng tốt hơn (ít không gian / thời gian hơn). Hãy coi các vm riêng lẻ như các máy chủ thông thường được sao lưu / khôi phục - tức là chỉ cần lấy những gì bạn cần và giữ một bộ sơ khai của vm mà không có dữ liệu để sao lưu và chạy nhanh.


Thú vị, cảm ơn. Tôi không có LVM trên đầu hệ thống tập tin của tôi, vì đơn giản. Tôi muốn sao chép toàn bộ hình ảnh vì điều đó sẽ cho phép tôi có một chuyển đổi dự phòng sẵn sàng hoạt động trong trường hợp máy bị hỏng bất cứ lúc nào.
EightyEight

1
Không vấn đề gì. LVM sẽ giúp bạn không phải tạm dừng VM và cho phép bạn chụp nhanh khi nó tiếp tục chạy.
ax25

3

Cá nhân, tôi đã có một thời gian RẤT khó khăn với vấn đề này và đã phát hiện ra rằng, ngay cả khi bị tắt, các bản sao lưu của khách thường không ổn định. Hãy nhớ rằng - nếu bạn không thường xuyên cố gắng khôi phục các bản sao lưu này, bạn thực sự không biết chúng có hoạt động không.

Sau rất nhiều thử nghiệm, tôi đã hoàn toàn sao lưu dự phòng hình ảnh và đi với một giải pháp sao lưu mạng truyền thống mà người ta có thể sử dụng cho các máy chủ kim loại trần. Trong trường hợp của tôi, chúng tôi đã sử dụng BackupPC, nó đã cũ, nhưng siêu đáng tin cậy. Trên mỗi máy chủ, tôi định cấu hình giải pháp sao lưu cho (các) ứng dụng cụ thể đang sử dụng. Ví dụ: sqldump cho MySQL, plugin cho Joomla, v.v.

Đó là một PIA, nhưng nó nhanh hơn nhiều và rất đáng tin cậy.


Cảm ơn @hdave. Tôi cảm thấy như với cách tiếp cận này, tôi đang mất đi một trong những lợi ích chính của máy ảo, ngăn chặn. Để khôi phục, tôi phải cài đặt lại mọi thứ theo cách thủ công và định cấu hình. Không thực sự là cách tiếp cận tôi muốn thực hiện. Tuy nhiên, dù sao cũng cảm ơn, đó là một kỹ thuật hợp lệ.
EightyEight

100% đồng ý rằng đó là một nỗi đau của hoàng gia. Nếu bạn từng bẻ khóa hạt này, hãy cho chúng tôi biết bạn đã làm thế nào!
hdave

@EightyEight: Tôi rất khuyến khích một phần mềm quản lý cấu hình như Chef hoặc Puppet. Nó linh hoạt hơn nhiều và cũng ít đau đớn hơn nếu bạn muốn thiết lập một máy chủ thứ hai giống hệt nhau (vật lý hoặc ảo, không thành vấn đề). Đầu bếp có các plugin cho hầu hết tất cả các trình ảo hóa và có thể giúp bạn cung cấp và định cấu hình máy chủ. Bằng cách này, bạn có lợi ích là sử dụng ít không gian hơn để sao lưu (toàn bộ VM lớn hơn so với các tập dữ liệu cụ thể) và thời gian triển khai nhanh hơn trong môi trường mới. Hơn nữa CM giống như tài liệu cơ sở hạ tầng trong mã.
Rafael Bugajewski

2

Bất kể bạn thực hiện ảnh chụp nhanh ở đâu - LVM hoặc qcow2, VM vẫn cần được kiểm tra trước khi bạn thực hiện. Nếu không, bạn nhận được dữ liệu bị mất và hình ảnh bị hỏng.


không nhiều hơn bạn sẽ làm nếu bạn kéo dây nguồn?

1
không hơn, và tất nhiên không kém :)
dyasny

suy nghĩ thêm về điều này, việc dập tắt tên miền không thêm bất cứ điều gì - dù cách chụp nhanh là 'phù hợp với sự cố', không hơn, không kém, phải không?

errr, định nghĩa "sự cố phù hợp". Hệ điều hành khách có thể có một số dữ liệu trên chuyến bay dành cho đĩa v, sẽ bị mất nếu bạn rút phích cắm. Về mặt lý thuyết, dữ liệu này có thể được ghi vào ảnh chụp nhanh sau khi được chụp trực tiếp, nhưng có một lý do chính đáng để chụp nhanh trực tiếp trong tất cả các nền tảng bao gồm kiểm tra / làm tan băng trong các tác nhân khách. Moreove, nếu dữ liệu không bị mất, nó vẫn sẽ kết thúc trong ảnh chụp nhanh thay vì hình ảnh cơ sở, đánh bại mục đích của PIT
dyasny

"phù hợp với sự cố" chỉ có nghĩa là "nhất quán như bạn mong đợi trong một vụ tai nạn" iiuc - tức là dựa vào các tạp chí, v.v. và chấp nhận mất một số dữ liệu do thiếu fsync kịp thời. "Có một lý do chính đáng để chụp nhanh trực tiếp trong tất cả các nền tảng đạo đức bao gồm quiescing / tan băng trong các đại lý khách" như tôi hiểu, lý do chính xác giống hệt như chụp ảnh nhanh LVM - bạn có biết khác không? KVM dường như không fsync trước khi bỏ qua nhiều hơn một ảnh chụp nhanh LVM? Tất nhiên, nếu bạn không sử dụng LVM để chụp nhanh, bạn sẽ thật ngốc khi không bỏ cuộc - nhưng điều đó khác và không phải là điều bạn đang nói.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.