在 ESX/ESXi 中配置高级驱动程序模块参数
search cancel

在 ESX/ESXi 中配置高级驱动程序模块参数

book

Article ID: 337177

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

本文介绍在 ESX/ESXi 主机中为驱动程序模块指定高级配置选项的步骤。

可以在 ESX/ESXi 中为驱动程序模块指定高级配置选项。每个驱动程序模块可用的选项有所差别,但可以通过一个公共界面查看和设置模块选项。在 VMware 支持、知识库文章或产品文档的指导下指定模块选项。

每个配置选项的作用不在本文的范围内。

ESX/ESXi 启动期间加载驱动程序时会验证选项。如果配置了无效的模块选项,随后重新引导时可能才会注意到该选项,并且关联的驱动程序模块可能无法成功加载。有关详细信息,请参见 ESX/ESXi driver module fails to load, logs error "Bad parameter" (1038247)

警告:对驱动程序模块选项所做的配置更改将在 ESX/ESXi 主机启动时生效。开始操作之前,请确保 ESX/ESXi 主机处于维护模式。有关详细信息,请参见 Rebooting an ESX Server host (1003530)


Symptoms:
免责声明:本文为 Configuring advanced driver module parameters in ESX/ESXi (1017588) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。

Environment

VMware ESXi 3.5.x Embedded
VMware ESX 4.0.x
VMware ESXi 4.0.x Installable
VMware ESX Server 3.5.x
VMware ESX Server 3.0.x
VMware ESXi 4.0.x Embedded
VMware vSphere ESXi 5.0
VMware ESXi 3.5.x Installable
VMware ESXi 4.1.x Installable
VMware ESXi 4.1.x Embedded
VMware ESX 4.1.x

Resolution

使用 vSphere PowerCLI、vSphere 命令行界面或 ESX/ESXi 主机的本地控制台执行配置。有关每个界面的详细信息,请参见:

模块选项指定为引号引起的键密钥=值对的列表,以空格分隔。

例如:

"OptionName1=Value1 OptionName2=Value2"

可以使用不带空格的默认空选项列表(例如 "")指示未指定任何配置。仅包含空格的选项列表(例如 " ")无效。

如果指定新选项,则会覆盖所有现有选项。要附加一个新选项,但保留所有现有选项,请查看现有选项配置并设置一个新模块配置,其中包括之前的选项和新选项。

过程概览

更改驱动程序模块选项的过程通常遵循以下模式:

  1. 将 ESX/ESXi 主机置于维护模式,关闭或迁离所有虚拟机。
  2. 使用首选方法更改模块选项。
  3. 如果是 ESX(而非 ESXi),请使用以下命令重新构建 initrd:esxcfg-boot -b
  4. 重新引导 ESX/ESXi 主机以使配置更改生效。
  5. 验证正确的操作。
  6. 退出维护模式。

使用 vSphere PowerCLI 操作特定模块的选项

可以使用 PowerCLI 在安装了 ESX 3.5 Update 2 或更高版本的 ESX/ESXi 主机上为特定模块设置选项。有关 PowerCLI 安装和用法的详细信息,请参见 vSphere PowerCLI Documentation

例如:
Get-VMHostModule ModuleName

Name Options
------- ----------
ModuleName OptionName1=Value1
Get-VMHostModule ModuleName | Set-VMHostModule -Options "OptionName1=Value1 OptionName2=Value2"

Name Options
------- ----------
ModuleName OptionName1=Value1 OptionName2=Value2

使用 esxcli 操作特定模块的选项

可以使用 esxcli 在安装了 ESX 5.0 或更高版本的 ESXi 主机上为特定模块设置选项。有关用法的详细信息,请参见 vSphere Command-Line Interface Documentation 中的“Managing Hosts - Managing VMkernel Modules”。

例如:
esxcli [connection_options] system module parameters list --module ModuleName

Name Type Value Description
------- ---- ----- ----------
OptionName1 int Value1 Option Description
OptionName2 int Option Description
esxcli [connection_options] system module parameters set --module ModuleName --parameter-string "OptionName1=Value1 OptionName2=Value2"
esxcli [connection_options] system module parameters list --module ModuleName

Name Type Value Description
------- ---- ----- ----------
OptionName1 int Value1 Option Description
OptionName2 int Value2 Option Description

使用 vSphere 命令行界面操作特定模块的选项

可以使用 vCLI 在安装了 ESX 3.5 Update 2 和更高版本的 ESX/ESXi 主机上为特定模块设置选项。有关 vCLI 安装和用法的详细信息,请参见 vSphere Command-Line Interface Documentation

例如:
vicfg-module.pl [connection_options] --get-options ModuleName
ModuleName options = 'OptionName1=Value1'
vicfg-module.pl [connection_options] --set-options "OptionName1=Value1 OptionName2=Value2" ModuleName


使用服务控制台或技术支持模式界面操作特定模块的选项

可以使用物理控制台或 SSH 会话在 ESX/ESXi 主机上为特定模块设置选项。有关详细信息,请参见 Unable to connect to an ESX host using Secure Shell (SSH) (1003807)Using Tech Support Mode in ESXi 4.1 (1017910)

例如:
esxcfg-module --get-options ModuleName
ModuleName options = 'OptionName1=Value1'

esxcfg-module --set-options "OptionName1=Value1 OptionName2=Value2" ModuleName

要使用 esxcli 更改 ESXi 5.0 中的参数,请使用以下命令:

esxcli system module parameters set -m ModuleName -p parameter=value


Additional Information

可以使用控制台上提供的工具或使用 esxcli 远程检查 ESX/ESXi 主机模块上可能的配置选项。可以通过 vicfg-module 远程完成该操作,也可以使用 PowerCLI 完成。

列出 ESX/ESXi 主机上的所有模块

要列出 ESX/ESXi 主机上当前加载的所有模块,请执行以下操作:

  • ESXi 5.0:在 ESXi Shell 或 vCLI 中使用 esxcli

    esxcli [connection_options] system module list

  • ESX/ESXi 3.x 和 4.x:在控制台上使用 esxcfg-module

    esxcfg-module -l

  • ESX/ESXi 3.x 和 4.x:在 vCLI 中使用 vicfg-module

    vicfg-module [connection_options] -l

为 ESX/ESXi 主机上的特定模块列出所有可用选项

要为特定模块列出所有可用选项,请在控制台上使用 vmkload_mod 命令或远程使用 esxcli 命令,通过 esxcfg-modulevicfg-moduleesxcli 命令指定其中一个模块名称。有关详细信息,请参见 Unable to connect to an ESX host using Secure Shell (SSH) (1003807)Using Tech Support Mode in ESXi 4.1 (1017910)
例如:
  • ESXi 5.0:在 ESXi Shell 或 vCLI 中使用 esxcli:

    esxcli [connection_options] system module parameters list --module ModuleName

    Name Type Value Description
    ------- ---- ----- ----------
    OptionName1 int Value1 Option Description
    OptionName2 int Value2 Option Description

  • ESX/ESXi 3.x 和 4.x:在控制台上使用 vmkload_mod

    vmkload_mod --showinfo ModuleName

    vmkload_mod module information
    input file: /usr/lib/vmware/vmkmod/ModuleName
    Parameters:
    OptionName1: type
    Description of the effects of option 1
    OptionName2: type
    Description of the effects of option 2
    ...


    注意:并非所有模块都具有可配置的选项。参数列表可能为空。
Configuring advanced driver module parameters in ESX/ESXi