Puppet Class: fhgfs::storage

Inherits:
fhgfs
Defined in:
manifests/storage.pp

Overview

Class: fhgfs::storage

This module manages FhGFS storage service

Parameters:

  • enable (Any) (defaults to: true)
  • storage_directory (Any) (defaults to: $fhgfs::storage_directory)
  • mgmtd_host (Any) (defaults to: $fhgfs::mgmtd_host)
  • log_dir (Any) (defaults to: $fhgfs::log_dir)
  • log_level (Any) (defaults to: 3)
  • user (Any) (defaults to: $fhgfs::user)
  • group (Any) (defaults to: $fhgfs::group)
  • package_ensure (Any) (defaults to: $fhgfs::package_ensure)
  • interfaces (Any) (defaults to: ['eth0'])
  • interfaces_file (Any) (defaults to: '/etc/fhgfs/storage.interfaces')


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
# File 'manifests/storage.pp', line 5

class fhgfs::storage (
  $enable            = true,
  $storage_directory = $fhgfs::storage_directory,
  $mgmtd_host        = $fhgfs::mgmtd_host,
  $log_dir           = $fhgfs::log_dir,
  $log_level         = 3,
  $user              = $fhgfs::user,
  $group             = $fhgfs::group,
  $package_ensure    = $fhgfs::package_ensure,
  $interfaces        = ['eth0'],
  $interfaces_file   = '/etc/fhgfs/storage.interfaces',
) inherits fhgfs {

  require fhgfs::install
  validate_array($interfaces)

  package { 'fhgfs-storage':
    ensure => $package_ensure,
  }

  file { $storage_directory:
    ensure  => directory,
    owner   => $user,
    group   => $group,
    recurse => true,
  }

  file { $interfaces_file:
    ensure => present,
    owner   => $user,
    group   => $group,
    mode    => '0755',
    content => template('fhgfs/interfaces.erb'),
  }

  file { '/etc/fhgfs/fhgfs-storage.conf':
    ensure  => present,
    owner   => $user,
    group   => $group,
    mode    => '0755',
    content => template('fhgfs/fhgfs-storage.conf.erb'),
    require => [
      File["$interfaces_file"],
      Package['fhgfs-storage'],
    ],
  }

  service { 'fhgfs-storage':
    ensure    => running,
    enable    => $enable,
    hasstatus  => true,
    hasrestart => true,
    require   => Package['fhgfs-storage'],
    subscribe => [
      File['/etc/fhgfs/fhgfs-storage.conf'],
      File["$interfaces_file"],
    ],
  }
}