]> git.openstreetmap.org Git - chef.git/blob - roles/scorch.rb
5c400300b7802ef86fe1ce723a966105179bbb93
[chef.git] / roles / scorch.rb
1 name "scorch"
2 description "Master role applied to scorch"
3
4 default_attributes(
5   :apt => {
6     :sources => ["postgresql"]
7   },
8   :devices => {
9     :ssd_system => {
10       :comment => "Tune scheduler for system disk",
11       :type => "block",
12       :bus => "scsi",
13       :serial => "3600605b009bbf5601fc3206407a43546",
14       :attrs => {
15         "queue/scheduler" => "noop",
16         "queue/nr_requests" => "256",
17         "queue/read_ahead_kb" => "2048"
18       }
19     },
20     :ssd_database => {
21       :comment => "Tune scheduler for database disk",
22       :type => "block",
23       :bus => "scsi",
24       :serial => "3600605b009bbf5601fd931c6dfac767f",
25       :attrs => {
26         "queue/scheduler" => "noop",
27         "queue/nr_requests" => "256",
28         "queue/read_ahead_kb" => "2048"
29       }
30     }
31   },
32   :hardware => {
33     :mcelog => {
34       :enabled => false
35     }
36   },
37   :networking => {
38     :interfaces => {
39       :external_ipv4 => {
40         :interface => "eth0",
41         :role => :external,
42         :family => :inet,
43         :address => "176.31.235.79",
44         :prefix => "24",
45         :gateway => "176.31.235.254"
46       },
47       :external_ipv6 => {
48         :interface => "eth0",
49         :role => :external,
50         :family => :inet6,
51         :address => "2001:41d0:2:fc4f::1",
52         :prefix => "64",
53         :gateway => "2001:41d0:2:fcff:ff:ff:ff:ff"
54       }
55     }
56   },
57   :postgresql => {
58     :versions => ["9.6"],
59     :settings => {
60       :defaults => {
61         :shared_buffers => "8GB",
62         :maintenance_work_mem => "7144MB",
63         :effective_cache_size => "16GB"
64       }
65     }
66   },
67   :sysctl => {
68     :postgres => {
69       :comment => "Increase shared memory for postgres",
70       :parameters => {
71         "kernel.shmmax" => 9 * 1024 * 1024 * 1024,
72         "kernel.shmall" => 9 * 1024 * 1024 * 1024 / 4096
73       }
74     }
75   },
76   :tile => {
77     :database => {
78       :cluster => "9.6/main"
79     },
80     :node_file => "/store/database/nodes",
81     :styles => {
82       :default => {
83         :tile_directories => [
84           { :name => "/store/tiles/default", :min_zoom => 0, :max_zoom => 19 }
85         ]
86       }
87     }
88   }
89 )
90
91 run_list(
92   "role[ovh]",
93   "role[tile]"
94 )