简介
本文档介绍在主机托管模式下使用Intel® Optane™ Persistent Memory(PMEM)在统一计算系统(UCS)B系列服务器上配置ESXi的过程。
先决条件
要求
Cisco 建议您了解以下主题:
- UCS B系列
- 英特尔® Optane™数据中心永久内存模块(DCPMM)概念
- VMware ESXi和vCenter Server管理
尝试进行此配置之前,请确保满足以下要求:
- 请参阅B200/B480 M5规格指南上的PMEM指南。
- 确保CPU是第二代Intel® Xeon®可扩展处理器。
- 根据KB 67645,PMEM/动态随机访问存储器(DRAM)比率符合要求。
- ESXi为6.7 U2 + Express补丁10(ESXi670-201906002)或更高版本。不支持较早的6.7版本。
- UCS Manager和服务器为4.0(4)版本或更高版本。有关最新推荐的版本,请访问www.software.cisco.com/。
使用的组件
本文档中的信息基于以下软件和硬件版本:
- UCS B480 M5
- UCS Manager 4.1(2b)
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
在配置为App Direct模式的UCS服务器中,VMware ESXi虚拟机可访问Optane DCPMM永久内存非易失性双列直插式内存模块(NVDIMM)。
英特尔光纤DCPMM可通过IPMCTL管理实用程序通过统一可扩展固件接口(UEFI)外壳或通过操作系统实用程序进行配置。此工具旨在执行以下某些操作:
- 发现和管理模块
- 更新和配置模块固件
- 监控运行状况
- 调配和配置目标、区域和命名空间
- 对PMEM进行调试和故障排除
可以使用连接到服务配置文件的永久内存策略配置UCS,以便于使用。
开源非易失性设备控制(NDCTL)实用程序用于管理LIBNVDIMM Linux内核子系统。NDCTL实用程序允许系统调配和执行配置作为供操作系统使用的区域和命名空间。
添加到ESXi主机的永久内存由主机检测、格式化并作为本地PMem数据存储区挂载。为了使用PMEM,ESXi使用虚拟机飞行系统(VMFS)-L文件系统格式,并且每台主机仅支持一个本地PMEM数据存储。
与其他Datastore不同,PMEM Datastore不支持传统Datastore的任务。具有vmx和vmware.log文件的VM主目录不能放置在PMEM数据存储区上。
PMEM可以在两种不同的模式下呈现给VM:直接访问模式和虚拟磁盘模式。
-
直接访问模式
可以通过以NVDIMM形式提供PMEMregion来为此模式配置VM。VM操作系统必须具有PMem感知才能使用此模式。由于NVDIMM充当字节可寻址存储器,因此存储在NVDIMM模块上的数据可以跨电源周期保留。在形成PMEM时,NVDIMM自动存储在ESXi创建的PMem数据存储中。
-
虚拟磁盘模式
适用于驻留在虚拟机上的传统和传统操作系统,以便支持任何硬件版本。VM操作系统不需要感知PMEM。在此模式下,VM操作系统可创建和使用传统的小型计算机系统接口(SCSI)虚拟磁盘。
本文档介绍在直接访问模式下使用虚拟机的配置。
配置
此程序介绍如何使用Intel Optane DCPMM在UCS刀片系列服务器上配置ESXi。
配置服务配置文件
1.在UCS Manager GUI中,导航到Servers > Persistent Memory Policy,然后点击Add,如图所示。

2.创建目标,确保内存模式为0%(如图所示)。

3.将PMEM策略添加到所需的服务配置文件。
导航到Service Profile > Policies > Persistent Memory Policy并附加创建的策略。
4. 检验区域的健康状况。
导航到所选的服务器>资产>永久内存>区域。AppDirect类型可见。此方法每个CPU插槽创建一个区域。

验证ESXi
1.在Web控制台中,主机显示可用的PMEM总数。

2. ESXi显示一个由PMEM总量组成的特殊数据存储,如图所示。

配置虚拟机NVDIMM
1.在ESXi中,虚拟机可作为NVDIMM访问Optane DCPMM PMEM。要将NVMDIMM分配给虚拟机,请通过vCenter访问虚拟机并导航到操作>编辑设置,单击添加新设备,然后选择NVDIMM,如图所示。

注意: 创建虚拟机时,请确保操作系统兼容性满足支持英特尔®光纤™永久内存的最低要求版本,否则NVDIMM选项不会显示在可选的项目中。
2.如图所示设置NVDIMM的大小。

在虚拟机中配置命名空间
1. NDCTL实用程序用于管理和配置PMEM或NVDIMM。
在本例中,Red Hat 8用于配置。Microsoft具有用于永久内存命名空间管理的PowerShell cmdlet。
根据Linux发行版使用可用工具下载NDCTL实用程序
例如:
# yum install ndctl
# zypper install ndctl
# apt-get install ndctl
2. 验证默认情况下由ESXi创建的NVDIMM区域和命名空间,当NVDIMM分配给虚拟机时,验证空间与配置相匹配。确保命名空间的模式设置为raw,这表示ESXi已创建命名空间。要验证,请使用命令:
# ndctl list -RuN

3.(可选)如果尚未创建命名空间,可以使用以下命令创建命名空间:
# ndctl create-namespace
默认情况下,ndctl create-namespace命令在fsdax模式下创建一个新名称空间,并创建一个新的/dev/pmem([x].[y])设备。如果已创建命名空间,则可以跳过此步骤。
4.选择PMEM访问模式,可用于配置的模式如下:
- 扇区模式:
将存储呈现为快速块设备,这对于仍然不能使用永久内存的传统应用程序非常有用。
- Fsdax模式:
允许永久内存设备支持直接访问NVDIMM。文件系统直接访问要求使用fsdax模式,以便启用直接访问编程模型。此模式允许在NVDIMM上创建文件系统。
- Devdax模式:
使用DAX字符设备提供对永久内存的原始访问。 无法在使用devdax模式的设备上创建文件系统。
- 原始模式:
此模式有若干限制,建议不要使用持久性内存。
要将模式更改为fsdax模式,请使用命令:
ndctl create-namespace -f -e --mode fsdax
如果已经创建了dev,则dev命名空间用于格式化模式并将其修改为fsdax。

注意:这些命令要求帐户具有root权限,可能需要sudo命令。
5.创建目录和文件系统。
直接访问或DAX是一种机制,允许应用程序直接从CPU访问持久介质(通过加载和存储),绕过传统I/O堆栈。启用DAX的永久内存文件系统包括ext4、XFS和Windows NTFS。
创建和装载的XFS文件系统示例:
sudo mkdir < directory route (e.g./mnt/pmem) >
sudo mkfs.xfs < /dev/devicename (e.g. pmem0) >

6.装载文件系统并验证是否成功。
sudo mount < directory >
df -h < directory >

VM已准备好使用PMEM。
故障排除
如果发现错误,通常建议使用-o dax装载选项装载此启用DAX的文件系统。

执行文件系统修复以确保完整性。

对此的解决方法是,可以不使用 — o dax选项安装装载。
注意:在xfsprogs版本5.1中,默认是创建XFS文件系统,并启用reflink选项。以前默认情况下禁用此功能。reflink和dax选项互相排斥,导致安装失败。
“DAX和reflink不能一起使用!” 当mount命令失败时,可以在dmesg中看到此错误:

解决方法是,删除-o dax选项。

使用ext4 FS装载。
EXT4文件系统可以用作替代方案,因为它不实施重新链接功能,但支持DAX。

相关信息