|
9 | 9 | tags => ['exporter'], |
10 | 10 | } |
11 | 11 |
|
12 | | - file { '/var/lib/node_exporter': |
13 | | - ensure => directory, |
14 | | - owner => 'node-exporter', |
15 | | - group => 'node-exporter', |
16 | | - mode => '0775', |
| 12 | + # Adding 'mc_bootstrap' to User/Group['node-exporter'] makes sure the |
| 13 | + # puppet user is added to the 'node-exporter' group during the bootstrap |
| 14 | + # phase of the puppetserver, therefore preventing the puppetserver to |
| 15 | + # restart while it serves catalog to other instances. |
| 16 | + User <| title == 'node-exporter' |> { |
| 17 | + tag +> 'mc_bootstrap' |
| 18 | + } |
| 19 | + Group <| title == 'node-exporter' |> { |
| 20 | + tag +> 'mc_bootstrap' |
17 | 21 | } |
18 | 22 |
|
19 | 23 | # In cases where the puppet user exists, we add it to |
|
23 | 27 | # the group of /var/lib/node_exporter is changed from puppet to |
24 | 28 | # node-exporter. Otherwise, we risk not being able to write reports |
25 | 29 | User <| title == 'puppet' |> { |
26 | | - groups +> 'node-exporter', |
27 | | - before => File['/var/lib/node_exporter'] |
| 30 | + groups +> 'node-exporter', |
| 31 | + before => File['/var/lib/node_exporter'], |
| 32 | + tag +> 'mc_bootstrap', |
| 33 | + require +> Group['node-exporter'], |
| 34 | + } |
| 35 | + |
| 36 | + file { '/var/lib/node_exporter': |
| 37 | + ensure => directory, |
| 38 | + owner => 'node-exporter', |
| 39 | + group => 'node-exporter', |
| 40 | + mode => '0775', |
| 41 | + require => [ |
| 42 | + User['node-exporter'], |
| 43 | + Group['node-exporter'], |
| 44 | + ], |
| 45 | + tag => ['mc_bootstrap'], |
28 | 46 | } |
29 | 47 | } |
30 | 48 |
|
|
0 commit comments