Puppet Class: storm::backend::config

Defined in:
manifests/backend/config.pp

Summary

StoRM Backend config class

Overview

Parameters:

  • hostname (Any) (defaults to: $storm::backend::hostname)
  • install_native_libs_gpfs (Any) (defaults to: $storm::backend::install_native_libs_gpfs)
  • install_mysql_and_create_database (Any) (defaults to: $storm::backend::install_mysql_and_create_database)
  • db_root_password (Any) (defaults to: $storm::backend::db_root_password)
  • db_storm_username (Any) (defaults to: $storm::backend::db_storm_username)
  • db_storm_password (Any) (defaults to: $storm::backend::db_storm_password)
  • xroot_hostname (Any) (defaults to: $storm::backend::xroot_hostname)
  • xroot_port (Any) (defaults to: $storm::backend::xroot_port)
  • gsiftp_pool_members (Any) (defaults to: $storm::backend::gsiftp_pool_members)
  • gsiftp_pool_balance_strategy (Any) (defaults to: $storm::backend::gsiftp_pool_balance_strategy)
  • webdav_pool_members (Any) (defaults to: $storm::backend::webdav_pool_members)
  • srm_pool_members (Any) (defaults to: $storm::backend::srm_pool_members)
  • transfer_protocols (Any) (defaults to: $storm::backend::transfer_protocols)
  • fs_type (Any) (defaults to: $storm::backend::fs_type)
  • storage_areas (Any) (defaults to: $storm::backend::storage_areas)
  • frontend_public_host (Any) (defaults to: $storm::backend::frontend_public_host)
  • frontend_port (Any) (defaults to: $storm::backend::frontend_port)
  • directory_automatic_creation (Any) (defaults to: $storm::backend::directory_automatic_creation)
  • directory_writeperm (Any) (defaults to: $storm::backend::directory_writeperm)
  • rest_services_port (Any) (defaults to: $storm::backend::rest_services_port)
  • rest_services_max_threads (Any) (defaults to: $storm::backend::rest_services_max_threads)
  • rest_services_max_queue_size (Any) (defaults to: $storm::backend::rest_services_max_queue_size)
  • xmlrpc_unsecure_server_port (Any) (defaults to: $storm::backend::xmlrpc_unsecure_server_port)
  • xmlrpc_maxthread (Any) (defaults to: $storm::backend::xmlrpc_maxthread)
  • xmlrpc_max_queue_size (Any) (defaults to: $storm::backend::xmlrpc_max_queue_size)
  • xmlrpc_security_enabled (Any) (defaults to: $storm::backend::xmlrpc_security_enabled)
  • xmlrpc_security_token (Any) (defaults to: $storm::backend::xmlrpc_security_token)
  • ptg_skip_acl_setup (Any) (defaults to: $storm::backend::ptg_skip_acl_setup)
  • pinlifetime_default (Any) (defaults to: $storm::backend::pinlifetime_default)
  • pinlifetime_maximum (Any) (defaults to: $storm::backend::pinlifetime_maximum)
  • sanity_check_enabled (Any) (defaults to: $storm::backend::sanity_check_enabled)
  • service_du_enabled (Any) (defaults to: $storm::backend::service_du_enabled)
  • service_du_delay (Any) (defaults to: $storm::backend::service_du_delay)
  • service_du_interval (Any) (defaults to: $storm::backend::service_du_interval)
  • max_ls_entries (Any) (defaults to: $storm::backend::max_ls_entries)
  • gc_pinnedfiles_cleaning_delay (Any) (defaults to: $storm::backend::gc_pinnedfiles_cleaning_delay)
  • gc_pinnedfiles_cleaning_interval (Any) (defaults to: $storm::backend::gc_pinnedfiles_cleaning_interval)
  • gc_purge_enabled (Any) (defaults to: $storm::backend::gc_purge_enabled)
  • gc_purge_interval (Any) (defaults to: $storm::backend::gc_purge_interval)
  • gc_purge_size (Any) (defaults to: $storm::backend::gc_purge_size)
  • gc_expired_request_time (Any) (defaults to: $storm::backend::gc_expired_request_time)
  • gc_expired_inprogress_time (Any) (defaults to: $storm::backend::gc_expired_inprogress_time)
  • gc_ptp_transit_interval (Any) (defaults to: $storm::backend::gc_ptp_transit_interval)
  • gc_ptp_transit_start_delay (Any) (defaults to: $storm::backend::gc_ptp_transit_start_delay)
  • extraslashes_file (Any) (defaults to: $storm::backend::extraslashes_file)
  • extraslashes_root (Any) (defaults to: $storm::backend::extraslashes_root)
  • extraslashes_gsiftp (Any) (defaults to: $storm::backend::extraslashes_gsiftp)
  • db_connection_pool_enabled (Any) (defaults to: $storm::backend::db_connection_pool_enabled)
  • db_connection_pool_max_active (Any) (defaults to: $storm::backend::db_connection_pool_max_active)
  • db_connection_pool_max_wait (Any) (defaults to: $storm::backend::db_connection_pool_max_wait)
  • asynch_db_reconnect_period (Any) (defaults to: $storm::backend::asynch_db_reconnect_period)
  • asynch_db_delay_period (Any) (defaults to: $storm::backend::asynch_db_delay_period)
  • asynch_picking_initial_delay (Any) (defaults to: $storm::backend::asynch_picking_initial_delay)
  • asynch_picking_time_interval (Any) (defaults to: $storm::backend::asynch_picking_time_interval)
  • asynch_picking_max_batch_size (Any) (defaults to: $storm::backend::asynch_picking_max_batch_size)
  • requests_scheduler_core_size (Any) (defaults to: $storm::backend::requests_scheduler_core_size)
  • requests_scheduler_max_size (Any) (defaults to: $storm::backend::requests_scheduler_max_size)
  • requests_scheduler_queue_size (Any) (defaults to: $storm::backend::requests_scheduler_queue_size)
  • ptp_requests_scheduler_core_size (Any) (defaults to: $storm::backend::ptp_requests_scheduler_core_size)
  • ptp_requests_scheduler_max_size (Any) (defaults to: $storm::backend::ptp_requests_scheduler_max_size)
  • ptp_requests_scheduler_queue_size (Any) (defaults to: $storm::backend::ptp_requests_scheduler_queue_size)
  • ptg_requests_scheduler_core_size (Any) (defaults to: $storm::backend::ptg_requests_scheduler_core_size)
  • ptg_requests_scheduler_max_size (Any) (defaults to: $storm::backend::ptg_requests_scheduler_max_size)
  • ptg_requests_scheduler_queue_size (Any) (defaults to: $storm::backend::ptg_requests_scheduler_queue_size)
  • bol_requests_scheduler_core_size (Any) (defaults to: $storm::backend::bol_requests_scheduler_core_size)
  • bol_requests_scheduler_max_size (Any) (defaults to: $storm::backend::bol_requests_scheduler_max_size)
  • bol_requests_scheduler_queue_size (Any) (defaults to: $storm::backend::bol_requests_scheduler_queue_size)
  • info_config_file (Any) (defaults to: $storm::backend::info_config_file)
  • info_sitename (Any) (defaults to: $storm::backend::info_sitename)
  • info_storage_default_root (Any) (defaults to: $storm::backend::info_storage_default_root)
  • info_endpoint_quality_level (Any) (defaults to: $storm::backend::info_endpoint_quality_level)
  • jvm_options (Any) (defaults to: $storm::backend::jvm_options)
  • jmx (Any) (defaults to: $storm::backend::jmx)
  • jmx_options (Any) (defaults to: $storm::backend::jmx_options)
  • debug (Any) (defaults to: $storm::backend::debug)
  • debug_port (Any) (defaults to: $storm::backend::debug_port)
  • debug_suspend (Any) (defaults to: $storm::backend::debug_suspend)
  • lcmaps_db_file (Any) (defaults to: $storm::backend::lcmaps_db_file)
  • lcmaps_policy_name (Any) (defaults to: $storm::backend::lcmaps_policy_name)
  • lcmaps_log_file (Any) (defaults to: $storm::backend::lcmaps_log_file)
  • lcmaps_debug_level (Any) (defaults to: $storm::backend::lcmaps_debug_level)
  • http_turl_prefix (Any) (defaults to: $storm::backend::http_turl_prefix)


3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
# File 'manifests/backend/config.pp', line 3

class storm::backend::config (

  $hostname = $storm::backend::hostname,

  $install_native_libs_gpfs = $storm::backend::install_native_libs_gpfs,

  $install_mysql_and_create_database = $storm::backend::install_mysql_and_create_database,

  $db_root_password = $storm::backend::db_root_password,
  $db_storm_username = $storm::backend::db_storm_username,
  $db_storm_password = $storm::backend::db_storm_password,

  $xroot_hostname = $storm::backend::xroot_hostname,
  $xroot_port = $storm::backend::xroot_port,

  $gsiftp_pool_members = $storm::backend::gsiftp_pool_members,
  $gsiftp_pool_balance_strategy = $storm::backend::gsiftp_pool_balance_strategy,
  $webdav_pool_members = $storm::backend::webdav_pool_members,
  $srm_pool_members = $storm::backend::srm_pool_members,
  $transfer_protocols = $storm::backend::transfer_protocols,
  $fs_type = $storm::backend::fs_type,

  $storage_areas = $storm::backend::storage_areas,

  $frontend_public_host = $storm::backend::frontend_public_host,
  $frontend_port = $storm::backend::frontend_port,

  $directory_automatic_creation = $storm::backend::directory_automatic_creation,
  $directory_writeperm = $storm::backend::directory_writeperm,

  $rest_services_port = $storm::backend::rest_services_port,
  $rest_services_max_threads = $storm::backend::rest_services_max_threads,
  $rest_services_max_queue_size = $storm::backend::rest_services_max_queue_size,

  $xmlrpc_unsecure_server_port = $storm::backend::xmlrpc_unsecure_server_port,
  $xmlrpc_maxthread = $storm::backend::xmlrpc_maxthread,
  $xmlrpc_max_queue_size = $storm::backend::xmlrpc_max_queue_size,
  $xmlrpc_security_enabled = $storm::backend::xmlrpc_security_enabled,
  $xmlrpc_security_token = $storm::backend::xmlrpc_security_token,

  $ptg_skip_acl_setup = $storm::backend::ptg_skip_acl_setup,

  $pinlifetime_default = $storm::backend::pinlifetime_default,
  $pinlifetime_maximum = $storm::backend::pinlifetime_maximum,

  $sanity_check_enabled = $storm::backend::sanity_check_enabled,

  $service_du_enabled = $storm::backend::service_du_enabled,
  $service_du_delay = $storm::backend::service_du_delay,
  $service_du_interval = $storm::backend::service_du_interval,

  $max_ls_entries = $storm::backend::max_ls_entries,

  $gc_pinnedfiles_cleaning_delay = $storm::backend::gc_pinnedfiles_cleaning_delay,
  $gc_pinnedfiles_cleaning_interval = $storm::backend::gc_pinnedfiles_cleaning_interval,

  $gc_purge_enabled = $storm::backend::gc_purge_enabled,
  $gc_purge_interval = $storm::backend::gc_purge_interval,
  $gc_purge_size = $storm::backend::gc_purge_size,
  $gc_expired_request_time = $storm::backend::gc_expired_request_time,
  $gc_expired_inprogress_time = $storm::backend::gc_expired_inprogress_time,
  $gc_ptp_transit_interval = $storm::backend::gc_ptp_transit_interval,
  $gc_ptp_transit_start_delay = $storm::backend::gc_ptp_transit_start_delay,

  $extraslashes_file = $storm::backend::extraslashes_file,
  $extraslashes_root = $storm::backend::extraslashes_root,
  $extraslashes_gsiftp = $storm::backend::extraslashes_gsiftp,

  $db_connection_pool_enabled = $storm::backend::db_connection_pool_enabled,
  $db_connection_pool_max_active = $storm::backend::db_connection_pool_max_active,
  $db_connection_pool_max_wait = $storm::backend::db_connection_pool_max_wait,

  $asynch_db_reconnect_period = $storm::backend::asynch_db_reconnect_period,
  $asynch_db_delay_period = $storm::backend::asynch_db_delay_period,
  $asynch_picking_initial_delay = $storm::backend::asynch_picking_initial_delay,
  $asynch_picking_time_interval = $storm::backend::asynch_picking_time_interval,
  $asynch_picking_max_batch_size = $storm::backend::asynch_picking_max_batch_size,

  $requests_scheduler_core_size = $storm::backend::requests_scheduler_core_size,
  $requests_scheduler_max_size = $storm::backend::requests_scheduler_max_size,
  $requests_scheduler_queue_size = $storm::backend::requests_scheduler_queue_size,
  $ptp_requests_scheduler_core_size = $storm::backend::ptp_requests_scheduler_core_size,
  $ptp_requests_scheduler_max_size = $storm::backend::ptp_requests_scheduler_max_size,
  $ptp_requests_scheduler_queue_size = $storm::backend::ptp_requests_scheduler_queue_size,
  $ptg_requests_scheduler_core_size = $storm::backend::ptg_requests_scheduler_core_size,
  $ptg_requests_scheduler_max_size = $storm::backend::ptg_requests_scheduler_max_size,
  $ptg_requests_scheduler_queue_size = $storm::backend::ptg_requests_scheduler_queue_size,
  $bol_requests_scheduler_core_size = $storm::backend::bol_requests_scheduler_core_size,
  $bol_requests_scheduler_max_size = $storm::backend::bol_requests_scheduler_max_size,
  $bol_requests_scheduler_queue_size = $storm::backend::bol_requests_scheduler_queue_size,

  $info_config_file = $storm::backend::info_config_file,
  $info_sitename = $storm::backend::info_sitename,
  $info_storage_default_root = $storm::backend::info_storage_default_root,
  $info_endpoint_quality_level = $storm::backend::info_endpoint_quality_level,

  $jvm_options = $storm::backend::jvm_options,

  $jmx = $storm::backend::jmx,
  $jmx_options = $storm::backend::jmx_options,

  $debug = $storm::backend::debug,
  $debug_port = $storm::backend::debug_port,
  $debug_suspend = $storm::backend::debug_suspend,

  $lcmaps_db_file = $storm::backend::lcmaps_db_file,
  $lcmaps_policy_name = $storm::backend::lcmaps_policy_name,
  $lcmaps_log_file = $storm::backend::lcmaps_log_file,
  $lcmaps_debug_level = $storm::backend::lcmaps_debug_level,

  $http_turl_prefix = $storm::backend::http_turl_prefix,

) {

  # Service's host credentials directory
  if !defined(File['/etc/grid-security/storm']) {
    file { '/etc/grid-security/storm':
      ensure  => directory,
      owner   => 'storm',
      group   => 'storm',
      mode    => '0755',
      recurse => true,
    }
    # Service's hostcert
    file { '/etc/grid-security/storm/hostcert.pem':
      ensure  => present,
      mode    => '0644',
      owner   => 'storm',
      group   => 'storm',
      source  => '/etc/grid-security/hostcert.pem',
      require => File['/etc/grid-security/storm'],
    }
    # Service's hostkey
    file { '/etc/grid-security/storm/hostkey.pem':
      ensure  => present,
      mode    => '0400',
      owner   => 'storm',
      group   => 'storm',
      source  => '/etc/grid-security/hostkey.pem',
      require => File['/etc/grid-security/storm'],
    }
  }

  $namespace_file='/etc/storm/backend-server/namespace.xml'
  $properties_file='/etc/storm/backend-server/storm.properties'

  if $install_mysql_and_create_database {
    class { 'storm::db':
      fqdn_hostname  => $hostname,
      storm_username => $db_storm_username,
      storm_password => $db_storm_password,
      root_password  => $db_root_password,
      notify         => Service['storm-backend-server'],
      before         => [File[$namespace_file], File[$properties_file]],
    }
  }

  $namespace_template_file='storm/etc/storm/backend-server/namespace.xml.erb'

  file { $namespace_file:
    ensure  => present,
    content => template($namespace_template_file),
    owner   => 'root',
    group   => 'storm',
    notify  => [Service['storm-backend-server']],
  }

  $properties_template_file='storm/etc/storm/backend-server/storm.properties.erb'

  file { $properties_file:
    ensure  => present,
    content => template($properties_template_file),
    owner   => 'root',
    group   => 'storm',
    notify  => [Service['storm-backend-server']],
  }

  $service_dir='/etc/systemd/system/storm-backend-server.service.d'

  file { $service_dir:
    ensure => directory,
    owner  => 'root',
    group  => 'root',
    mode   => '0644',
  }

  $service_file='/etc/systemd/system/storm-backend-server.service.d/storm-backend-server.conf'
  $service_template_file='storm/etc/systemd/system/storm-backend-server.service.d/storm-backend-server.conf.erb'

  file { $service_file:
    ensure  => present,
    content => template($service_template_file),
    mode    => '0644',
    owner   => 'root',
    group   => 'root',
    notify  => [Exec['backend-daemon-reload'], Service['storm-backend-server']],
    require => [File[$service_dir]],
  }

  $info_yaim_template_file='storm/etc/storm/info-provider/storm-yaim-variables.conf.erb'

  file { $info_config_file:
    ensure  => present,
    content => template($info_yaim_template_file),
    owner   => 'root',
    group   => 'storm',
    notify  => [Exec['configure-info-provider']],
  }
}