Puppet Class: scaleio::mdm::primary
- Defined in:
- manifests/mdm/primary.pp
Overview
setup a primary mdm
2 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 |
# File 'manifests/mdm/primary.pp', line 2
class scaleio::mdm::primary {
$scli_wrap = $scaleio::mdm::scli_wrap
include scaleio::mdm::cluster_setup
include scaleio::mdm::resources
# First do the cluster setup, then create the SIO resources
Class['scaleio::mdm::cluster_setup'] -> Class['scaleio::mdm::resources']
# Set SIO system name
if $scaleio::system_name {
validate_re($scaleio::system_name, '^[a-z0-9-]+$', 'ScaleIO system name must be alphanumeric')
exec{ 'scaleio::mdm::primary::rename_system':
command => "${scli_wrap} --rename_system --new_name ${scaleio::system_name}",
unless => "${scli_wrap} --query_cluster | grep -qE '^\\s*Name: ${scaleio::system_name},?\\s*Mode'",
require => Class['scaleio::mdm::cluster_setup'],
}
}
# manage SDC restriction mode
if $::scaleio::restricted_sdc_mode{
$restricted_sdc_mode_text = 'enabled'
} else{
$restricted_sdc_mode_text = 'disabled'
}
exec{ 'scaleio::mdm::primary::manage_sdc_access_restriction':
command => "${scli_wrap} --set_restricted_sdc_mode --restricted_sdc_mode ${restricted_sdc_mode_text}",
unless => "${scli_wrap} --query_all |grep -q 'MDM restricted SDC mode: ${restricted_sdc_mode_text}'",
require => Class['scaleio::mdm::cluster_setup'],
before => Class['scaleio::mdm::resources'],
}
# manage component authentication mode
if $::scaleio::component_authentication_mode{
$component_authentication_mode_text = '--use_authentication'
$component_authentication_mode_result = 'Enabled'
} else{
$component_authentication_mode_text = '--dont_use_authentication'
$component_authentication_mode_result = 'Disabled'
}
exec{ 'scaleio::mdm::primary::manage_component_authentication':
command => "${scli_wrap} --set_component_authentication_properties ${component_authentication_mode_text} --i_am_sure",
unless => "${scli_wrap} --query_all |grep -q 'SDS connection authentication: ${component_authentication_mode_result}'",
require => Class['scaleio::mdm::cluster_setup'],
before => Class['scaleio::mdm::resources'],
}
# Create a monitoring user
if $scaleio::monitoring_user {
scaleio_user{ $scaleio::monitoring_user:
role => 'Monitor',
password => $scaleio::monitoring_passwd,
require => Class['scaleio::mdm::cluster_setup'],
}
}
# Setup Syslog
if $scaleio::syslog_ip_port {
validate_re($scaleio::syslog_ip_port, '^[\w\-\.]+:[0-9]+$', 'ScaleIO syslog_ip_port must be formatted as: IP:port or hostname:port')
$splitted_ip_port = split($scaleio::syslog_ip_port,':')
scaleio_syslog{ $splitted_ip_port[0]:
port => $splitted_ip_port[1],
require => Class['scaleio::mdm::cluster_setup'],
}
}
}
|