Intel IPMI 驱动

概述

intel-ipmi 硬件类型与 IPMI 驱动 硬件类型相同,除了支持 Intel Speed Select Performance Profile (Intel SST-PP) 功能。Intel SST-PP 允许服务器通过将 CPU 配置为在 3 个不同的运行点或配置文件下运行,来运行不同的工作负载。

Intel SST-PP 支持三种配置级别

  • 0 - Intel SST-PP 基本配置

  • 1 - Intel SST-PP 配置 1

  • 2 - Intel SST-PP 配置 2

下表显示了在不同的 SST-PP 配置级别下,激活的核心及其基本频率

Config

核心

基本频率 (GHz)

基本

24

2.4

配置 1

20

2.5

配置 2

16

2.7

此配置由管理接口 intel-ipmitool 为 IntelIPMI 硬件管理。

IntelIPMI 使用 IPMI (Intelligent Platform Management Interface) 协议版本 2.0 或 1.5 来管理节点。它使用 IPMItool 工具,这是一个用于控制支持 IPMI 的设备的开源命令行界面 (CLI)。

词汇表

  • IPMI - Intelligent Platform Management Interface(智能平台管理接口)。

  • Intel SST-PP - Intel Speed Select Performance Profile(英特尔速度选择性能配置文件)。

启用 IntelIPMI 硬件类型

请参阅 配置 IPMI 支持 以获取所需的依赖项。

  1. 要启用 intel-ipmi 硬件,请将以下配置添加到您的 ironic.conf

    [DEFAULT]
    enabled_hardware_types = intel-ipmi
    enabled_management_interfaces = intel-ipmitool
    
  2. 重启 Ironic conductor 服务

    sudo service ironic-conductor restart
    
    # Or, for RDO:
    sudo systemctl restart openstack-ironic-conductor
    

使用 IntelIPMI 驱动程序注册节点

配置为使用 IntelIPMI 驱动程序的节点应将 driver 字段设置为 intel-ipmi

IntelIPMI 所需的所有配置值与 IPMI 硬件类型相同,除了管理接口是 intel-ipmitool。有关详细信息,请参阅 IPMI 驱动

可以使用 baremetal node create 命令来注册使用 IntelIPMI 驱动程序的节点。例如

baremetal node create --driver intel-ipmi \
    --driver-info ipmi_address=<address> \
    --driver-info ipmi_username=<username> \
    --driver-info ipmi_password=<password>

intel-ipmi 硬件类型的特性

Intel SST-PP

可以使用 configure_intel_speedselect 部署步骤来配置具有 Intel SST-PP 的节点以使用它。此部署接受

  • intel_speedselect_config:Intel SST-PP 配置的十六进制代码。允许的值为 ‘0x00’、‘0x01’、‘0x02’。这些值分别对应于 Intel SST-PP Config BaseIntel SST-PP Config 1Intel SST-PP Config 2。输入值必须是字符串。

  • socket_count:节点中插槽的数量。输入值必须是正整数(默认值为 1)。

部署步骤会为节点中的每个插槽发出带有原始代码的 IPMI 命令,以设置请求的配置。需要重新启动才能反映更改。

每个配置配置文件都映射到 Ironic 了解的特性。请注意,这些名称仅用于示例目的。可以使用任何名称。只有参数值应与部署步骤 configure_intel_speedselect 匹配。

  • 0 - CUSTOM_INTEL_SPEED_SELECT_CONFIG_BASE

  • 1 - CUSTOM_INTEL_SPEED_SELECT_CONFIG_1

  • 2 - CUSTOM_INTEL_SPEED_SELECT_CONFIG_2

现在,要在配置节点时使用 Intel SST-PP,请在 Ironic 中为每个配置文件创建部署模板。

baremetal deploy template create \
   CUSTOM_INTEL_SPEED_SELECT_CONFIG_BASE \
   --steps '[{"interface": "management", "step": "configure_intel_speedselect", "args": {"intel_speedselect_config": "0x00", "socket_count": 2}, "priority": 150}]'

baremetal deploy template create \
    CUSTOM_INTEL_SPEED_SELECT_CONFIG_1 \
    --steps '[{"interface": "management", "step": "configure_intel_speedselect", "args": {"intel_speedselect_config": "0x01", "socket_count": 2}, "priority": 150}]'

baremetal deploy template create \
   CUSTOM_INTEL_SPEED_SELECT_CONFIG_2 \
   --steps '[{"interface": "management", "step": "configure_intel_speedselect", "args": {"intel_speedselect_config": "0x02", "socket_count": 2}, "priority": 150}]'

所有支持 Intel SST-PP 的节点都应关联这些特性。

baremetal node add trait node-0 \
   CUSTOM_INTEL_SPEED_SELECT_CONFIG_BASE \
   CUSTOM_INTEL_SPEED_SELECT_CONFIG_1 \
   CUSTOM_INTEL_SPEED_SELECT_CONFIG_2

要在节点配置期间触发 Intel SST-PP 配置,可以将其中一个特性添加到 flavor 中。

openstack flavor set baremetal --property trait:CUSTOM_INTEL_SPEED_SELECT_CONFIG_1=required

最后,使用 baremetal flavor 创建服务器,以使用 Intel SST-PP 配置 Config 1 对裸机节点进行配置。