|
||||||||
|
||||||||
|
|
Công Cụ | Xếp Bài |
05-08-2013, 03:40 PM | #1 |
Guest
Trả Lời: n/a
|
tìm hiểu cách thức hoạt động và sử dụng tính năng Snapshot trên VMware ESXi
tìm hiểu cách thức hoạt động và sử dụng tính năng Snapshot trên VMware ESXi
Tiếp theo loat bài VMware vSphere 4 tôi sẽ trình bày cho các bạn về tính năng snapshot. Và một điều tôi chắc chắn hiện h hầu hết dân ITPro đều sẽ khong quá xa lạ gì với tính năng này nó được áp dụng khá nhiều trong môi trường học tập, Lab khi làm việc với VMware Workstation và hiển nhiên đa phần trong chúng ta sẽ đánh giá rằng tính năng hữu dụng này cực kỳ đơn giản chẳng gì phải chú ý ngay cả trước khi có cơ hội present tính năng này tôi củng đã mắc phải. Trên thực tế không phải đơn giản mà là cực kỳ phức tạp bạn phải hiểu rõ data ghi ra sao cái gì được tao ra hay cái gì thay đổi, mất đi khi chúng ta thêm, xóa, revert snapshot… Và các bạn tự hỏi tại sao cần phải quan tâm nhiều chi tiết như vậy? Vì trên thực tế hiểu rõ như vậy chúng ta mởi kiểm soát được dữ liệu, hiệu suất máy ảo… vi dụ điển hình như một máy ảo đang chứa database của cty bạn đã thực hiện snapshot nhiều lần và trong cả một thời gian dài hoạt động h đây bạn muốn delete snapshot liệu bạn đã chắc rằng hành động của mình có đảm bảo toàn vẹn dữ liệu hay không hay mất gì mà không hay biết. Trong bài viết này tôi sẽ cố gắng trình bày những thông tin mà bản thân thu thập được về snapshot cũng như những kinh nghiệm thu được cho các biệt. Để bắt đầu chúng ta sẽ sơ lược về khái niệm snapshot một tý Nói đơn giản thì hành động snapshot của chúng ta chính là thực hiện hành vi lưu lại lượng Ram đang hoạt động, thông tin máy ảo và đồng thời đó là “đóng băng” các ổ Disk (.vmdk). Những hành động trên sẽ “tạo” thêm các tập tin mới trong cùng thư mục với máy ảo (default). Vậy thì có tất cả bao nhiêu tập tin được tạo ra chình xác thì có 2 tập tin tạo mới (ứng với máy 1 Disk ảo sẽ giải thích sau) và 1 tập tin có sẵn trong thư mục máy ảo dóng vai trò databse của tập hợp các snapshot máy ảo. Những file này có chi tiết như sau: <vm>-<number>.vmdk: đầu tiên là file vmdk có format như định dạng tôi vừa đưa ra. File này thường có thuật ngữ là Child Disk. Nó sẽ tương ứng tạo ra dựa trên từng ổ đĩa ảo có trên máy ảo khi thực hiện snapshot nghĩa là với mỗi disk khi thực hiện snapshot sẽ tạo ra thêm một disk con. Disk con này sẽ lưu trữ các thông tin thay đổi về sau để đảm bảo rằng ổ Disk cha (Parent Disk) luôn toàn vẹn hay cũng có thể gọi là đóng băng. Tới điểm này thì đa số sẽ thắc mắc lưu thay đổi lưu thêm vậy cuối cùng disk này có tối đa dung lượng là bao nhiêu? Trả lời luôn là nó sẽ có khả năng tăng dung lượng lớn bằng dung lượng mà chúng ta tạo ra ổ Disk vì có khả năng xảy ra là lượng data thay đổi là toàn bộ block dữ liệu của Disk mà chúng ta cấp phát sẽ ghi lên Child Disk.
Sau đó thực hiện snapshot lần đầu tiên cho máy ảo VM 2 file tạo ra sẽ có màu da cam Và cứ thế các snapshot tạo ra sau sẽ tuần tự tao ra file vmdk và vmsn tương ứng Một ví dụ thực tế và đừng quan tâm quá tại sao snapshot6 mà lại có 000001.vmdk là dó trước đó tôi tạo ra nhiều snapshot rồi xóa di phần number snapshot không tự reset nên sau đó tạo mới snapshot sẽ ra tình trạng này. Bây giờ chúng ta đã hiểu snapshot căn bản sẽ thao tác gì với các thành phần dữ liệu bên dưới kế tiếp cần thông đó là workflow của các request snapshot: Cách thực hiện yêu cầu snapshot thì khá đơn giản chỉ cần chuột phải máy ảo và chọn snapshot. Ở đây chúng ra sẽ quan tâm các tùy chọn của nó hơn: Như các bạn thấy là nó có 2 tùy chọn chính là
Với model này các bạn sẽ đi từng bước từ dưới lên với ổ disk đầu tiên dong vai trò parent cũng chính là ổ gốc của chúng ta trước khi thực hiện snapshot đầu tiên. Khi snapshot lần 1 xảy ra child1 sẽ sinh ra đóng vai trò là disk chính cho hoạt động của máy ảo hiện tại tuy nhiên có thể nói dung lượng của nó hiện tại là bằng 0 ( trên thực tế là vai chục MB vì dung lượng đó sẽ lưu thông tin liên kết) vì vai trò của nó là lưu các thay đổi về block dữ liệu trong quá trình hoạt động của máy ảo sau snapshot. Như khối block den (4 cái đầu tiên) trên parent là những block có thay đổi sau quảng thời gian dai thực hiện snapshot1 thì những data thay đổi sẽ nằm trên Child1 và sẽ có thông tin liên kết giữa block mới và block cũ nằm trên parent. Còn với Child2 khi tạo ra sẽ sẽ xem trực tiếp child1 là parent bất kỳ thay đổi nào trên Child1 sẽ lưu trên Child2 và thông tin liên kết sẽ được tạo ra tuy nhiên sẽ có trường hợp là block thay đổi không nằm trên parent trực tiếp như trường hợp của Child3 trong hình nó có cha trực tiếp là Child2 các thông tin thay đổi trên Child2 sẽ ghi lên Child3 nhưng nếu thông tin bị thay đổi không nằm trên Child2 mà nằm trên Child cao hơn hoặc giả parent gốc thì data mới vẫn để trên Child3 nhưng liên kết lúc này sẽ trỏ trực tiếp về child hay parent đang có data mới gần nhất với nó. Revert Snapshot Hành động này trả lại trạng thái của máy ảo tại thời điểm snapshot các thực hoạt động của nó như sau (dựa theo hình trên) hiệ tại điểm hoạt động của chúng ta là điểm Child3 data mới ghi trên đó và một ngày đẹp trời chúng ta muốn quay lại trạng thái cũ là snapshot1 cũng chính là bản gốc để hoạt động thì chúng ta sẽ dùng tính năng là revert snapshot. Bước đầu lượng data trên Child3 sẽ bị xóa nếu chúng ta ko snapshot trước khi revert (mất hoàn toàn dù revert lại snapshot3 vì trên logic tại thời điểm snapshot3 không có lượng data thay đổi trong khoang thoi gian su dụng) và nó sẽ tạo ra một Child4 nằm cùng cấp với Child1 xem ổ gốc như parent trực tiếp. Vấn đề này các bạn có thể thự trực tiếp trên hệ thống của mình để rút ra kq còn cái này mình rút sẵn thôi. Delete snapshot Mình cũng dựa trên mô hình trên thực hiện các snapshot và sau đó delete tuần từ các vị trí khác nhau và rút ra kết luận là khi delete snapshot lượng data của ổ trên và dưới snapshot sẽ merge lại với nhau chứ không phải delete snapshot là delete luôn cả Child Disk vì trên về logic data là phải toàn vẹn nếu delete cả child disk thì đồng nghĩa các liên kết như mình đề cập là gãy gánh tất cả disk sẽ mất đi tính toàn vẹn dữ liệu và faild vì lý do đó chúng sẽ merge lại với nhau mình có chụp hình lai lab ghi nhận thay đổi dữ liệu để làm mẫu cho các bạn thấy rõ Kết luận: Thuận lợi:
Tác giả: Lê Tôn Phát |
|
|