vSAN集群内存消耗问题

文章目录
  • 概述
  • 硬件清单
  • 原因
  • 总结
  • 概述

    今天一哥们找到我,说他有个三台服务器组的vSAN集群,发现还没开始跑业务,内存开销就去了60多个GB,平均每台主机莫名其妙就去了20多GB内存,如下图:

    硬件清单

    DELL R630 3台,分别是

    • A:E5-2680 v4 *2 /32G *3 DDR4 ECC / 1.2T SAS *6 / 800G SSD *2 / 128G M2 SSD *1
    • B:E5-2680 v4 *2 /32G *3 DDR4 ECC / 1.2T SAS *6 / 800G SSD *2 / 128G M2 SSD *1
    • C:E5-2680 v4 *2 /32G *2 DDR4 ECC / 1.2T SAS *6 / 800G SSD *2 / 128G M2 SSD *1

    原因

    其实关于vSAN内存消耗,官方有明确的计算公式的:

    vSANFootprint = HOST_FOOTPRINT + NumDiskGroups * DiskGroupFootprint
    DiskGroupFootprint = DISKGROUP_FIXED_FOOTPRINT + DISKGROUP_SCALABLE_FOOTPRINT + CacheSize * CACHE_DISK_FOOTPRINT + NumCapacityDisks * CAPACITY_DISK_FOOTPRINT
    • HOST_FOOTPRINT:每个 ESXi 主机的 vSAN 消耗的固定内存量(不管磁盘组为何)
    • NumDiskGroups:主机中的磁盘组数。(范围 1-5)
    • DiskGroupFootprint:分配给主机中每个单独磁盘组的内存量。
    • NumCapacityDisks:每个磁盘组中的容量磁盘数。
    • CAPACITY_DISK_FOOTPRINT:每个容量磁盘分配的内存量(无论磁盘大小如何)。
    • DISKGROUP_FIXED_FOOTPRINT:分配给主机中每个单独磁盘组的固定内存量。
    • DISKGROUP_SCALABLE_FOOTPRINT:根据 ESXi 主机的物理内存量分配给每个单独磁盘组的内存量
    • CacheSize:缓存磁盘大小,以 GB 为单位(对于 SSD,范围为 0-600;对于混合配置,范围为 0-2 TB)CACHE_DISK_FOOTPRINT:每 GB 缓存磁盘分配的内存量。

    对于以上参数,部分参数具有常量数值

    All-Flash

    • HOST_FOOTPRINT = 8620 MB
    • CAPACITY_DISK_FOOTPRINT = 240 MB (ALL_FLASH)
    • CACHE_DISK_FOOTPRINT = 15 MB (ALL_FLASH)
    • DISKGROUP_FIXED_FOOTPRINT = 8420 MB (ALL_FLASH) *

    Hybrid

    • CAPACITY_DISK_FOOTPRINT = 300 MB (HYBRID)
    • CACHE_DISK_FOOTPRINT = 10 MB (HYBRID)
    • DISKGROUP_FIXED_FOOTPRINT = 7840 MB (HYBRID)
    • DISKGROUP_SCALABLE_FOOTPRINT = 0.5% of system memory **

    注意:对于启用仅压缩功能的磁盘组,每个容量磁盘需付出 39.5 MB 的额外成本。
    对于启用去重功能的磁盘组,每个磁盘组需付出 120 MB 的额外成本。
    对于混合配置,可扩展的占用空间将是系统内存的 0.5% 或缓存磁盘大小的 0.2%(以较小者为准)。

    全闪存的缓存磁盘上限为 600 GB,因此,使用大于 600 GB 的 SSD 将不会消耗额外的内存。该公式假设使用的是同构磁盘组,即磁盘的数量和大小在主机的磁盘组之间相同。对于异构磁盘组,必须单独计算并汇总每个磁盘组的 DiskGroupFootprint

    对于刚刚的配置实例,我们可以计算

    公式:

    HOST_FOOTPRINT + ( NumDiskGroups * ( DISKGROUP_FIXED_FOOTPRINT + DISKGROUP_SCALABLE_FOOTPRINT + ( CacheSize * CACHE_DISK_FOOTPRINT) + NumCapacityDisks * CAPACITY_DISK_FOOTPRINT))

    计算结果:

    7840 +(7840 + 0.5% * 96 * 1024+600 * 10+ 2 * 300)= 22771.52MB

    当前主机配置的开销在22GB左右,还应当考虑ESXi主机的正常开销。

    总结

    根据计算公式得出的数据和实际消耗的内存相差不大,证明该情况属于正常现象。

    2

    1. 老罗

      1. Nnkin

        领导好!

    发表回复

    您的邮箱地址不会被公开。 必填项已用 * 标注

    Hyper-V虚拟机显卡直通(GPU Passthrough)
    Hyper-V虚拟机显卡直通(GPU Passthrough)
    Citrix NetScaler ADC 升级安全补丁
    Citrix NetScaler ADC 升级安全补丁
    VBR 12 备份Linux系统
    VBR 12 备份Linux系统
    VMware ESXi 9.0 Beta版本首发体验
    VMware ESXi 9.0 Beta版本首发体验
    解决ESXi SSL证书过期,无法登陆
    解决ESXi SSL证书过期,无法登陆
    使用DLVM本地部署DeepSeek(未完待续)
    使用DLVM本地部署DeepSeek(未完待续)
    © 2025 诺诺博客如有侵权请联系删除 | 网站地图 | 百度统计 | 又拍云CDN加速
    为了获得更好的浏览效果 建议您使用IE8.0及以上版本浏览器登陆本站点 · 服务器托管于腾讯云