Configuring advanced driver module parameters in ESX/ESXi
search cancel

Configuring advanced driver module parameters in ESX/ESXi

book

Article ID: 310348

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

This article provides steps to specify advanced configuration options for driver modules on an ESX/ESXi host.

Advanced configuration options can be specified for driver modules in ESX/ESXi. The options available for each driver module differ, but a common interface is available for reviewing and setting module options. Specify module options when directed by VMware Support, a knowledge base article or product documentation.

The effect of each configuration option is outside the scope of this article.

Options are validated when loading the driver during ESX/ESXi startup. If an invalid module option is configured, it may not be noticed until a subsequent reboot and the associated driver module may not load successfully. For more information, see ESX/ESXi driver module fails to load, logs error "Bad parameter" (1038247).

Warning: Configuration changes to driver modules options take effect at startup of the ESX/ESXi host. Before beginning, ensure the ESX/ESXi host is in maintenance mode. For more information, see Rebooting an ESX Server host (1003530).


Environment

VMware ESXi 3.5.x Embedded
VMware vSphere ESXi 6.7
VMware vSphere ESXi 5.0
VMware ESX Server 3.0.x
VMware vSphere ESXi 6.0
VMware vSphere ESXi 5.5
VMware ESXi 4.1.x Installable
VMware ESX Server 3.5.x
VMware ESX 4.0.x
VMware ESXi 3.5.x Installable
VMware ESX 4.1.x
VMware ESXi 4.0.x Embedded
VMware ESXi 4.0.x Installable
VMware ESXi 4.1.x Embedded
VMware vSphere ESXi 6.5

Resolution

Configuration is performed using the vSphere PowerCLI, the vSphere Command-Line Interface, or the local console of an ESX/ESXi host. For more information on each interface, see:

Module options are specified as a quoted list of space-delimited Key=Value pairs.

For example:

"OptionName1=Value1 OptionName2=Value2"
You can use the default blank options list without white spaces (for example, "") to indicate that no configuration is specified. An options list with only whitespace (for example, " ") is invalid.

Specifying new options overrides all existing options. To append a new option while preserving all existing options, review the existing option configuration and set a new module configuration including both the previous and new options.

Process Overview

Generally, the process of changing driver module options follows this pattern:

  1. Put the ESX/ESXi host in maintenance mode, shutting down or migrating off all virtual machines.
  2. Change the module option using preferred method.
  3. If ESX (not ESXi), rebuild the initrd using the command: esxcfg-boot -b
  4. Reboot the ESX/ESXi host for the configuration change to take effect.
  5. Validate correct operation.
  6. Exit maintenance mode.

Manipulating an option for a specific module using vSphere PowerCLI

Options can be set for a specific module on an ESX/ESXi host using PowerCLI on ESX 3.5 Update 2 or later. For more information on PowerCLI installation and usage, see the vSphere PowerCLI Documentation.

For example:
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

Manipulating an option for a specific module using esxcli

Options can be set for a specific module on an ESXi host using esxcli on ESX 5.0 or later. For more information on usage, see Managing Hosts - Managing VMkernel Modules in the vSphere Command-Line Interface Documentation.

For example:
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

Manipulating an option for a specific module using the vSphere Command-Line Interface

Options can be set for a specific module on an ESX/ESXi host using the vCLI on ESX 3.5 Update 2 and later. For more information on vCLI installation and usage, see the vSphere Command-Line Interface Documentation.

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

Manipulating an option for a specific module using the Service Console or Tech Support Mode interface

Options can be set for a specific module on an ESX/ESXi host using the physical console or an SSH session. For more information, see Unable to connect to an ESX host using Secure Shell (SSH) (1003807) or Using Tech Support Mode in ESXi 4.1 (1017910).

For example:
esxcfg-module --get-options ModuleName
ModuleName options = 'OptionName1=Value1'

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

To change the parameters in ESXi 5.0 using esxcli, use the command:

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


Additional Information

Possible configuration options on an ESX/ESXi host modules can be inspected using tools available at the console or remotely using esxcli. This cannot be done remotely via vicfg-module or using PowerCLI.

Listing all modules on an ESX/ESXi host

To list all the modules currently loaded on an ESX/ESXi host:

  • ESXi 5.0: Using esxcli in the ESXi Shell or in the vCLI:

    esxcli [connection_options] system module list

  • ESX/ESXi 3.x and 4.x: Using esxcfg-module at the console:

    esxcfg-module -l

  • ESX/ESXi 3.x and 4.x: Using vicfg-module in the vCLI:

    vicfg-module [connection_options] -l

Listing all available options for a specific module on an ESX/ESXi host

To list all the available options for a specific module, use the vmkload_mod command at the console or the esxcli command remotely, specifying one of the module names from the esxcfg-module, vicfg-module or esxcli commands. For more information, see Unable to connect to an ESX host using Secure Shell (SSH) (1003807) or Using Tech Support Mode in ESXi 4.1 (1017910).
For example:
  • ESXi 5.0: Using esxcli in the ESXi Shell or in the vCLI:

    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 and 4.x: Using vmkload_mod at the console:

    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
    ...


    Note: Not all modules have configurable options. The parameters list may be blank.



Rebooting an ESX Server host
Unable to connect to an ESX host using Secure Shell (SSH)
Using Tech Support Mode in ESXi 4.1, ESXi 5.x, and ESXi 6.x
ESX/ESXi driver module fails to load and reports the error: Bad parameter
ESX/ESXi の詳細ドライバ モジュール パラメータを構成する
在 ESX/ESXi 中配置高级驱动程序模块参数