]> git.openstreetmap.org Git - chef.git/blob - roles/odin.rb
Configure wal_level on database slaves
[chef.git] / roles / odin.rb
1 name "odin"
2 description "Master role applied to odin"
3
4 default_attributes(
5   :networking => {
6     :interfaces => {
7       :internal_ipv4 => {
8         :interface => "bond0",
9         :role => :internal,
10         :family => :inet,
11         :address => "10.0.48.15",
12         :bond => {
13           :mode => "802.3ad",
14           :lacprate => "fast",
15           :xmithashpolicy => "layer3+4",
16           :slaves => %w[eno1 eno2]
17         }
18       },
19       :external_ipv4 => {
20         :interface => "bond0.2",
21         :role => :external,
22         :family => :inet,
23         :address => "130.117.76.15"
24       },
25       :external_ipv6 => {
26         :interface => "bond0.2",
27         :role => :external,
28         :family => :inet6,
29         :address => "2001:978:2:2C::172:F"
30       }
31     }
32   },
33   :postgresql => {
34     :settings => {
35       :defaults => {
36         :shared_buffers => "8GB",
37         :maintenance_work_mem => "7144MB",
38         :effective_cache_size => "16GB"
39       }
40     }
41   },
42   :sysctl => {
43     :postgres => {
44       :comment => "Increase shared memory for postgres",
45       :parameters => {
46         "kernel.shmmax" => 9 * 1024 * 1024 * 1024,
47         "kernel.shmall" => 9 * 1024 * 1024 * 1024 / 4096
48       }
49     }
50   },
51   :tile => {
52     :database => {
53       :cluster => "14/main",
54       :postgis => "3"
55     },
56     :mapnik => "3.1",
57     :styles => {
58       :default => {
59         :tile_directories => [
60           { :name => "/store/tiles/default", :min_zoom => 0, :max_zoom => 19 }
61         ]
62       }
63     }
64   }
65 )
66
67 run_list(
68   "role[equinix-ams]",
69   "role[tile]"
70 )