VMware [Lý thuyết]: HA/DRS nâng cao – failure types, admission control, isolation response, DRS rule, EVC

CHUYÊN ĐỀ: VSPHERE HA & DRS NÂNG CAO​
PHẦN 1. KIẾN TRÚC VÀ CƠ CHẾ CỦA VSPHERE HA (FAULT DOMAIN MANAGER - FDM)
vSphere High Availability (HA) cung cấp tính sẵn sàng cao ở cấp độ hạ tầng cho máy ảo (VM) mà không đòi hỏi phần mềm chạy bên trong OS phải hỗ trợ clustering chuyên biệt. HA hoạt động dựa trên tác nhân FDM (Fault Domain Manager) được cài đặt trên từng host ESXi trong cluster.
1.1. Cấu trúc Master / Slave trong FDM Engine
- Master Host: Được bầu chọn tự động (host sở hữu số lượng datastore kết nối được nhiều nhất, hoặc theo Lexical Host ID). Nhiệm vụ: Giám sát trạng thái bảo vệ của VM, danh sách slave, điều phối restart VM khi slave gặp sự cố, giao tiếp với vCenter Server và báo cáo trạng thái runtime.
- Slave Host: Các host ESXi còn lại trong cluster. Chạy máy ảo cục bộ, giám sát trạng thái VM runtime nội bộ, gửi heartbeat lên Master định kỳ và tham gia bầu Master mới khi Master hiện tại ngừng hoạt động.
1.2. Phân loại Failure Types (Các Dạng Lỗi Của Host)
FDM phân loại chính xác tình trạng lỗi của host thông qua cơ chế kiểm tra chéo 2 kênh: Network Heartbeat (qua mạng Management) và Datastore Heartbeat (qua Storage dùng chung).
- Host Failure (Chết cứng): Host mất hoàn toàn Network Heartbeat trong 14 giây (timeout) và đồng thời không ghi được Datastore Heartbeat. Master xác nhận host đã chết và tiến hành restart toàn bộ VM của host chết lên các host lành lặn khác.
- Host Isolation (Bị cô lập mạng): Host mất kết nối tới tất cả default gateway / isolation addresses, nhưng kernel ESXi và máy ảo vẫn đang chạy, đồng thời host vẫn ghi heartbeat thành công vào Datastore Heartbeat file. Host tự kích hoạt chính sách Isolation Response.
- Host Partition (Phân mảnh mạng): Một nhóm host bị đứt kết nối mạng nội bộ với Master, chia cluster thành 2 hay nhiều phân vùng. Cả 2 nhóm host vẫn ghi Datastore Heartbeat bình thường. Nhóm bị tách sẽ bầu chọn 1 Master phụ (Sub-Master) để tự quản lý VM của mình, tránh xung đột split-brain.
- Vai trò của Datastore Heartbeat: Dùng để phân biệt chính xác giữa Host Failure (chết hoàn toàn) và Host Network Partition/Isolation. Khi mất Network Heartbeat, nếu Datastore Heartbeat vẫn còn thì host không bị chết mà chỉ đang gặp sự cố mạng.

PHẦN 2. CƠ CHẾ HOST ISOLATION RESPONSE NÂNG CAO
Host Isolation xảy ra khi host ESXi không nhận được heartbeat từ Master qua mạng quản lý, đồng thời ping đến Isolation Address (mặc định là default gateway của Management Network) đều thất bại.
2.1. Các Tùy Chọn Host Isolation Response
- Leave Powered On (Mặc định): Host giữ nguyên trạng thái máy ảo đang chạy. Phù hợp khi đường mạng VM tách biệt hoàn toàn với mạng Management. Tuy nhiên, nếu VM chết sau đó, HA không thể tự can thiệp vì file lock (.vmdk lock) vẫn do host bị cô lập nắm giữ.
- Power Off and Restart VMs: Host rút điện đột ngột (hard power-off) tất cả VM trên nó. File lock được nhả ra lập tức, Master HA có thể restart VM trên host khác ngay. Nhược điểm: Nguy cơ mất tính toàn vẹn dữ liệu (crash-consistent).
- Shut Down and Restart VMs (Khuyên dùng): Host gửi tín hiệu tắt mềm (Graceful Shutdown) thông qua VMware Tools cài trong OS của VM (chờ tối đa theo cấu hình das.isolationshutdowntimeout, mặc định 300 giây). Nếu quá thời gian VM không chịu tắt mềm, host mới thực hiện hard power-off. Đảm bảo an toàn cơ sở dữ liệu và dữ liệu ứng dụng.
2.2. VM Component Protection (VMCP) & Lỗi Datastore
Xử lý sự cố đứt kết nối lưu trữ giữa Host và Datastore (Storage Failures):
- Permanent Device Loss (PDL): Lưu trữ thông báo mã SCSI sense code báo thiết bị vĩnh viễn không còn tồn tại (LUN bị unmap, xóa cấu hình SAN). HA lập tức ngắt VM trên host lỗi và restart trên host có đường truyền bình thường.
- All Paths Down (APD): Host mất toàn bộ đường kết nối I/O tới LUN nhưng không nhận được mã kết thúc rõ ràng (đứt cáp, switch lỗi). HA kích hoạt bộ đếm APD Timeout (mặc định 140 giây), sau khi hết thời gian chờ mới can thiệp restart VM.

PHẦN 3. VSPHERE HA ADMISSION CONTROL NÂNG CAO
Admission Control là chính sách bảo hộ tài nguyên bắt buộc của vSphere HA, ngăn chặn việc cấp phát quá mức tài nguyên (overcommit) dẫn đến việc cluster không còn đủ CPU/RAM dự phòng để restart máy ảo khi có host gặp sự cố.
3.1. So Sánh 3 Thuật Toán Admission Control
- Cluster Resource Percentage (Phần trăm dự phòng - Khuyên dùng): Cluster dự trữ một tỷ lệ % nhất định tổng CPU và Memory (ví dụ 25% trong cluster 4 node tương đương N+1). Tỷ lệ này có thể cấu hình cố định hoặc tự động tính theo số host failover (Host Failures Cluster Tolerates). Ưu điểm: Tính toán linh hoạt, tận dụng tối đa tài nguyên, không bị ảnh hưởng bởi các VM có kích thước ngoại lệ (outlier VMs).
- Slot Policy (Chính sách khe cố định): Một Slot được định nghĩa là một cặp {CPU Slot Size, Memory Slot Size} dựa trên giá trị Reservation lớn nhất của VM trong cluster. Nhược điểm: Rất lãng phí tài nguyên nếu trong cluster xuất hiện một vài VM cấu hình Reservation bộ nhớ quá lớn, khiến kích thước slot bị đội lên cao và làm sụt giảm số slot khả dụng.
- Dedicated Failover Hosts (Chỉ định host dự phòng): Chỉ định cụ thể 1 hoặc nhiều host ESXi chỉ đứng chờ (idle/standby), không chạy máy ảo nào trong điều kiện bình thường. Ưu điểm là đơn giản, nhưng gây lãng phí tài nguyên và chi phí đầu tư phần cứng.

PHẦN 4. VSPHERE DRS NÂNG CAO VÀ QUY TẮC PHÂN BỔ (DRS RULES)
Distributed Resource Scheduler (DRS) chịu trách nhiệm tự động cân bằng tải tính toán (CPU & RAM) giữa các ESXi host trong cluster thông qua công nghệ vMotion.
4.1. Kiến Trúc DRS Thế Hệ Mới (vSphere 7.0+ VM DRS Score)
- VM DRS Score: Đo lường mức độ hiệu quả thực thi của từng máy ảo (VM Execution Efficiency / VM Happiness) theo thang điểm từ 0% đến 100%, dựa trên các chỉ số: CPU Ready Time, Memory Swap, Memory Ballooning, IOPS latency và Cache readiness.
- Chu kỳ đánh giá: Đánh giá vi mô mỗi 1 phút một lần (thay vì 5 phút như trước đây) để phát hiện và xử lý nghẽn hiệu năng kịp thời.
4.2. Phân Biệt Các Loại DRS Rules
- VM-VM Anti-Affinity Rule (Phân tách VM): Bắt buộc các VM được chỉ định không được chạy chung trên cùng một ESXi host. Ứng dụng: Cặp Active-Passive Firewall, Active Directory Domain Controllers song hành, Database Clustered Nodes (SQL AlwaysOn, Oracle RAC). Khi 1 host vật lý chết, chỉ 1 node bị ảnh hưởng.
- VM-VM Affinity Rule (Gắn kết VM): Yêu cầu các VM được chỉ định phải chạy chung trên cùng một ESXi host. Ứng dụng: Cặp VM có lưu lượng mạng giao tiếp cực lớn nội bộ (như Web Server và Cache Server) nhằm tối ưu băng thông qua vSwitch ảo trên RAM.
- VM-Host Affinity / Anti-Affinity Rule (Quy tắc VM với nhóm Host): Quy định một nhóm VM phải chạy hoặc không được chạy trên một nhóm Host. Chia làm 2 mức độ:
- Hard Rule (Must run on hosts in group): Bắt buộc tuyệt đối. Nếu không còn host nào trong nhóm khả dụng, VM sẽ không được khởi động lại (kể cả HA). Thường dùng cho ràng buộc bản quyền phần mềm theo số core CPU vật lý (Oracle, MS SQL).
- Soft Rule (Should run on hosts in group): Ưu tiên tuân thủ nhưng có thể tạm thời vi phạm nếu cluster cạn kiệt tài nguyên hoặc khi xảy ra failover HA, đảm bảo VM được cứu sống trước.
4.3. Predictive DRS (P-DRS)
Kết hợp giữa vSphere DRS và vRealize Operations (vROps / Aria Operations). vROps phân tích mô hình hành vi lịch sử để dự báo trước nhu cầu tài nguyên, gửi lệnh cho DRS di tản VM trước khi hiện tượng nghẽn cổ chai diễn ra.

PHẦN 5. ENHANCED VMOTION COMPATIBILITY (EVC)
EVC giải quyết vấn đề không đồng nhất tập lệnh vi xử lý (CPU Instruction Sets) giữa các thế hệ CPU khác nhau trong cùng một cụm máy chủ, cho phép vMotion diễn ra liền mạch mà không gây sập hệ điều hành khách.
5.1. Bản Chất Kỹ Thuật Của EVC
- CPU Instruction Masking: EVC ẩn đi các tập lệnh CPU mở rộng mới hơn (như AVX-512, AMX...) và chỉ trình diện cho hệ điều hành khách một tập hợp lệnh chung (Baseline) tương thích với thế hệ CPU thấp nhất được chọn.
- Quy tắc Vendor: EVC chỉ hoạt động nội bộ giữa các đời chip cùng hãng (Intel với Intel, hoặc AMD với AMD). Không hỗ trợ vMotion giữa Intel và AMD.
5.2. So Sánh Cluster-Level EVC và Per-VM EVC
- Cluster-Level EVC: Áp dụng cho toàn bộ cluster. Khi chuyển VM sang cluster khác hoặc sang hạ tầng Cloud, nếu khác EVC baseline thì bắt buộc phải tắt máy ảo (cold migrate) để áp dụng cấu hình mới.
- Per-VM EVC (vSphere 6.7+): Gắn trực tiếp thuộc tính EVC baseline vào cấu hình .vmx của từng VM riêng biệt. VM giữ nguyên thuộc tính này khi di chuyển xuyên suốt giữa các Cluster, vCenter hoặc Hybrid Cloud mà không cần reboot.

PHẦN 6. MA TRẬN TƯƠNG TÁC GIỮA HA VÀ DRS & KHUYẾN NGHỊ THỰC CHIẾN
- Khi Host Gặp Sự Cố (HA Failover Event): HA đưa ra quyết định restart máy ảo, đồng thời gọi tới DRS Engine để chọn host còn sống có tải thấp nhất và thỏa mãn các quy tắc DRS Rule để đặt máy ảo lên đó.
- Xung Đột Quy Tắc (Rules Conflict): Nếu VM bị gán 'Must Rule' (Hard Rule) mà toàn bộ host trong nhóm bị sập, HA sẽ tuân thủ quy tắc và không restart VM trên host ngoài nhóm. Nếu là 'Soft Rule', HA sẽ tạm phá vỡ quy tắc để cứu sống VM trước, sau đó DRS sẽ tự vMotion trả VM về vị trí mong muốn.
- Proactive HA: Kết hợp với phần mềm giám sát phần cứng (Dell OpenManage, HPE OneView). Khi cảm biến phát hiện linh kiện (quạt, nguồn, RAM ECC) bị suy giảm chất lượng nhưng chưa hỏng hẳn, Proactive HA đưa host vào chế độ cách ly và ra lệnh cho DRS chủ động di tản mềm các VM đi trước.
6.1. Tóm Tắt Khuyến Nghị Cấu Hình Môi Trường Doanh Nghiệp
- HA Admission Control: Sử dụng Cluster Resource Percentage (% CPU & RAM) để tránh lãng phí tài nguyên do lỗi Slot Size.
- Host Isolation Response: Chọn Shut down and restart VMs để đảm bảo an toàn cho dữ liệu ứng dụng/database.
- Datastore Heartbeat: Cấu hình tối thiểu 2 Datastores chia sẻ độc lập để loại bỏ điểm nghẽn đơn lẻ khi thẩm định trạng thái host.
- Critical DB / Services Rule: Áp dụng VM-VM Anti-Affinity Rule để tách các node dự phòng sang các máy chủ vật lý khác nhau.
- CPU Heterogeneity: Bật EVC Baseline ở mức CPU thế hệ thấp nhất trong cluster để đảm bảo tính tương thích vMotion tuyệt đối.
 
Back
Top