Puppet Class: fhgfs::client
- Inherits:
- fhgfs
- Defined in:
- manifests/client.pp
Overview
Class: fhgfs::client
This module manages FhGFS client
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 |
# File 'manifests/client.pp', line 5
class fhgfs::client (
$user = $fhgfs::user,
$group = $fhgfs::group,
$package_ensure = $fhgfs::package_ensure,
$kernel_ensure = present,
$interfaces = ['eth0'],
$interfaces_file = '/etc/fhgfs/client.interfaces',
$log_level = 3,
$mgmtd_host = hiera('fhgfs::mgmtd_host', $fhgfs::mgmtd_host),
$mgmtd_tcp_port = 8008,
$mgmtd_udp_port = 8008,
) inherits fhgfs {
require fhgfs::install
validate_array($interfaces)
anchor { 'fhgfs::kernel_dev' : }
case $::osfamily {
Debian: {
ensure_resource('package', 'kernel-package', {
'ensure' => $kernel_ensure,
'before' => Anchor['fhgfs::kernel_dev']
}
)
# we need current linux headers for building client module
ensure_resource('package', 'linux-headers-generic', {
'ensure' => 'present',
'before' => Anchor['fhgfs::kernel_dev']
}
)
}
RedHat: {
ensure_resource('package', 'kernel-devel', {
'ensure' => $kernel_ensure,
'before' => Anchor['fhgfs::kernel_dev']
}
)
}
default: {
fail("OS Family '${::osfamily}' is not supported yet")
}
}
file { $interfaces_file:
ensure => present,
owner => $user,
group => $group,
mode => '0755',
content => template('fhgfs/interfaces.erb'),
}
file { '/etc/fhgfs/fhgfs-client.conf':
ensure => present,
owner => $user,
group => $group,
mode => '0755',
require => [
Package['fhgfs-utils'],
File[$interfaces_file],
],
content => template('fhgfs/fhgfs-client.conf.erb'),
}
package { 'fhgfs-helperd':
ensure => $package_ensure,
}
package { 'fhgfs-client':
ensure => $package_ensure,
require => Anchor['fhgfs::kernel_dev'],
}
service { 'fhgfs-helperd':
ensure => running,
enable => true,
hasstatus => true,
hasrestart => true,
require => Package['fhgfs-helperd'],
}
file { '/etc/fhgfs/fhgfs-mounts.conf':
ensure => present,
owner => $user,
group => $group,
mode => '0755',
require => Package['fhgfs-client'],
}
service { 'fhgfs-client':
ensure => running,
enable => true,
hasstatus => true,
hasrestart => true,
require => [
Package['fhgfs-client'],
Service['fhgfs-helperd'],
File['/etc/fhgfs/fhgfs-mounts.conf'],
File[$interfaces_file],
],
subscribe => [
File['/etc/fhgfs/fhgfs-mounts.conf'],
File[$interfaces_file],
],
}
}
|