Puppet Class: mongodb::mongos::service
- Defined in:
- manifests/mongos/service.pp
Overview
PRIVATE CLASS: do not call directly
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 |
# File 'manifests/mongos/service.pp', line 2
class mongodb::mongos::service (
$service_manage = $mongodb::mongos::service_manage,
$service_name = $mongodb::mongos::service_name,
$service_enable = $mongodb::mongos::service_enable,
$service_ensure = $mongodb::mongos::service_ensure,
$service_status = $mongodb::mongos::service_status,
$service_provider = $mongodb::mongos::service_provider,
$bind_ip = $mongodb::mongos::bind_ip,
$port = $mongodb::mongos::port,
) {
$service_ensure_real = $service_ensure ? {
'absent' => false,
'purged' => false,
'stopped' => false,
default => true
}
if $port {
$port_real = $port
} else {
$port_real = '27017'
}
if $bind_ip == '0.0.0.0' {
$bind_ip_real = '127.0.0.1'
} else {
$bind_ip_real = $bind_ip
}
if $service_manage {
if $::osfamily == 'RedHat' {
file { '/etc/sysconfig/mongos' :
ensure => file,
owner => 'root',
group => 'root',
mode => '0755',
content => 'OPTIONS="--quiet -f /etc/mongodb-shard.conf"',
before => Service['mongos'],
}
}
file { '/etc/init.d/mongos' :
ensure => file,
content => template("mongodb/mongos/${::osfamily}/mongos.erb"),
owner => 'root',
group => 'root',
mode => '0755',
before => Service['mongos'],
}
service { 'mongos':
ensure => $service_ensure_real,
name => $service_name,
enable => $service_enable,
provider => $service_provider,
hasstatus => true,
status => $service_status,
}
if $service_ensure_real {
mongodb_conn_validator { 'mongos':
server => $bind_ip_real,
port => $port_real,
timeout => '240',
require => Service['mongos'],
}
}
}
}
|