Khi nói đến khôi phục nhanh, Snapshot trên máy ảo là một cách nhanh chóng và hiệu quả để quay trở lại một thời điểm. Đặc biệt khi nói đến môi trường phát triển, Snapshot VM là một cách tuyệt vời để quay trở lại thời điểm đã biết.Tuy nhiên, nhiều người nhầm tưởng Snapshot là một loại “sao lưu” vì nó cho phép quay trở lại điểm đã biết trong thời gian.
Sẽ rất nguy hiểm nếu coi Snapshot máy ảo là một kiểu BACKUP. Để giải thích tại sao lại như vậy, chúng ta sẽ xem xét các khía cạnh kỹ thuật của một Snapshot.
- Snapshot VM là gì và khi nào chúng ta sử dụng nó?
- Snapshot được tạo trong VMware và Hyper-V như thế nào?
- Sự khác biệt giữa Snapshot và Backup là gì?
Mặc dù sử dụng Snapshot trong một số trường hợp nhất định, tại sao chúng ta vẫn cần quan tâm đúng mức đến việc Backup?
Snapshot là gì và khi nào chúng ta sử dụng chúng?
Snapshot VM lưu giữ trạng thái và dữ liệu của máy ảo tại một thời điểm cụ thể.
Trạng thái bao gồm trạng thái nguồn của máy ảo (ví dụ: bật nguồn, tắt nguồn, tạm ngừng). Dữ liệu bao gồm tất cả các tệp tạo nên máy ảo. Điều này bao gồm disks, memory, và các thiết bị khác, chẳng hạn như thẻ giao diện mạng ảo.
Nhiều người có thể sử dụng Snapshot VM trong môi trường ảo như một điểm khôi phục dự phòng nhanh chóng trước khi thực hiện nâng cấp, thay đổi phần mềm đã cài đặt, gỡ cài đặt các thành phần, v.v.
Snapshot cũng rất hữu ích cho mục đích phát triển. Một máy ảo hoặc một bộ máy ảo có thể có các ảnh chụp nhanh được tạo để kiểm tra kiểu “rinse and repeat” để phát triển và xác thực các thay đổi mã.
Khi thực hiện Snapshot VM, có những gì được tạo ra?
Trong VMware tạo ra các tệp sau:
- .Vmdk– Tệp flat.vmdk chứa dữ liệu thô trong đĩa cơ sở.
- -delta.vmdk– Đĩa delta được biểu diễn ở định dạng .00000x.vmdk. Nó chứa sự khác biệt giữa trạng thái hiện tại của đĩa ảo và trạng thái tồn tại tại thời điểm mà ảnh chụp nhanh trước đó được thực hiện.
- .vmsd– Tệp này là tệp cơ sở dữ liệu cho chính ảnh chụp nhanh chứa thông tin ảnh chụp nhanh và là nguồn thông tin chính cho trình quản lý ảnh chụp nhanh. Các mục nhập có trong tệp này là ảnh chụp nhanh và mối quan hệ giữa ảnh chụp nhanh và đĩa con cho mỗi ảnh chụp nhanh.
- .vmsn– Tệp .vmsn bao gồm trạng thái hoạt động của máy ảo ghi lại trạng thái bộ nhớ tại điểm của ảnh chụp nhanh. Điều này cho phép bạn phục hồi về trạng thái đang chạy của máy ảo khi hoàn nguyên. Nếu bạn tạo một ảnh chụp nhanh mà không bao gồm bộ nhớ, việc đảo ngược ảnh chụp nhanh sẽ là một máy ảo đã tắt
Trong Hyper-V tạo ra các tệp sau:
Lưu ý: với Hyper-V, Snapshot gọi là Checkpoit
Một thư mục được tạo ra có chứa các tập tin định dạng nhị phân gồm
- VMCX – Tệp này là tệp cấu hình nhị phân thay thế tệp XML trong Windows Server 2012 R2 trở về trước.
- VMRS – Tệp này chứa nhiều thông tin khác nhau về trạng thái của máy ảo đang chạy.
Ngoài ra, một đĩa phân biệt được tạo với định dạng .avhdx
Sự khác biệt giữa Snapshot và sao lưu là gì
Khi so sánh và đối chiếu sự khác biệt giữa Snapshot MV và Backup VM, chúng ta ghi nhận rằng
Snapshot, như phân tích ở trên, nó là một cơ chế để ghi lại các thay đổi của delta từ một thời điểm nhất định. Các tệp được tạo ra đặt tại chỗ cùng một cơ sở hạ tầng lưu trữ như các đĩa của VM. Điều này khác với cơ chế backup – được lưu trữ ở một nơi khác.
Snapshot không thể phục hổi máy ảo nếu các ổ đĩa của vm bị hỏng, bạn không thể phục hồi VM qua một host khác,…
Với VMware hoặc Hyper-V, Snapshot không có nghĩa là tồn tại mãi mãi trong một môi trường và việc lưu giữ quá nhiều có thể dẫn đến các vấn đề về hiệu suất của hệ thống
Cần phải lưu ý rằng cả VMware và Hyper-V đều không hỗ trợ ý tưởng Snapshot là bản sao lưu.
Lưu ý khi sử dụng Snaphost VM
Không sử dụng Snapshot như backup
VMware khuyến nghị chỉ có tối đa 32 snapshot, tuy nhiên các bạn chỉ nên để tối đa khoảng 2 đến 3 snapshot
Không sử dụng một ảnh chụp nhanh trong hơn 72 giờ. Tệp snapshot sẽ làm tăng kích thước khi nó được lưu giữ trong thời gian dài hơn. Điều này có thể khiến vị trí lưu trữ ảnh chụp nhanh hết dung lượng và ảnh hưởng đến hiệu suất hệ thống
Khi sử dụng phần mềm sao lưu của bên thứ ba, hãy đảm bảo rằng ảnh chụp nhanh sẽ bị xóa sau khi sao lưu thành công.
Xem thêm khuyến nghị từ vmware Best practices for using VMware snapshots
Lưu ý quan trọng
Không sử dụng Snapshot / Checkpoint với Domain controller
Việc sử dụng có thể gây ra những điều rất xấu trong môi trường Domain, Tốt nhất là không bao giờ sử dụng Snapshot / Checkpoint trên Domain controller. Việc quay trở lại một thời điểm trong môi trường domain controller có thể dẫn đến tình huống được gọi là “USN Rollback” kết quả là Active Directory bị hỏng.
Các ứng dụng nhiều tần – Multi-tiered applications
Một số ứng dụng có nhiều tầng sẽ rất khó, nếu không muốn nói là không thể đặt đúng một Snapshot / Checkpoint do cách máy chủ web / ứng dụng được kết nối với máy chủ cơ sở dữ liệu phụ trợ. Việc sử dụng các Snapshot / Checkpoint trong kiến trúc thiết kế này có thể dẫn đến mất mát dữ liệu.