]> git.openstreetmap.org Git - chef.git/blob - roles/orm.rb
orm: add readahead tuning
[chef.git] / roles / orm.rb
1 name "orm"
2 description "Master role applied to orm"
3
4 default_attributes(
5   :devices => {
6     :ssd_samsung => {
7       :comment => "Tune scheduler for SSD",
8       :type => "block",
9       :bus => "ata",
10       :serial => "Samsung_SSD_840_PRO_Series_*",
11       :attrs => {
12         "queue/scheduler" => "noop",
13         "queue/nr_requests" => "256",
14         "queue/read_ahead_kb" => "2048"
15       }
16     },
17     :arecavoltune => {
18       :comment => "Tune scheduler for Areca",
19       :type => "block",
20       :bus => "scsi",
21       :serial => "2001b4d20*",
22       :attrs => {
23         "queue/scheduler" => "deadline",
24         "queue/nr_requests" => "512",
25         "queue/read_ahead_kb" => "2048"
26       }
27     }
28   },
29   :munin => {
30     :plugins => {
31       :ipmi_fans => {
32         :Sys6 => { :graph => "no" },
33         :Sys8 => { :graph => "no" }
34       },
35       :sensors_fan => {
36         :fan3 => { :graph => "no" },
37         :fan4 => { :graph => "no" },
38         :fan5 => { :graph => "no" },
39         :fan6 => { :graph => "no" },
40         :fan7 => { :graph => "no" },
41         :fan8 => { :graph => "no" },
42         :fan9 => { :graph => "no" },
43         :fan10 => { :graph => "no" },
44         :fan11 => { :graph => "no" },
45         :fan12 => { :graph => "no" }
46       },
47       :sensors_volt => {
48         :contacts => "null",
49       }
50     }
51   },
52   :networking => {
53     :interfaces => {
54       :external_ipv4 => {
55         :interface => "eth0",
56         :role => :external,
57         :family => :inet,
58         :address => "193.63.75.98"
59       },
60       :external_ipv6 => {
61         :interface => "eth0",
62         :role => :external,
63         :family => :inet6,
64         :address => "2001:630:12:500:2e0:81ff:fec5:2a8c"
65       }
66     }
67   },
68   :postgresql => {
69     :versions => [ "9.1" ],
70     :settings => {
71       :defaults => {
72         :shared_buffers => "8GB",
73         :maintenance_work_mem => "7144MB",
74         :effective_cache_size => "16GB"
75       }
76     }
77   },
78   :sysctl => {
79     :postgres => {
80       :comment => "Increase shared memory for postgres",
81       :parameters => { 
82         "kernel.shmmax" => 9 * 1024 * 1024 * 1024,
83         "kernel.shmall" => 9 * 1024 * 1024 * 1024 / 4096
84       }
85     }
86   },
87   :tile => {
88     :node_file => "/store/database/nodes",
89     :styles => {
90       :default => {
91         :tile_directories => [
92           { :name => "/store/tiles/default-low", :min_zoom => 0, :max_zoom => 17 },
93           { :name => "/store/tiles/default-high", :min_zoom => 18, :max_zoom => 19 }
94         ]
95       }
96     }
97   }
98 )
99
100 override_attributes(
101   :networking => {
102     :nameservers => [ "8.8.8.8", "8.8.4.4" ]
103   }
104 )
105
106 run_list(
107   "role[ic]",
108   "role[tile]"
109 )