]> git.openstreetmap.org Git - chef.git/blob - roles/odin.rb
9b7975aafeb7d22da9decbf4f9981e8b732f5f2f
[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           :slaves => %w[eno1 eno2]
14         }
15       },
16       :external_ipv4 => {
17         :interface => "bond0.2",
18         :role => :external,
19         :family => :inet,
20         :address => "130.117.76.15"
21       },
22       :external_ipv6 => {
23         :interface => "bond0.2",
24         :role => :external,
25         :family => :inet6,
26         :address => "2001:978:2:2C::172:F"
27       }
28     }
29   },
30   :postgresql => {
31     :versions => ["10"],
32     :settings => {
33       :defaults => {
34         :shared_buffers => "8GB",
35         :maintenance_work_mem => "7144MB",
36         :effective_cache_size => "16GB"
37       }
38     }
39   },
40   :sysctl => {
41     :postgres => {
42       :comment => "Increase shared memory for postgres",
43       :parameters => {
44         "kernel.shmmax" => 9 * 1024 * 1024 * 1024,
45         "kernel.shmall" => 9 * 1024 * 1024 * 1024 / 4096
46       }
47     }
48   },
49   :tile => {
50     :database => {
51       :cluster => "10/main",
52       :postgis => "2.4"
53     },
54     :node_file => "/store/database/nodes",
55     :styles => {
56       :default => {
57         :tile_directories => [
58           { :name => "/store/tiles/default", :min_zoom => 0, :max_zoom => 19 }
59         ]
60       }
61     }
62   }
63 )
64
65 run_list(
66   "role[equinix]",
67   "role[tile]"
68 )