]> git.openstreetmap.org Git - chef.git/blob - roles/ironbelly.rb
Remove support for rsyncing old hosts data
[chef.git] / roles / ironbelly.rb
1 name "ironbelly"
2 description "Master role applied to ironbelly"
3
4 default_attributes(
5   :apt => {
6     :sources => ["ubuntugis-unstable"]
7   },
8   :bind => {
9     :clients => "equinix-ams"
10   },
11   :dhcpd => {
12     :first_address => "10.0.63.1",
13     :last_address => "10.0.63.254"
14   },
15   :elasticsearch => {
16     :cluster => {
17       :routing => {
18         :allocation => {
19           :disk => {
20             :watermark => {
21               :low => "95%",
22               :high => "98%",
23               :flood_stage => "99%"
24             }
25           }
26         }
27       }
28     },
29     :path => {
30       :data => "/store/elasticsearch"
31     }
32   },
33   :networking => {
34     :interfaces => {
35       :internal_ipv4 => {
36         :interface => "bond0",
37         :role => :internal,
38         :family => :inet,
39         :address => "10.0.48.10",
40         :bond => {
41           :slaves => %w[eth0 eth1]
42         }
43       },
44       :external_ipv4 => {
45         :interface => "bond0.2",
46         :role => :external,
47         :family => :inet,
48         :address => "130.117.76.10"
49       },
50       :external_ipv6 => {
51         :interface => "bond0.2",
52         :role => :external,
53         :family => :inet6,
54         :address => "2001:978:2:2C::172:A"
55       }
56     }
57   },
58   :planet => {
59     :replication => "enabled"
60   },
61   :prometheus => {
62     :snmp => {
63       "pdu1" => { :address => "10.0.48.100", :modules => %w[apcups], :labels => { "site" => "amsterdam" } },
64       "pdu2" => { :address => "10.0.48.101", :modules => %w[apcups], :labels => { "site" => "amsterdam" } },
65       "switch1" => { :address => "130.117.76.2", :modules => %w[if_mib cisco_550x], :labels => { "site" => "amsterdam" } }
66     },
67     :metrics => {
68       :uplink_interface => {
69         :help => "Site uplink interface name",
70         :labels => { :site => "amsterdam", :name => "te[12]/0/1" }
71       }
72     }
73   },
74   :rsyncd => {
75     :modules => {
76       :logs => {
77         :comment => "Log files",
78         :path => "/store/logs",
79         :read_only => false,
80         :write_only => true,
81         :list => false,
82         :uid => "www-data",
83         :gid => "www-data",
84         :transfer_logging => false,
85         :hosts_allow => [
86           "193.60.236.0/24",          # ucl external
87           "10.0.48.0/20",             # amsterdam internal
88           "130.117.76.0/27",          # amsterdam external
89           "2001:978:2:2C::172:0/112", # amsterdam external
90           "10.0.64.0/20",             # dublin internal
91           "184.104.226.96/27",        # dublin external
92           "2001:470:1:b3b::/64",      # dublin external
93           "10.0.32.0/20",             # bytemark internal
94           "89.16.162.16/28",          # bytemark external
95           "2001:41c9:2:d6::/64",      # bytemark external
96           "127.0.0.0/8",              # localhost
97           "::1"                       # localhost
98         ]
99       }
100     }
101   }
102 )
103
104 run_list(
105   "role[equinix-ams]",
106   "role[gateway]",
107   "role[supybot]",
108   "role[backup]",
109   "role[planet]",
110   "role[planetdump]",
111   "recipe[rsyncd]",
112   "recipe[dhcpd]",
113   "recipe[tilelog]"
114 )