infiniband
: Manage InfiniBand support
infiniband::config
: Manage InfiniBand configinfiniband::install
: Install InfiniBand supportinfiniband::params
: The infiniband default configuration settings.infiniband::providers
: Convenience class to call defined types provided by this module.infiniband::service
: Manage InfiniBand services
infiniband::interface
: Manage IPoIB interface
infiniband::calc_log_num_mtt
: This function calculates the appropriate value for mlx4_core module'slog_num_mtt
parameter. The formula is `max_reg_mem = (2^log_num_mtt)
Manage InfiniBand support
include ::infiniband
The following parameters are available in the infiniband
class:
extra_packages
rdma_service_ensure
rdma_service_enable
rdma_service_name
rdma_service_has_status
rdma_service_has_restart
ibacm_service_ensure
ibacm_service_enable
ibacm_service_name
ibacm_service_has_status
ibacm_service_has_restart
rdma_conf_path
ipoib_load
srp_load
iser_load
rds_load
fixup_mtrr_regs
nfsordma_load
nfsordma_port
manage_mlx4_core_options
log_num_mtt
log_mtts_per_seg
interfaces
Data type: Array
The extra packges to install.
Default value: []
Data type: String
RDMA service ensure parameter.
Default to 'running' if has_infiniband
fact is 'true', and 'stopped' if 'has_infiniband' fact is 'false'.
Default value: $infiniband::params::service_ensure
Data type: Boolean
RDMA service enable parameter.
Default to true if has_infiniband
fact is 'true', and false if 'has_infiniband' fact is 'false'.
Default value: $infiniband::params::service_enable
Data type: String
RDMA service name.
Default value: $infiniband::params::rdma_service_name
Data type: Boolean
RDMA service has_status parameter.
Default value: $infiniband::params::rdma_service_has_status
Data type: Boolean
RDMA service has_restart parameter.
Default value: $infiniband::params::rdma_service_has_restart
Data type: String
ibacm service ensure parameter.
Default to 'running' if has_infiniband
fact is 'true', and 'stopped' if 'has_infiniband' fact is 'false'.
Default value: $infiniband::params::service_ensure
Data type: Boolean
ibacm service enable parameter.
Default to true if has_infiniband
fact is 'true', and false if 'has_infiniband' fact is 'false'.
Default value: $infiniband::params::service_enable
Data type: String
ibacm service name.
Default value: $infiniband::params::ibacm_service_name
Data type: Boolean
ibacm service has_status parameter.
Default value: $infiniband::params::ibacm_service_has_status
Data type: Boolean
ibacm service has_restart parameter.
Default value: $infiniband::params::ibacm_service_has_restart
Data type: Stdlib::Absolutepath
The RDMA service configuration path.
Default value: $infiniband::params::rdma_conf_path
Data type: Enum['yes', 'no']
Sets the IPOIB_LOAD
setting for the RDMA service.
Default value: 'yes'
Data type: Enum['yes', 'no']
Sets the SRP_LOAD
setting for the RDMA service.
Default value: 'no'
Data type: Enum['yes', 'no']
Sets the ISER_LOAD
setting for the RDMA service.
Default value: 'no'
Data type: Enum['yes', 'no']
Sets the RDS_LOAD
setting for the RDMA service.
Default value: 'no'
Data type: Enum['yes', 'no']
Sets the FIXUP_MTRR_REGS
setting for the RDMA service.
Default value: 'no'
Data type: Enum['yes', 'no']
Sets the NFSoRDMA_LOAD
setting for the RDMA service.
Default value: 'yes'
Data type: Integer[0, 65535]
Sets the NFSoRDMA_PORT
setting for the RDMA service.
Default value: 2050
Data type: Boolean
Boolean that determines if '/etc/modprobe.d/mlx4_core.conf' should be managed.
Default value: true
Data type: Optional[Integer]
Sets the mlx4_core module's 'log_num_mtt' value.
When the value is undef the value is determined using the calc_log_num_mtt
parser function.
Default value: undef
Data type: Integer
Sets the mlx4_core module's 'log_mtts_per_seq' value.
Default value: 3
Data type: Hash
This Hash can be used to define infiniband::interface
resources.
Default value: {}
Manage IPoIB interface
infiniband::interface { 'ib0':
ipaddr => '192.168.1.1',
netmask => '255.255.255.0',
}
The following parameters are available in the infiniband::interface
defined type:
name
ipaddr
netmask
gateway
ensure
enable
nm_controlled
connected_mode
mtu
bonding
bonding_slaves
bonding_opts
The resource title. Sets the interfaces name, for example 'ib0'.
Data type: Stdlib::Compat::Ip_address
The IPADDR for the infiniband interface.
Data type: Stdlib::Compat::Ip_address
The NETMASK for the infiniband interface.
Data type: Optional[Stdlib::Compat::Ip_address]
The GATEWAY for the infiniband interface.
Default value: undef
Data type: Enum['present', 'absent']
Sets if the infiniband::interface should be present or absent.
Default value: 'present'
Data type: Boolean
Sets if the infiniband::interface should be enabled at boot.
Default value: true
Data type: Optional[Variant[Boolean, Enum['yes','no']]]
Value for nm_controlled on interface
Default value: undef
Data type: Enum['yes', 'no']
The CONNECTED_MODE value for the infiniband interface.
Default value: 'yes'
Data type: Optional[Integer]
The MTU for the infiniband interface.
Default value: undef
Data type: Boolean
If this interface is a bonding interface (true/false); defaults to false
Default value: false
Data type: Array[String]
Array of interfaces that should be enslaved in the bonding interface
Default value: []
Data type: String
The bonding options to use for this bonding interface
Default value: 'mode=active-backup miimon=100'
Type: Ruby 4.x API
This function calculates the appropriate value for mlx4_core module's log_num_mtt
parameter.
The formula is max_reg_mem = (2^log_num_mtt) * (2^log_mtts_per_seg) * (page_size_bytes)
. This function finds the
log_num_mtt necessary to make 'max_reg_mem' twice the size of system's RAM. Ref: http://community.mellanox.com/docs/DOC-1120.
infiniband::calc_log_num_mtt($facts['memory']['system']['total_bytes'])
infiniband::calc_log_num_mtt(Optional[Variant[Undef,Integer,Float]] $mem, Optional[Integer] $log_mtts_per_seg, Optional[Integer] $page_size_bytes)
This function calculates the appropriate value for mlx4_core module's log_num_mtt
parameter.
The formula is max_reg_mem = (2^log_num_mtt) * (2^log_mtts_per_seg) * (page_size_bytes)
. This function finds the
log_num_mtt necessary to make 'max_reg_mem' twice the size of system's RAM. Ref: http://community.mellanox.com/docs/DOC-1120.
Returns: Integer
The calculated log_num_mtt value
infiniband::calc_log_num_mtt($facts['memory']['system']['total_bytes'])
Data type: Optional[Variant[Undef,Integer,Float]]
The system memory in bytes
Data type: Optional[Integer]
The value for log_mtts_per_seg. Defaults to 3
if undefined.
Data type: Optional[Integer]
The system's page size in bytes. Defaults to 4096
if undefined.