Puppet Class: keepalived::config

Defined in:
manifests/config.pp

Summary

Configure keepalived module

Overview



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

class keepalived::config {
  File {
    ensure  => present,
    require => Class['keepalived::install'],
    owner   => $keepalived::config_owner,
    group   => $keepalived::config_group,
  }

  if $keepalived::service_manage == true {
    Concat {
      notify  => Service[$keepalived::service_name],
    }
  }

  file { "/etc/${keepalived::sysconf_dir}/keepalived":
    ensure  => file,
    owner   => 0,
    group   => 0,
    mode    => '0644',
    content => template("keepalived/keepalived.${keepalived::sysconf_dir}.erb"),
  }

  file { $keepalived::config_dir:
    ensure => directory,
    group  => $keepalived::config_group,
    mode   => $keepalived::config_dir_mode,
    owner  => $keepalived::config_owner,
  }

  concat { "${keepalived::config_dir}/keepalived.conf":
    owner => $keepalived::config_owner,
    group => $keepalived::config_group,
    mode  => $keepalived::config_file_mode,
  }

  concat::fragment { 'keepalived.conf_header':
    target  => "${keepalived::config_dir}/keepalived.conf",
    content => "# Managed by Puppet\n",
    order   => '001',
  }

  concat::fragment { 'keepalived.conf_include_external_configs':
    target  => "${keepalived::config_dir}/keepalived.conf",
    content => epp('keepalived/include-external-configs.epp',
      {
        'include_external_conf_files' => $keepalived::include_external_conf_files,
      },
    ),
    order   => '998',
  }

  concat::fragment { 'keepalived.conf_footer':
    target  => "${keepalived::config_dir}/keepalived.conf",
    content => "\n",
    order   => '999',
  }

  $keepalived::vrrp_instance.each |String $key, Hash $attrs| {
    keepalived::vrrp::instance { $key:
      * => $attrs,
    }
  }
  $keepalived::vrrp_script.each |String $key, Hash $attrs| {
    keepalived::vrrp::script { $key:
      * => $attrs,
    }
  }
  $keepalived::vrrp_track_process.each |String $key, Hash $attrs| {
    keepalived::vrrp::track_process { $key:
      * => $attrs,
    }
  }
  $keepalived::vrrp_sync_group.each |String $key, Hash $attrs| {
    keepalived::vrrp::sync_group { $key:
      * => $attrs,
    }
  }
  $keepalived::lvs_real_server.each |String $key, Hash $attrs| {
    keepalived::lvs::real_server { $key:
      * => $attrs,
    }
  }
  $keepalived::lvs_virtual_server.each |String $key, Hash $attrs| {
    keepalived::lvs::virtual_server { $key:
      * => $attrs,
    }
  }
}