Puppet Class: infiniband

Inherits:
infiniband::params
Defined in:
manifests/init.pp

Summary

Manage InfiniBand support

Overview

Examples:

include ::infiniband

Parameters:

  • extra_packages (Array) (defaults to: [])

    The extra packges to install.

  • rdma_service_ensure (String) (defaults to: $infiniband::params::service_ensure)

    RDMA service ensure parameter. Default to 'running' if has_infiniband fact is 'true', and 'stopped' if 'has_infiniband' fact is 'false'.

  • rdma_service_enable (Boolean) (defaults to: $infiniband::params::service_enable)

    RDMA service enable parameter. Default to true if has_infiniband fact is 'true', and false if 'has_infiniband' fact is 'false'.

  • rdma_service_name (String) (defaults to: $infiniband::params::rdma_service_name)

    RDMA service name.

  • rdma_service_has_status (Boolean) (defaults to: $infiniband::params::rdma_service_has_status)

    RDMA service has_status parameter.

  • rdma_service_has_restart (Boolean) (defaults to: $infiniband::params::rdma_service_has_restart)

    RDMA service has_restart parameter.

  • ibacm_service_ensure (String) (defaults to: $infiniband::params::service_ensure)

    ibacm service ensure parameter. Default to 'running' if has_infiniband fact is 'true', and 'stopped' if 'has_infiniband' fact is 'false'.

  • ibacm_service_enable (Boolean) (defaults to: $infiniband::params::service_enable)

    ibacm service enable parameter. Default to true if has_infiniband fact is 'true', and false if 'has_infiniband' fact is 'false'.

  • ibacm_service_name (String) (defaults to: $infiniband::params::ibacm_service_name)

    ibacm service name.

  • ibacm_service_has_status (Boolean) (defaults to: $infiniband::params::ibacm_service_has_status)

    ibacm service has_status parameter.

  • ibacm_service_has_restart (Boolean) (defaults to: $infiniband::params::ibacm_service_has_restart)

    ibacm service has_restart parameter.

  • rdma_conf_path (Stdlib::Absolutepath) (defaults to: $infiniband::params::rdma_conf_path)

    The RDMA service configuration path.

  • ipoib_load (Enum['yes', 'no']) (defaults to: 'yes')

    Sets the IPOIB_LOAD setting for the RDMA service.

  • srp_load (Enum['yes', 'no']) (defaults to: 'no')

    Sets the SRP_LOAD setting for the RDMA service.

  • iser_load (Enum['yes', 'no']) (defaults to: 'no')

    Sets the ISER_LOAD setting for the RDMA service.

  • rds_load (Enum['yes', 'no']) (defaults to: 'no')

    Sets the RDS_LOAD setting for the RDMA service.

  • fixup_mtrr_regs (Enum['yes', 'no']) (defaults to: 'no')

    Sets the FIXUP_MTRR_REGS setting for the RDMA service.

  • nfsordma_load (Enum['yes', 'no']) (defaults to: 'yes')

    Sets the NFSoRDMA_LOAD setting for the RDMA service.

  • nfsordma_port (Integer[0, 65535]) (defaults to: 2050)

    Sets the NFSoRDMA_PORT setting for the RDMA service.

  • manage_mlx4_core_options (Boolean) (defaults to: true)

    Boolean that determines if '/etc/modprobe.d/mlx4_core.conf' should be managed.

  • log_num_mtt (Optional[Integer]) (defaults to: undef)

    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.

  • log_mtts_per_seg (Integer) (defaults to: 3)

    Sets the mlx4_core module's 'log_mtts_per_seq' value.

  • interfaces (Hash) (defaults to: {})

    This Hash can be used to define infiniband::interface resources.



58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
# File 'manifests/init.pp', line 58

class infiniband (
  Array $extra_packages                 = [],
  String $rdma_service_ensure           = $infiniband::params::service_ensure,
  Boolean $rdma_service_enable          = $infiniband::params::service_enable,
  String $rdma_service_name             = $infiniband::params::rdma_service_name,
  Boolean $rdma_service_has_status      = $infiniband::params::rdma_service_has_status,
  Boolean $rdma_service_has_restart     = $infiniband::params::rdma_service_has_restart,
  String $ibacm_service_ensure          = $infiniband::params::service_ensure,
  Boolean $ibacm_service_enable         = $infiniband::params::service_enable,
  String $ibacm_service_name            = $infiniband::params::ibacm_service_name,
  Boolean $ibacm_service_has_status     = $infiniband::params::ibacm_service_has_status,
  Boolean $ibacm_service_has_restart    = $infiniband::params::ibacm_service_has_restart,
  Stdlib::Absolutepath $rdma_conf_path  = $infiniband::params::rdma_conf_path,
  Enum['yes', 'no'] $ipoib_load         = 'yes',
  Enum['yes', 'no'] $srp_load           = 'no',
  Enum['yes', 'no'] $iser_load          = 'no',
  Enum['yes', 'no'] $rds_load           = 'no',
  Enum['yes', 'no'] $fixup_mtrr_regs    = 'no',
  Enum['yes', 'no'] $nfsordma_load      = 'yes',
  Integer[0, 65535] $nfsordma_port      = 2050,
  Boolean $manage_mlx4_core_options     = true,
  Optional[Integer] $log_num_mtt        = undef,
  Integer $log_mtts_per_seg             = 3,
  Hash $interfaces                      = {},
) inherits infiniband::params {

  if $manage_mlx4_core_options {
    $real_log_num_mtt = $log_num_mtt ? {
      Undef   => infiniband::calc_log_num_mtt($facts.dig('memory','system','total_bytes'), $log_mtts_per_seg),
      default => $log_num_mtt,
    }
  }

  include '::infiniband::install'
  include '::infiniband::config'
  include '::infiniband::service'
  include '::infiniband::providers'

  anchor { 'infiniband::start': }
  anchor { 'infiniband::end': }

  Anchor['infiniband::start']
  -> Class['infiniband::install']
  -> Class['infiniband::config']
  -> Class['infiniband::service']
  -> Class['infiniband::providers']
  -> Anchor['infiniband::end']

}