VMware Changed Block Tracking (CBT) là gì và nó hoạt động như thế nào?
VMware cung cấp các giao diện lập trình ứng dụng (API) nhằm đơn giản hóa việc bảo vệ dữ liệu trong các môi trường ảo doanh nghiệp, với các tính năng cho phép sao lưu không cần cài đặt phần mềm đại lý (agentless) và nâng cao hiệu quả của quá trình sao lưu tăng dần cho máy ảo (VM). Sao lưu tăng dần giúp tiết kiệm một lượng lớn dung lượng lưu trữ so với sao lưu toàn bộ
Khi nói đến các giải pháp sao lưu hiện đại Các giải pháp sao lưu của VMware, phần lớn đều dựa vào các API của VMware và sử dụng công nghệ Changed Block Tracking (CBT) để hỗ trợ và đẩy nhanh quá trình tạo bản sao lưu tăng dần cho máy ảo. Trong bài viết blog này, chúng tôi sẽ giải thích về Changed Block Tracking, bao gồm nguyên lý hoạt động và các ứng dụng thực tiễn.
Changed Block Trackinglà gì?
Changed Block Tracking (CBT) là một tính năng gốc của VMware, ghi lại các khối dữ liệu đã thay đổi vào một tệp theo dõi. CBT là một phần của khung công nghệ VMware vSphere Storage APIs – Data Protection được ra mắt lần đầu tiên trong phiên bản 4.0, cho phép các ứng dụng bảo vệ dữ liệu của bên thứ ba tận dụng CBT để thực hiện sao lưu và nhân bản hiệu quả hơn.
CBT hoạt động ở cấp độ ESXi Storage Stack và cho phép các giải pháp sao lưu của bên thứ ba chỉ sao lưu các khối dữ liệu đã thay đổi kể từ lần sao lưu gần nhất, tức là tạo các bản sao lưu gia tăng, hoặc các khối đang được sử dụng thay vì toàn bộ máy ảo (VM). Điều này giúp bạn giảm đáng kể lượng dữ liệu sao lưu, đặc biệt trong các môi trường lớn có hàng trăm máy ảo, và tăng tốc quá trình sao lưu.
VMware CBT giảm đáng kể thời gian phần mềm sao lưu cần để thực hiện sao lưu gia tăng vì nó theo dõi các thay đổi trong một tệp nhật ký đặc biệt. Các giải pháp sao lưu của bên thứ ba gây ra tải CPU cao hơn trên máy chủ ESXi nếu chúng theo dõi các thay đổi mà không sử dụng CBT bằng các phương pháp khác. Do đó, CBT cũng tối ưu hóa hiệu suất của máy chủ ESXi khi sao lưu dữ liệu.
CBT cũng được sử dụng bởi quy trình Storage vMotion của VMware, cho phép di chuyển các tệp đĩa của máy ảo từ kho dữ liệu này sang kho dữ liệu khác trong khi máy ảo đang chạy.
Cách thức hoạt động của VMware Changed Block Tracking
Tính năng CBT hoạt động bằng cách so sánh tệp nhật ký thay đổi cuối cùng và hiện tại changeset IDs và tìm các sector đĩa đã bị thay đổi giữa các tệp này changeset IDs. VMware CBT cũng xác định tất cả các khối Virtual Machine File System (VMFS) trên đĩa ảo đang được sử dụng. Việc theo dõi được thực hiện bởi chính hypervisor và diễn ra bên ngoài máy ảo.
CBT Yêu cầu
Yêu cầu cho Changed Block Tracking bao gồm:
- VMware vSphere (ESXi 4.0 trở lên)
- Phần cứng ảo phiên bản 7 trở lên
- Kho dữ liệu cục bộ {24} kho dữ liệu,
NFShoặciSCSI - Cung cấp theo dung lượng cố định hoặc linh hoạt
- Không
RAW disk mappings.Raw Device Mapping (RDM)trongPhysical Compatibility Modekhông được hỗ trợ. - Một VM không được có ảnh chụp nhanh để bắt đầu sử dụng
VMware CBT
Cách kích hoạt Changed Block Tracking
Theo mặc định, CBT bị tắt vì nó tiêu tốn một lượng nhỏ thời gian CPU của máy chủ. Tuy nhiên, đối với giải pháp sao lưu của bên thứ ba như NAKIVO Backup & Replication, CBT phải được bật để sản phẩm có thể thực hiện sao lưu gia tăng nhanh chóng và đáng tin cậy.
CBT được bật trong cài đặt cấu hình nâng cao của máy ảo:
- Mở cài đặt máy ảo. Bạn có thể thực hiện việc này trong
VMware vSphere Clientbằng cách nhấp chuột phải vào một máy ảo và chọnEdit Settings. - Trong cửa sổ
Edit settings, nhấp vào tabVM Options. - Nhấp vào danh mục tùy chọn
Advancedđể mở rộng cài đặt và nhấp vàoEdit Configurationtrong dòngConfiguration Parameters. Cửa sổConfiguration Parameterscủa máy ảo (VM) sẽ mở ra, chứa nhiều dòng, mỗi dòng bao gồm tên tham số và giá trị tương ứng. Việc kích hoạt CBTđược xác định bởi dòng sau trong cấu hình.vmx:
ctkEnabled = "TRUE"
Ngoài ra, đối với mỗi đĩa mà CBT được bật, một mục sẽ được thêm vào:
scsix:x.ctkEnabled = "TRUE"
Các tham số này phải được thiết lập để kích hoạt Changed Block Tracking.
Lưu ý : Để tắt CBT, hãy thay đổi TRUE thành FALSE trong các dòng ctkEnabled và scsi0:0.ctkEnabled (sử dụng số thứ tự phù hợp của thiết bị SCSI ).
Khi CBT được kích hoạt trên một máy ảo (VM), VMkernel sẽ tạo thêm một tệp có tên -ctk.vmdk trong thư mục của VM, dùng để lưu trữ bản đồ các khối đĩa ảo. Tệp này liên quan đến đĩavmdk tương ứng và chứa danh sách các khối đã thay đổi trên đĩa ảo này giữa thời điểm được xác định trong bản sao lưu cuối cùng changeset ID và trạng thái hiện tại. Kích thước của tệp CTK được tạo ra sẽ giữ nguyên và không tăng vượt quá kích thước ban đầu trừ khi kích thước của đĩa ảo được tăng lên. Kích thước của tệp CTK khoảng 5 MB cho mỗi 10 GB dung lượng đĩa VM.
Hầu hết các giải pháp sao lưu sẽ sử dụng phương pháp VMware SDK để kích hoạt CBT cho một VM một cách tự động và sử dụng một stun/unstun cycle, bao gồm các thao tác như bật/tắt nguồn, tạm dừng/tiếp tục, hoặc tạo/xóa bản sao lưu. Trong quá trình stun/unstun cycle, một bộ lọc theo dõi thay đổi đặc biệt được chèn vào VMware storage stack cho VM cụ thể đó, cho phép CBT khởi tạo trên VM.
Cách kiểm tra xem CBT có được bật hay không
Trong trường hợp bạn chưa bật CBT thủ công, bạn có thể kiểm tra xem phần mềm sao lưu có bật CBT để thực hiện sao lưu VM hay không. Các bước kiểm tra cài đặt CBT tương tự như các bước để bật tính năng này. Tuy nhiên, ở đây chúng ta sẽ đề cập đến một phương pháp hơi khác bằng cách sử dụng tệp cấu hình .vmx
Để kiểm tra xem CBT có được bật cho VM hay không, hãy thực hiện như sau:
- Mở
VMware vSphere Client. - Tìm VM cần thiết và đảm bảo rằng nó đã tắt nguồn.
- Truy cập thư mục máy ảo trên kho dữ liệu.
- Tìm tệp cấu hình máy ảo (.
vmx).
vmx phải chứa mục ctkEnabled . Giá trị của mục này phải là "TRUE". Nếu không, hãy thay đổi giá trị thành "TRUE" để kích hoạt CBT cho máy ảo.Khi tính năng CBTđược kích hoạt, mỗi đĩa ảo sẽ đi kèm với tệp xxx-ctk.vmdk , trong đó "xxx" là tên đĩa ảo. Nếu bạn thấy các tệp này CTK , điều đó cho thấy tính năng CBT đang hoạt động.
Trong một số trường hợp, chẳng hạn như tắt máy chủ không đúng cách hoặc mất điện, CBT có thể mất dấu các thay đổi trong khi máy ảo đang hoạt động. Điều này có thể khiến CBT bị thiết lập lại, có nghĩa là tất cả dữ liệu CBT đã thu thập trước đó sẽ bị xóa và dữ liệu mới sẽ bắt đầu được thu thập từ thời điểm thiết lập lại. Nếu bạn chạy sao lưu máy ảo sau khi CBT được thiết lập lại, một bản sao lưu đầy đủ sẽ được tạo. Sau khi thực hiện sao lưu toàn bộ và theo dõi các thay đổi mới, bạn có thể thực hiện sao lưu gia tăng lại.
Sử dụng VMware CBT trong NAKIVO Backup & Replication
NAKIVO Backup & Replication là giải pháp bảo vệ dữ liệu toàn diện có thể sao lưu, khôi phục và nhân bản máy ảo trong VMware vSphere. Để tăng tốc sao lưu gia tăng được thực hiện với giải pháp NAKIVO, CBT được bật theo mặc định trong bất kỳ tác vụ sao lưu mới nào.
Có một số trường hợp NAKIVO Backup & Replication, giống như bất kỳ giải pháp sao lưu vSphere nào khác, không thể sử dụng VMware CBT:
VMware CBTkhông được hỗ trợ bởi máy ảo : Nguyên nhân có thể – Máy chủ ESXi có phiên bản thấp hơn v4.1, hoặcVirtual Hardwarephiên bản thấp hơn v7.
VMware CBTdữ liệu không được cung cấp : Nguyên nhân có thể – Mất điện trên máy chủ ESXi vàCBTđã mất dấu các thay đổi tăng dần của VM.
Trong phần theo dõi thay đổi bổ sung settings, bạn có thể tìm thấy các hành động mà giải pháp nên thực hiện khi gặp lỗi trong quá trình sử dụng CBT.
Hãy xem xét kỹ hơn các hành động này On error :
Switch to proprietary method: Phương pháp theo dõi thay đổi độc quyền của NAKIVO Backup & Replication sẽ được sử dụng, phương pháp này chậm hơnVMware CBTvà tiêu tốn nhiều tài nguyên của máy chủ ESXi hơn.Reset CBT:CBTsẽ được đặt lại choCBTtrong trường hợpCBTthất bại.Fail VM processing: Việc xử lý VM sẽ bị dừng lại.
Ngoài ra, bạn có thể chỉ định thời điểm áp dụng hành động đã chọn On error :
Immediately: Hành động khi gặp lỗi được áp dụng ngay lập tức (trừ hành độngReset CBT).On the next retry: Hành động khi xảy ra lỗi được áp dụng ở lần thử lại tiếp theo.On the last retry: Hành động khi xảy ra lỗi được áp dụng ở lần thử lại cuối cùng.
Bạn cũng có thể chọn hộp kiểm Double-check changed blocks provided by CBT . Trong trường hợp này, dữ liệu được cung cấp bởi VMware CBT sẽ được kiểm tra bổ sung so với hệ thống theo dõi thay đổi độc quyền của NAKIVO Backup & Replication. Cách tiếp cận này đáng tin cậy hơn, nhưng có thể chậm hơn so với VMware CBT thông thường.
Kết luận
VMware Changed Block Tracking là một tính năng mạnh mẽ giúp quá trình sao lưu diễn ra nhanh chóng và đáng tin cậy trên mọi phương diện. Công nghệ này đã được kiểm thử kỹ lưỡng và được ứng dụng rộng rãi trong các giải pháp gốc của VMware như Storage vMotion.
VMware CBT là một phần không thể thiếu của các giải pháp sao lưu hiện đại như NAKIVO Backup & Replication, giúp thực hiện sao lưu hiệu quả cho các môi trường VMware mà không gây thêm tải cho các máy chủ.



