Add roles from the private repository
[chef.git] / roles / horntail.rb
1 name "horntail"
2 description "Master role applied to horntail"
3
4 default_attributes(
5   :accounts => {
6     :users => {
7       :gravitystorm => { :status => :user }
8     }
9   },
10   :munin => {
11     :plugins => {
12       :ipmi_fans => {
13         :FAN1 => { :graph => "no" },
14         :FAN2 => { :graph => "no" },
15         :FAN3 => { :graph => "no" },
16         :FAN4 => { :graph => "no" },
17         :FAN5 => { :graph => "no" }
18       },
19       :sensors_fan => {
20         :fan1 => { :graph => "no" },
21         :fan2 => { :graph => "no" },
22         :fan3 => { :graph => "no" },
23         :fan4 => { :graph => "no" },
24         :fan5 => { :graph => "no" },
25         :fan6 => { :graph => "no" },
26         :fan9 => { :graph => "no" },
27         :fan10 => { :graph => "no" }
28       },
29       :sensors_volt => {
30         :contacts => "null",
31         :volt1 => {
32           :warning => "1.316:1.484",
33           :critical => "1.26:1.54"
34         },
35         :volt3 => {
36           :warning => "1.1:2.0",
37           :critical => "1.0:3.0"
38         },
39          :volt4 => {
40           :warning => "11.0:13.0",
41           :critical => "10.5:13.5"
42         }
43       }
44     }
45   },
46   :networking => {
47     :interfaces => {
48       :external_ipv4 => {
49         :interface => "eth0",
50         :role => :external,
51         :family => :inet,
52         :address => "193.63.75.101"
53       },
54       :external_ipv6 => {
55         :interface => "eth0",
56         :role => :external,
57         :family => :inet6,
58         :address => "2001:630:12:500:202:b3ff:feec:eeac"
59       },
60       :internal_ipv4 => {
61         :interface => "eth1",
62         :role => :internal,
63         :family => :inet,
64         :address => "146.179.159.164"
65       }
66     }
67   },
68   :openvpn => {
69     :address => "10.0.16.2",
70     :tunnels => {
71       :ic2ucl => {
72         :port => "1194",
73         :mode => "server",
74         :peer => {
75           :host => "ridley.openstreetmap.org"
76         }
77       }
78     }
79   },
80   :rsyncd => {
81     :modules => {
82       :hosts => {
83         :comment => "Host data",
84         :path => "/home/hosts",
85         :read_only => true,
86         :write_only => false,
87         :list => false,
88         :uid => "tomh",
89         :gid => "tomh",
90         :transfer_logging => false,
91         :hosts_allow => [ 
92           "89.16.179.150",                       # shenron
93           "2001:41c8:10:996:21d:7dff:fec3:df70", # shenron
94           "212.159.112.221"                      # grant
95         ]
96       },
97       :logs => {
98         :comment => "Log files",
99         :path => "/store/logs",
100         :read_only => false,
101         :write_only => true,
102         :list => false,
103         :uid => "www-data",
104         :gid => "www-data",
105         :transfer_logging => false,
106         :hosts_allow => [
107           "128.40.168.0/24",      # ucl external
108           "146.179.159.160/27",   # ic internal
109           "193.63.75.96/27",      # ic external
110           "2001:630:12:500::/64", # ic external
111           "127.0.0.0/8",          # localhost
112           "::1"                   # localhost
113         ]
114       },
115       :backup => {
116         :comment => "Backups",
117         :path => "/store/backup",
118         :read_only => false,
119         :write_only => true,
120         :list => false,
121         :uid => "osmbackup",
122         :gid => "osmbackup",
123         :transfer_logging => false,
124         :hosts_allow => [
125           "128.40.168.0/24",      # ucl external
126           "146.179.159.160/27",   # ic internal
127           "193.63.75.96/27",      # ic external
128           "2001:630:12:500::/64", # ic external
129           "127.0.0.0/8",          # localhost
130           "::1"                   # localhost
131         ]
132       }
133     }
134   }
135 );
136
137 run_list(
138   "role[ic]",
139   "role[gateway]",
140   "role[chef-server]",
141   "role[chef-repository]",
142   "role[planet]",
143   "role[web-storage]",
144   "recipe[rsyncd]",
145   "recipe[openvpn]"
146 )