]> git.openstreetmap.org Git - chef.git/blob - roles/vial.rb
Specify database for osm2pgsql on rendering servers
[chef.git] / roles / vial.rb
1 name "vial"
2 description "Master role applied to vial"
3
4 default_attributes(
5   :apt => {
6     :sources => ["postgresql"]
7   },
8   :devices => {
9     :ssd_samsung => {
10       :comment => "Tune scheduler for SSD",
11       :type => "block",
12       :bus => "ata",
13       :serial => "SAMSUNG_MZ7LM960HCHP-*",
14       :attrs => {
15         "queue/scheduler" => "noop",
16         "queue/nr_requests" => "256",
17         "queue/read_ahead_kb" => "2048"
18       }
19     }
20   },
21   :networking => {
22     :interfaces => {
23       :external_ipv4 => {
24         :interface => "eth0",
25         :role => :external,
26         :family => :inet,
27         :address => "138.201.195.31",
28         :prefix => "26",
29         :gateway => "138.201.195.1"
30       },
31       :external_ipv6 => {
32         :interface => "eth0",
33         :role => :external,
34         :family => :inet6,
35         :address => "2a01:4f8:172:3cde::2",
36         :prefix => "64",
37         :gateway => "fe80::1"
38       }
39     }
40   },
41   :postgresql => {
42     :versions => ["9.5"],
43     :settings => {
44       :defaults => {
45         :shared_buffers => "8GB",
46         :maintenance_work_mem => "7144MB",
47         :effective_cache_size => "16GB"
48       }
49     }
50   },
51   :sysctl => {
52     :postgres => {
53       :comment => "Increase shared memory for postgres",
54       :parameters => {
55         "kernel.shmmax" => 9 * 1024 * 1024 * 1024,
56         "kernel.shmall" => 9 * 1024 * 1024 * 1024 / 4096
57       }
58     }
59   },
60   :tile => {
61     :database => {
62       :cluster => "9.5/main"
63     },
64     :node_file => "/store/database/nodes",
65     :styles => {
66       :default => {
67         :tile_directories => [
68           { :name => "/store/tiles/default", :min_zoom => 0, :max_zoom => 19 }
69         ]
70       }
71     }
72   }
73 )
74
75 run_list(
76   "role[hetzner]",
77   "role[tile]"
78 )