VMware Kiến trúc vSAN OSA và ESA, trạng thái object/component, RAID-0/1/5/6

I. Mở đầu​

vSAN có hai kiến trúc khác nhau về bản chất, không chỉ là phiên bản cũ và mới của cùng một thứ. OSA (Original Storage Architecture) ra đời từ thời HDD còn phổ biến, dùng SSD làm cache và HDD/SSD làm capacity, tổ chức thành disk group. ESA (Express Storage Architecture) từ vSAN 8.0 được thiết kế lại hoàn toàn cho NVMe, bỏ disk group, gộp cache và capacity vào một tầng duy nhất.

Sự khác biệt kiến trúc này kéo theo cách vSAN xử lý redundancy, cách object được chia thành component, và cách các mức RAID được áp dụng. Phần này trình bày ba mảng: kiến trúc OSA và ESA, trạng thái object/component khi có sự cố, và các mức RAID-0/1/5/6 trong ngữ cảnh vSAN.

II. Nội dung​

1. Hai kiến trúc nền tảng: OSA và ESA​

vSAN có hai kiến trúc khác nhau về bản chất, không phải phiên bản cũ và mới của cùng một thứ. Sự khác biệt lớn nhất nằm ở số tầng lưu trữ và loại thiết bị mà chúng nhắm đến.

1.1. OSA (Original Storage Architecture) - Kiến trúc hai tầng​

OSA được thiết kế cho nhiều loại thiết bị, bao gồm cả SSD flash và HDD truyền thống . Trên mỗi host, các ổ đĩa được gom thành một hoặc nhiều disk group. Mỗi disk group gồm:
  • Một ổ cache (bắt buộc là flash)
  • Một hoặc nhiều ổ capacity (có thể là HDD hoặc SSD)
Cơ chế hoạt động: khi VM ghi dữ liệu, dữ liệu được đưa vào ổ cache trước, tín hiệu xác nhận (ack) gửi ngay về VM để giữ độ trễ thấp. Sau đó, vSAN mới từ từ đẩy dữ liệu xuống tầng capacity . Đây là lý do OSA có thể dùng HDD làm capacity với chi phí thấp mà vẫn có hiệu năng chấp nhận được.

Hệ quả quan trọng: Nếu ổ cache hỏng, toàn bộ disk group đó bị ảnh hưởng. Phạm vi tổn thất (blast zone) lớn, nghĩa là lượng dữ liệu cần phải đồng bộ lại để khôi phục mức bảo vệ cũng lớn hơn.

1.2. ESA (Express Storage Architecture) - Kiến trúc một tầng​

ESA được thiết kế riêng cho ổ NVMe hiệu năng cao và mạng tốc độ cao . Không còn disk group. Trên mỗi host chỉ có một storage pool duy nhất, và mỗi ổ NVMe vừa làm cache vừa làm capacity.

Việc bỏ disk group mang lại lợi ích trực tiếp: khi một ổ hỏng, blast zone nhỏ hơn nhiều so với OSA. Lượng dữ liệu cần resync ít hơn, thời gian khôi phục ngắn hơn.

Bảng so sánh:


Tiêu chíOSAESA
Đơn vị vật lýDisk group (cache + capacity)Storage pool (NVMe)
Số tầng2 tầng1 tầng
Blast zone khi 1 ổ hỏngToàn bộ disk groupChỉ ổ đó
Thiết bị phù hợpHDD, SSD SATA/SASNVMe TLC

2. Object và Component - Cách vSAN tổ chức dữ liệu​

Đây là phần gây rối nhất với người mới. Cần phân biệt rõ hai khái niệm: object và component.

2.1. Object là gì?​

Object là đơn vị quản lý logic trong vSAN. Mỗi thứ thuộc về máy ảo được lưu dưới dạng một hoặc nhiều object. Các loại object phổ biến gồm :
  • VM Home namespace: thư mục chứa file cấu hình VM (.vmx, log, v.v.)
  • VMDK: file đĩa ảo, chứa nội dung ổ cứng của VM
  • VM swap object: tạo khi VM được bật
  • Snapshot delta VMDK: tạo khi chụp snapshot (trong OSA; ESA không tạo object mới cho mỗi snapshot)
  • Memory object: tạo khi snapshot có lưu memory
Khi tạo một VM trên datastore vSAN, vSAN không tạo một "ổ đĩa" duy nhất. Nó tạo một tập hợp các object, mỗi object được quản lý riêng theo storage policy được gán .

2.2. Component là gì?​

Component là mảnh dữ liệu vật lý tạo nên object. vSAN chia object thành các component và phân tán chúng ra các host khác nhau để đảm bảo an toàn. Số lượng và loại component phụ thuộc vào policy (FTT, RAID method).

Điểm mấu chốt cho người mới: Bạn không quản lý component trực tiếp. Chúng chỉ hiển thị trong giao diện để bạn hiểu vì sao một VM đang "khỏe" hay "ốm". vSAN tự động quyết định đặt component ở đâu thông qua CLOM (Cluster Level Object Manager).

2.3. Sự khác biệt về component giữa OSA và ESA​

Trong OSA: Component thường là các bản sao (replica) hoặc các mảnh stripe. Khi dùng RAID-1, mỗi bản sao là một component. Có thể có thêm witness component - một component rất nhỏ chỉ chứa metadata, dùng để phân xử khi có sự cố. Witness phổ biến trong OSA khi dùng RAID-1 .

Trong ESA: Cấu trúc component phức tạp hơn nhưng vSAN tự xử lý. Một object trong ESA gồm hai loại component :

  • Performance leg components: các component nhỏ, được mirror (nhân bản) trên 2 host trở lên, tạm thời chứa dữ liệu và metadata trước khi ghi xuống capacity leg theo cách tiết kiệm không gian.
  • Capacity leg components: các component phân tán trên số host cần thiết cho kiểu RAID được chọn (ví dụ RAID-6 cần 6 mảnh).
Ví dụ: một VMDK trong ESA với policy FTT=2, RAID-6 sẽ có 3 performance leg (mirror, chịu được 2 lỗi) và 6 capacity leg (RAID-6, chịu được 2 lỗi) .

Witness component hầu như không còn trong ESA, ngoại trừ stretched cluster và cluster 2 node.

3. Trạng thái Object/Component - Đọc hiểu cảnh báo​

Khi có sự cố, vSAN gán trạng thái cho component và object để bạn biết mức độ nghiêm trọng.

3.1. Trạng thái Component​

  • Degraded (Suy giảm): vSAN biết component có vấn đề nhưng vẫn còn truy cập được theo cách nào đó. Hệ thống sẽ cố gắng rebuild để khôi phục số lượng bản sao.
  • Absent (Không tồn tại): vSAN mất liên lạc hoàn toàn với component (host chết, ổ biến mất). Component này không còn phục vụ đọc/ghi.
Trong OSA, nếu ổ cache hỏng, toàn bộ disk group bị đánh dấu degraded, vì cache chứa metadata quan trọng cho cả group.

3.2. Trạng thái Object​

vSAN dùng hai chỉ số: compliance status (có thỏa mãn storage policy không) và operational status (bình thường hay không).
  • Normal: object có đủ bản sao và hơn 50% số vote khả dụng.
  • Abnormal: object thiếu bản sao hoặc số vote khả dụng dưới 50%.
Khi object bị abnormal, VM có thể mất quyền truy cập datastore. Với VMDK, VM vẫn powered on nhưng mọi I/O ngừng thực thi. Khi sự cố được khắc phục và đủ bản sao/vote được khôi phục, VM tự động truy cập lại được - đây không phải trạng thái vĩnh viễn.

4. RAID-0/1/5/6 trong vSAN​

RAID trong vSAN là thuộc tính của storage policy, không phải cấu hình phần cứng. Bạn gán policy cho từng VM hoặc từng đĩa ảo, và vSAN tự triển khai theo policy đó.

4.1. RAID-0​

RAID-0 xuất hiện khi Number of Disk Stripes per Object lớn hơn 1 - object được stripe trên nhiều thiết bị để tăng hiệu năng. Ngoài ra, khi FTT = 0, object được triển khai như RAID-0 thuần túy: không có redundancy. Cảnh báo sẽ hiển thị nếu chọn FTT=0.

4.2. RAID-1 (Mirroring)​

RAID-1 giữ bản sao đồng bộ của dữ liệu ở nơi khác trong cluster.
Yêu cầu host: Để chịu được *n* lỗi, cần 2n + 1 host (bao gồm witness). FTT=1 cần 3 host; FTT=2 cần 5 host.
Trong OSA: RAID-1 từng là phương thức phổ biến để có resilience mà không chịu chi phí hiệu năng của RAID-5/6.

Trong ESA: RAID-1 không nên dùng cho resilience cấp host. Lý do: ESA có thể dùng RAID-5/6 mà không mất hiệu năng, nên mirroring chỉ còn hợp lý cho stretched cluster (site-level) và cluster 2 node . FTT=3 bằng mirroring tốn gấp 3 lần dung lượng, trong khi RAID-6 chỉ 1.5 lần — không thực tế .

4.3. RAID-5 và RAID-6 (Erasure Coding)​

Erasure coding cung cấp mức bảo vệ tương đương mirroring nhưng dùng ít dung lượng hơn.
Hiệu quả dung lượng:

  • RAID-5 (FTT=1): tốn 1.33 lần dung lượng đĩa ảo
  • RAID-6 (FTT=2): tốn 1.5 lần dung lượng đĩa ảo
  • So sánh: RAID-1 FTT=1 tốn 2 lần; FTT=2 tốn 3 lần
Yêu cầu host tối thiểu:
  • RAID-5: 3 host (2 data + 1 parity)
  • RAID-6: 6 host (4 data + 2 parity)
Lưu ý về ESA: Trong ESA, RAID-5/6 không có penalty hiệu năng. Đây là lý do ESA dùng erasure coding làm mặc định cho resilience thay vì mirroring . Trong OSA, RAID-5/6 chỉ chạy trên all-flash và có thể có penalty do phải tính toán parity.

Bảng so sánh:


Phương thứcFTTHost tối thiểuDung lượng tiêu tốnGhi chú
RAID-1 (Mirror)132xPhổ biến trong OSA
RAID-1 (Mirror)253xKhông khuyến khích trong ESA
RAID-5 (EC)131.33xKhông penalty trong ESA
RAID-6 (EC)261.5xMặc định cho ESA

​

III. Kết luận​

vSAN khó hiểu vì nó phân tán dữ liệu ở mức độ mà các hệ thống lưu trữ truyền thống không làm. Không có một "ổ đĩa" để chỉ vào. Thay vào đó là một tập hợp object, mỗi object gồm nhiều component nằm trên các host khác nhau, được quản lý tự động bởi vSAN.

Ba điểm cần nhớ:
Thứ nhất, OSA và ESA là hai kiến trúc khác nhau. OSA hai tầng, dùng disk group, phù hợp với hạ tầng cũ còn HDD. ESA một tầng, dùng storage pool NVMe, blast zone nhỏ hơn, và quan trọng nhất: RAID-5/6 không mất hiệu năng.
Thứ hai, object là đơn vị logic, component là mảnh vật lý. Bạn không quản lý component trực tiếp. Hiểu khái niệm này để đọc đúng cảnh báo: "degraded" nghĩa là còn truy cập được nhưng đang suy giảm; "absent" nghĩa là mất liên lạc hoàn toàn.
Thứ ba, RAID trong vSAN là policy, không phải cấu hình phần cứng. Với ESA, RAID-5/6 là lựa chọn mặc định cho hầu hết trường hợp. RAID-1 chỉ còn dùng cho stretched cluster và cluster 2 node. Chọn đúng RAID phụ thuộc vào số host hiện có và mức độ chịu lỗi mong muốn.

IV. Nguồn tham khảo​

 
Được quan tâm
Back
Top