hoatranlab.io.vn Zalo: 0917516878 Hotline: 0917516878 [email protected]
HoaTranLab HoaTranLab
Buổi 13 / 14

vSAN + vCenter HA + VCSA Backup

Hyper-Converged Infrastructure thực chiến, bảo vệ vCenter chống single point of failure, chiến lược backup VCSA.

~4 giờ Advanced vSAN HCI vCenter HA
Nội dung thực hành trên ESXi 8.0 Update 3 & vCenter Server 8.0 Update 3 (Build 24022515)

Mục tiêu buổi học

  • Hiểu kiến trúc vSAN HCI: Disk Groups, Cache/Capacity Tiers, Fault Domains
  • Cấu hình và verify vSAN Cluster từ đầu
  • Thiết kế Storage Policies phù hợp với FTT và RAID method
  • Triển khai vCenter HA (Active/Passive/Witness)
  • Cấu hình VCSA File-Based Backup tự động và quy trình DR drill

Lý Thuyết

vSAN Architecture — HCI (Hyper-Converged Infrastructure)

vSAN 8.0 — Hai kiến trúc lưu trữ:

  OSA (Original Storage Architecture) — truyền thống:
    Hybrid: SSD cache + HDD capacity → Disk Groups
    All-Flash: NVMe/SSD cache + SSD capacity → Disk Groups
    Mỗi host: ≥1 cache disk + ≥1 capacity disk per Disk Group

  ESA (Express Storage Architecture) — MỚI trong vSAN 8.0:
    Yêu cầu: NVMe SSD only (không dùng HDD)
    Không có Disk Groups — single-tier architecture
    Hiệu năng cao hơn OSA, đơn giản hóa cấu hình
    Mỗi host: tối thiểu 1 NVMe disk

vSAN Cluster — Distributed Storage (OSA):

  ESXi Host 1           ESXi Host 2           ESXi Host 3
  ┌─────────────┐       ┌─────────────┐       ┌─────────────┐
  │ Disk Group 1│       │ Disk Group 1│       │ Disk Group 1│
  │ ┌─────────┐ │       │ ┌─────────┐ │       │ ┌─────────┐ │
  │ │NVMe/SSD │ │       │ │NVMe/SSD │ │       │ │NVMe/SSD │ │
  │ │(Cache)  │ │       │ │(Cache)  │ │       │ │(Cache)  │ │
  │ │SAS ×4   │ │       │ │SAS ×4   │ │       │ │SAS ×4   │ │
  │ │(Capacity│ │       │ │(Capacity│ │       │ │(Capacity│ │
  │ └─────────┘ │       │ └─────────┘ │       │ └─────────┘ │
  └─────────────┘       └─────────────┘       └─────────────┘
         ↕────────── 10/25 Gbps vSAN Network ──────────↕
                     → vSAN Datastore (vsanDatastore)
                       Shared, distributed, software-defined

vSAN Storage Policies — FTT & RAID

PolicyFTTMethodMin HostsOverheadUse Case
RAID-1 Mirror1Mirroring32xStandard production
RAID-1 Mirror2Mirroring53xHigh availability
RAID-5 Erasure1Erasure Coding41.33xStorage efficient
RAID-6 Erasure2Erasure Coding61.5xEfficient + HA

vSAN Fault Domains — Rack-level Tolerance

Fault Domain = nhóm hosts cùng chia sẻ common failure point (cùng rack, cùng PDU)

  Fault Domain A          Fault Domain B          Fault Domain C
  ┌──────────────┐        ┌──────────────┐        ┌──────────────┐
  │ ESXi-01      │        │ ESXi-03      │        │ ESXi-05      │
  │ ESXi-02      │        │ ESXi-04      │        │ ESXi-06      │
  │ (Rack 1)     │        │ (Rack 2)     │        │ (Rack 3)     │
  └──────────────┘        └──────────────┘        └──────────────┘

FTT=1: Survive mất toàn bộ 1 rack (Fault Domain A fail → B + C đủ)
→ Yêu cầu: ≥ 3 Fault Domains

Witness Host: nếu chỉ có 2 Fault Domains
  → Witness host ở vị trí thứ 3 (tiebreaker)
  → Không chứa data, chỉ chứa metadata

vCenter High Availability (vCenter HA)

vCenter HA ≠ vSphere HA
  vSphere HA: protect VMs khi ESXi host fail
  vCenter HA: protect chính VCSA appliance

Topology:
  Active VCSA ←──HA Network──→ Passive VCSA
       ↕                              ↕
       └──────────→ Witness ←─────────┘
                 (tiebreaker)

Sync: Active → Passive mỗi 30 giây (config + DB)

Failover scenario:
  Active VCSA fails
       ↓ Witness detects (quorum)
       ↓ Passive promoted to Active (~5 phút)
       ↓ DNS không đổi (VIP address)
       ↓ All hosts reconnect tự động

RPO: ~30 giây (last sync)
RTO: ~5 phút

Requirements:
  - 3 VMs: Active + Passive + Witness
  - Dedicated HA Network (low latency <10ms)
  - Passive: full copy của Active

VCSA Backup Methods — So sánh

MethodBao gồmRTODestinationKhuyến nghị
File-Based (VAMI)Config, Inventory, Events2-4 giờFTP/SCP/NFS/SMBLuôn cần thiết
Image-Based (Veeam)Full VCSA VM disk30-60 phútBackup repoBổ sung thêm
vCenter HARuntime state only~5 phútN/AKhông thay thế backup

Lab Thực Hành

Lab 13.1 — Cấu hình vSAN Cluster

Yêu cầu tối thiểu:
  - 3 ESXi hosts
  - OSA: Mỗi host ≥1 cache disk (SSD/NVMe) + ≥1 capacity disk
  - ESA: Mỗi host ≥1 NVMe SSD (single-tier, không cần cache riêng)
  - 10 Gbps dedicated vSAN network
  - vSAN license

Bước 1: Chuẩn bị VMkernel vSAN trên mỗi host
  Host → Configure → VMkernel Adapters → Add
  Port Group: DPG-vSAN (VLAN 20)
  IP: 192.168.20.11 (host1), .12, .13
  Services: ✓ vSAN

Bước 2: Bật vSAN trên Cluster
  Cluster → Configure → vSAN → Services → Turn ON vSAN

  vSAN Type: □ Single Site Cluster (lab)

  Claim Disks → Claim Unused Disks for vSAN
  Mỗi host:
    Cache tier:    NVMe/SSD (1 disk per disk group)
    Capacity tier: SAS/SATA HDDs (1-7 per disk group)

Bước 3: Verify
  vSAN Datastore xuất hiện: "vsanDatastore"
  Cluster → Monitor → vSAN → Health → Run Tests
  Tất cả kết quả green ✓

Bước 4: Tạo vSAN Storage Policy
  VM Storage Policies → Create
  Name: vSAN-RAID5-FTT1
  Rules → vSAN:
    Failures to Tolerate: 1
    RAID/Erasure Coding: RAID-5/6 Erasure Coding
    Checksums: Enabled
    Force Provisioning: No

Lab 13.2 — vSAN Health Check và Monitoring

Cluster → Monitor → vSAN → Health

Critical checks:
  ✓ vSAN disk balance (rebalance nếu >10% imbalance)
  ✓ Network Health (latency <1ms, packet loss 0%)
  ✓ HCL Health (disks on VMware HCL)
  ✓ vSAN object health (No degraded objects)
  ✓ Advanced vSAN Configuration (MTU, multicast)

--- Rebalance vSAN (khi hosts mất cân bằng) ---
  vSAN → Rebalance → Proactive Rebalance

--- vSAN Performance Service ---
  Cluster → Configure → vSAN → Services
  → Performance Service: ON

  Cluster → Monitor → vSAN → Performance
  View: IOPS, Latency, Throughput per VM/Disk Group

--- Kiểm tra objects health ---
  Cluster → Monitor → vSAN → Virtual Objects
  Status: Healthy / Degraded / Absent
  Nếu Degraded → Repair Objects ngay

Lab 13.3 — Cấu hình vCenter HA

vSphere Client → vCenter → Configure → vCenter HA → Set Up

Bước 1: Chọn phương thức
  → Basic (vCenter tự tạo Passive + Witness clone)

Bước 2: Cấu hình HA Network
  Network: DPG-vCenter-HA (dedicated VLAN 40)
  Active node IP:  192.168.40.10
  Passive node IP: 192.168.40.11
  Witness node IP: 192.168.40.12

Bước 3: Finish
  vCenter tự động clone VCSA → Passive + Witness
  Quá trình: ~30 phút

Bước 4: Verify
  Configure → vCenter HA → State: Healthy
  Active:  vcsa-01.lab.local (primary)
  Passive: sync 100% ✓
  Witness: connected ✓

Bước 5: Test failover (planned)
  vCenter HA → Initiate Failover (planned)
  Theo dõi: Passive → Active trong ~5 phút
  Xác nhận: vSphere Client vẫn accessible
  Xác nhận: tất cả hosts và VMs visible

Lab 13.4 — VCSA File-Based Backup (VAMI)

Truy cập VAMI: https://vcsa-01.lab.local:5480
Đăng nhập: root / password

Backup → Configure

Backup Location:
  Protocol: SCP
  Server: 10.100.100.50 (backup server)
  Port: 22
  User: backup-svc
  Password: ****
  Directory: /backups/vcsa

Schedule:
  ✓ Enable scheduled backup
  Frequency: Daily
  Time: 02:00 AM
  Retention: 7 (giữ 7 bản backup gần nhất)

Data to backup:
  ✓ Configuration (bắt buộc)
  ✓ Inventory (recommended)
  □ Events and Tasks (tùy chọn — tốn nhiều space)

→ Save → Run Backup Now (kiểm tra ngay)

Verify:
  SSH vào backup server:
  ls -lh /backups/vcsa/
  # File: sn-vcsa-01_20260418_020000_xxxxx/
  # Chứa: config.json, metadata, inventory files

--- Restore procedure (khi cần) ---
  Mount VCSA ISO → Installer → Restore
  Source backup: SCP://10.100.100.50/backups/vcsa/sn-vcsa-01_...
  Target ESXi: 10.100.100.11
  → Stage 1: Deploy new VCSA (30 phút)
  → Stage 2: Restore config + inventory (60-120 phút)

ỨNG DỤNG DOANH NGHIỆP — MODULE 13

vSAN configuration & operations trong môi trường doanh nghiệp — từ thiết kế cluster, SPBM policy, fault domains đến deduplication ROI và stretched cluster cho active-active DC.

1. vSAN Cluster Design — Hybrid vs All-Flash & Sizing

Lựa chọn All-Flash hay Hybrid phụ thuộc workload và ngân sách — All-Flash là xu hướng chính cho production từ 2022.

Tiêu chí Hybrid vSAN All-Flash vSAN All-NVMe vSAN
Cache tierSSD (read+write cache)SSD/NVMe (write cache only)NVMe (write cache only)
Capacity tierSAS/SATA HDDSSD/SAS SSDNVMe SSD
Latency2-5 ms< 1 ms< 0.5 ms
WorkloadROBO, VDI, file serverDB, ERP, vCenterCore banking, real-time analytics
Dedup/CompressChỉ CompressionDedup + CompressionDedup + Compression + Erasure
Chi phí TB hữu dụngThấp nhấtTrung bìnhCao nhất
### vSAN Sizing Ví dụ Thực Tế — 100 VMs Production

Inputs:
  - 100 VMs, avg 200 GB vDisk, 800 IOPS/VM
  - FTT=1 (RAID-5 Erasure Coding) → overhead 1.33×
  - All-Flash cluster, Dedup+Compress ratio ~2.5:1

Capacity calculation:
  Raw needed: 100 VMs × 200 GB = 20 TB
  After FTT RAID-5: 20 TB × 1.33 = 26.6 TB raw
  After dedup: 26.6 TB / 2.5 = 10.7 TB actual raw needed

Hardware config (4 nodes × 2 disk groups):
  Cache:    2× Intel P4510 400GB NVMe per disk group
  Capacity: 4× Samsung 3.84TB SAS SSD per disk group
  Per node: 2 DG × 4 × 3.84TB = 30.72 TB raw
  Cluster:  4 nodes × 30.72 TB = 122.88 TB raw
  Usable after RAID-5 FTT=1: ~82 TB ✓ (target 10.7 TB actual)

Performance:
  4 nodes × (2 DG × ~100K IOPS NVMe cache) = ~800K IOPS
  Target: 100 VMs × 800 IOPS = 80K IOPS → OK

2. Storage Policy Based Management (SPBM) cho vSAN

SPBM là cơ chế tự động đảm bảo mọi VM được lưu trữ đúng theo SLA yêu cầu — không cần admin can thiệp thủ công mỗi khi tạo VM.

### PowerCLI — Tạo vSAN Storage Policies
Connect-VIServer vcsa-01.lab.local

# Policy 1: Gold — FTT=1 RAID-1 Mirror (tốt nhất cho recovery time)
New-SpbmStoragePolicy -Name "vSAN-Gold-RAID1-FTT1" -Description "Production critical, RAID-1" `
    -RuleSet @(New-SpbmRuleSet -AllOfRules @(
        New-SpbmRule -Capability (Get-SpbmCapability "VSAN.hostFailuresToTolerate") -Value 1,
        New-SpbmRule -Capability (Get-SpbmCapability "VSAN.replicationFactor") -Value 2,
        New-SpbmRule -Capability (Get-SpbmCapability "VSAN.forceProvisioning") -Value $false
    ))

# Policy 2: Silver — FTT=1 RAID-5 Erasure Coding (tiết kiệm space hơn)
New-SpbmStoragePolicy -Name "vSAN-Silver-RAID5-FTT1" -Description "Production standard, RAID-5" `
    -RuleSet @(New-SpbmRuleSet -AllOfRules @(
        New-SpbmRule -Capability (Get-SpbmCapability "VSAN.hostFailuresToTolerate") -Value 1,
        New-SpbmRule -Capability (Get-SpbmCapability "VSAN.erasureCodingRedundancy") -Value $true
    ))

# Policy 3: Dev — FTT=0 (không redundancy, tiết kiệm cho dev)
New-SpbmStoragePolicy -Name "vSAN-Dev-FTT0" -Description "Dev only, no redundancy"

# Gán policy cho VM
Set-SpbmEntityConfiguration -StoragePolicy (Get-SpbmStoragePolicy "vSAN-Gold-RAID1-FTT1") `
    -Entity (Get-HardDisk -VM "WINDB-ERP-PRD-01")

SPBM — Lưu ý quan trọng

  • Mỗi VM disk (vmdk) có thể gán policy riêng — OS disk Gold, data disk Silver
  • vSAN sẽ "non-compliant" khi cluster không đủ nodes để đáp ứng FTT policy
  • Monitor compliance: vSphere Client → vSAN → Virtual Objects → chỉ số non-compliant
  • FTT=1 cần tối thiểu 3 hosts; FTT=2 cần 5 hosts; FTT=3 cần 7 hosts

3. Disk Group Configuration & Fault Domains

Fault Domains ánh xạ failures domain vật lý (rack, power circuit) vào vSAN — đảm bảo dữ liệu replicas nằm ở các rack khác nhau.

### vSAN Fault Domain Topology — 2-Rack Design

  RACK A (Fault Domain 1)          RACK B (Fault Domain 2)
  ┌────────────────────────┐        ┌────────────────────────┐
  │  esxi-r01-01  [DG1,DG2]│        │  esxi-r02-01  [DG1,DG2]│
  │  esxi-r01-02  [DG1,DG2]│        │  esxi-r02-02  [DG1,DG2]│
  └────────────────────────┘        └────────────────────────┘
         Power Circuit A                    Power Circuit B

  FTT=1 RAID-1: Component A trên Rack A, Component B trên Rack B
  → Toàn bộ Rack A die → dữ liệu vẫn OK từ Rack B ✓

### Cấu hình Fault Domains via PowerCLI
$cluster = Get-Cluster "CL-HN-Prod-01"
$vsan = $cluster | Get-VsanClusterConfiguration

# Tạo Fault Domain cho 2 racks
$fd1 = New-VsanFaultDomain -Cluster $cluster -Name "Rack-A"
$fd2 = New-VsanFaultDomain -Cluster $cluster -Name "Rack-B"

# Assign hosts vào fault domains
Set-VsanFaultDomain -FaultDomain $fd1 -VMHost @("esxi-hn-r01-01","esxi-hn-r01-02")
Set-VsanFaultDomain -FaultDomain $fd2 -VMHost @("esxi-hn-r02-01","esxi-hn-r02-02")

### Disk Group Best Practices
# All-Flash: 1 NVMe cache disk + 4-7 SSD capacity disks per disk group
# Max 5 disk groups per host
# Cache disk failure → toàn disk group unavailable → quan trọng dùng SSD chất lượng cao
# Monitor: vSphere Client → vSAN → Disk Management → Disk Group Health

4. vSAN Health Service — Proactive Monitoring

vSAN Health Service tự động kiểm tra hàng trăm health checks — chạy định kỳ và phát hiện vấn đề trước khi gây outage.

Health Category Checks quan trọng Khi RED — xử lý
ClustervSAN enabled, Unicast agent, FTT complianceKiểm tra host disconnect, network partition
NetworkMTU 9000 check, vmknic config, latencyVerify jumbo frame end-to-end
Physical diskDisk health, wear level, SMART dataReplace disk trước khi fail hoàn toàn
DataObject health, non-compliant objectsRepair objects, kiểm tra FTT policy
PerformanceRebalance, congestion, latency spikeCheck disk group IOPS, cache hit ratio
### esxcli — vSAN Health CLI Commands
SSH vào ESXi host hoặc dùng PowerCLI:

# Kiểm tra vSAN cluster status
esxcli vsan cluster get

# Xem disk health
esxcli vsan storage list

# Kiểm tra vSAN objects non-compliant
python /usr/lib/vmware/vsan/bin/vsan-health-status.py

### PowerCLI — vSAN Health Report
Get-VsanView -VsanObjectType VsanVcClusterHealthSystem |
    ForEach-Object { $_.VsanQueryVcClusterHealthSummary($cluster.ExtensionData.MoRef,
        $null, $null, $true, $null, $null, "defaultView") } |
    Select-Object -ExpandProperty Groups |
    ForEach-Object { "$($_.GroupName): $($_.GroupHealth)" }

5. Deduplication & Compression ROI — Tính Toán Thực Tế

Dedup+Compression chỉ có trên All-Flash vSAN — tiết kiệm không gian đáng kể cho workloads có dữ liệu trùng lặp cao như VDI và clone VMs.

Workload Type Dedup Ratio Compression Ratio Total Savings Note
VDI (Windows 10 clone)3-5:11.5-2:15-10:1Rất hiệu quả — OS nhiều block giống nhau
VM Templates/Clones2-4:11.3-1.8:13-7:1Nhiều VMs từ 1 template
Database (SQL/Oracle)1.1-1.3:11.2-1.5:11.3-2:1DB data đã được compress, ít dedup
Multimedia / Video1.0:11.0:11.0:1Không hiệu quả — data đã compress

ROI Calculation — 100 VDI Desktops

Raw vDisk: 100 VMs × 80 GB = 8 TB

FTT=1 RAID-5 overhead: 8 TB × 1.33 = 10.64 TB

After Dedup (4:1): 10.64 TB / 4 = 2.66 TB

After Compress (1.8:1): 2.66 TB / 1.8 = 1.48 TB actual disk used

Savings: 10.64 TB → 1.48 TB = 86% space reduction = 7.2:1 overall ratio

6. Stretched Cluster — Active-Active Multi-DC Design

vSAN Stretched Cluster cho phép 1 cluster trải dài 2 data center — VMs chạy active ở cả 2 site với RPO=0 (synchronous replication).

### vSAN Stretched Cluster Topology

  PREFERRED SITE (DC Hà Nội)         SECONDARY SITE (DC HCM)
  ┌────────────────────────┐          ┌────────────────────────┐
  │  esxi-hn-01 [vSAN]     │          │  esxi-hcm-01 [vSAN]    │
  │  esxi-hn-02 [vSAN]     │◄── sync ►│  esxi-hcm-02 [vSAN]    │
  │  esxi-hn-03 [vSAN]     │ latency  │  esxi-hcm-03 [vSAN]    │
  └────────────────────────┘  <5ms    └────────────────────────┘
              ▲                                    ▲
              │           WITNESS HOST             │
              └──────── esxi-witness (cloud) ──────┘
                        (tiebreaker cho split-brain)

Requirements:
  - Network latency site-to-site: <5 ms RTT (bắt buộc)
  - Bandwidth: minimum 10 Gbps giữa 2 sites
  - Witness host: 3rd location, VM nhỏ, chỉ metadata
  - vSAN Advanced hoặc Enterprise license
  - FTT policy: "Preferred/Secondary" cho PFTT=1

### Cấu hình Stretched Cluster
# 1. Deploy Witness Appliance (OVA) tại 3rd site/cloud
# 2. vSphere Client → Cluster → Configure → vSAN → Fault Domains
# → "Stretched Cluster" → Define Preferred/Secondary site + Witness
# 3. Đặt VM Affinity rules: VMs critical → Preferred site
# 4. DRS anti-affinity: tránh tất cả VMs chạy chỉ ở 1 site

Checklist Stretched Cluster Setup

Checklist Operational vSAN