community.general.pmem 模块 – 配置英特尔傲腾持久内存模块

注意

此模块是 community.general 集合 (版本 10.1.0) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install community.general。您需要其他要求才能使用此模块,请参阅 要求 获取详细信息。

要在 playbook 中使用它,请指定:community.general.pmem

community.general 4.5.0 中的新增功能

摘要

  • 此模块允许使用 ipmctl 和 ndctl 命令行工具配置英特尔傲腾持久内存模块 (PMem)。

要求

执行此模块的主机需要以下要求。

  • ipmctl 和 ndctl 命令行工具

  • xmltodict

参数

参数

注释

appdirect

整数

在 AppDirect 模式下使用的总容量百分比 (0-100)。

如果适用,则在给定目标的情况下,利用跨请求的 PMem 模块的硬件交错创建 AppDirect 容量。

appdirectmemorymodereserved 的总和必须为 100

appdirect_interleaved

布尔值

创建与任何其他 PMem 模块交错的 AppDirect 容量。

选项

  • false

  • true ← (默认)

memorymode

整数

在内存模式下使用的总容量百分比 (0-100)。

namespace

列表 / 元素=字典

这使得能够设置 PMem 命名空间的配置。

mode

字符串 / 必需

命名空间的模式。模式的详细信息在 ndctl-create-namespace 的手册页中。

选项

  • "raw"

  • "sector"

  • "fsdax"

  • "devdax"

size

字符串

命名空间的大小。此选项支持后缀 kKKB 表示 KiB,mMMB 表示 MiB,gGGB 表示 GiB,以及 tTTB 表示 TiB。

如果配置多个命名空间,则此选项是必需的。

如果未设置此选项,则配置区域的所有可用空间。

type

字符串

命名空间的类型。类型的详细信息在 ndctl-create-namespace 的手册页中。

选项

  • "pmem"

  • "blk"

namespace_append

布尔值

启用将新的命名空间附加到系统。

默认值为 false,因此 namespace 中未列出的所有现有命名空间都将被删除。

选项

  • false ← (默认)

  • true

reserved

整数

保留容量的百分比(0-100)。reserved 将不会映射到系统的物理地址空间,并将显示为保留容量,可以使用 Show Device 和 Show Memory Resources 命令查看。

如果未配置,reserved 将自动设置。

插槽

列表 / 元素=字典

这允许使用插槽 ID 为每个插槽设置配置。

在一个插槽内,appdirectmemorymodereserved 的总和必须为 100

appdirect

整数 / 必需

在插槽 ID 内,以 AppDirect 模式使用的总容量百分比(0-100)。

appdirect_interleaved

布尔值

创建 AppDirect 容量,该容量与插槽 ID 内的任何其他 PMem 模块交错。

选项

  • false

  • true ← (默认)

ID

整数 / 必需

PMem 模块的插槽 ID。

memorymode

整数 / 必需

在插槽 ID 内,以内存模式使用的总容量百分比(0-100)。

reserved

整数

在插槽 ID 内,保留容量的百分比(0-100)。

属性

属性

支持

描述

check_mode

支持:不支持

可以在 check_mode 下运行,并在不修改目标的情况下返回更改状态预测。

diff_mode

支持:不支持

处于差异模式时,将返回有关已更改内容(或可能需要在 check_mode 下更改的内容)的详细信息。

示例

- name: Configure the Pmem as AppDirect 10, Memory Mode 70, and the Reserved 20 percent.
  community.general.pmem:
    appdirect: 10
    memorymode: 70

- name: Configure the Pmem as AppDirect 10, Memory Mode 80, and the Reserved 10 percent.
  community.general.pmem:
    appdirect: 10
    memorymode: 80
    reserved: 10

- name: Configure the Pmem as AppDirect with not interleaved 10, Memory Mode 70, and the Reserved 20 percent.
  community.general.pmem:
    appdirect: 10
    appdirect_interleaved: false
    memorymode: 70

- name: Configure the Pmem each socket.
  community.general.pmem:
    socket:
      - id: 0
        appdirect: 10
        appdirect_interleaved: false
        memorymode: 70
        reserved: 20
      - id: 1
        appdirect: 10
        memorymode: 80
        reserved: 10

- name: Configure the two namespaces.
  community.general.pmem:
    namespace:
      - size: 1GB
        type: pmem
        mode: raw
      - size: 320MB
        type: pmem
        mode: sector

返回值

常用返回值已在 此处 文档中说明,以下是此模块特有的字段

描述

reboot_required

布尔值

指示需要系统重启才能完成 PMem 配置。

返回值:成功

示例:true

result

列表 / 元素=字典

显示 AppDirect、内存模式和保留大小(以字节为单位)的值。

如果提供了 socket 参数,则显示每个插槽中的值,其中 socket 包含插槽 ID。

如果提供了 namespace 参数,则显示每个命名空间的详细信息。

返回值:成功

示例:[{"appdirect": 111669149696, "memorymode": 970662608896, "reserved": 3626500096, "socket": 0}, {"appdirect": 111669149696, "memorymode": 970662608896, "reserved": 3626500096, "socket": 1}]

appdirect

整数

AppDirect 大小(以字节为单位)。

返回值:成功

memorymode

整数

内存模式大小(以字节为单位)。

返回值:成功

namespace

列表 / 元素=字符串

命名空间详细信息列表。

返回值:成功

reserved

整数

保留大小(以字节为单位)。

返回值:成功

插槽

整数

要配置的插槽 ID。

返回值:成功

作者

  • Mizuma Masayoshi (@mizumm)