1 |
package { bind: |
2 |
ensure => installed |
3 |
} |
4 |
|
5 |
service { named: |
6 |
ensure => running, |
7 |
path => "/etc/init.d/named", |
8 |
subscribe => [ Package["bind"]] |
9 |
} |
10 |
|
11 |
file { '/etc/named.conf': |
12 |
ensure => present, |
13 |
owner => root, |
14 |
group => root, |
15 |
mode => 644, |
16 |
require => Package["bind"], |
17 |
content => "", |
18 |
notify => [Service['named']] |
19 |
} |
20 |
|
21 |
define zone_master { |
22 |
file { "/var/lib/named/var/named/master/$name.zone": |
23 |
ensure => present, |
24 |
owner => root, |
25 |
group => root, |
26 |
mode => 644, |
27 |
content => template("bind/zones/$name.zone"), |
28 |
require => Package[bind], |
29 |
notify => Service[named] |
30 |
} |
31 |
} |
32 |
|
33 |
class bind_master inherits bind_base { |
34 |
file { '/etc/named.conf': |
35 |
content => template("bind/named_base.conf", "bind/named_master.conf"), |
36 |
} |
37 |
} |
38 |
|
39 |
class bind_slave inherits bind_base { |
40 |
file { '/etc/named.conf': |
41 |
content => template("bind/named_base.conf", "bind/named_slave.conf"), |
42 |
} |
43 |
} |
44 |
|
45 |
|