]> git.openstreetmap.org Git - chef.git/blob - roles/vial.rb
a7a655a445ed61aeef5a6325518e9a6b8cf19183
[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   :hardware => {
22     :modules => %w[nct6775],
23     :sensors => {
24       "nct6779-isa-0290" => {
25         :volts => {
26           "in1" => { :ignore => true },
27           "in4" => { :ignore => true },
28           "in5" => { :ignore => true },
29           "in6" => { :ignore => true },
30           "in9" => { :ignore => true },
31           "in10" => { :ignore => true },
32           "in11" => { :ignore => true },
33           "in12" => { :ignore => true },
34           "in13" => { :ignore => true },
35           "in14" => { :ignore => true }
36         },
37         :fans => {
38           "fan1" => { :ignore => true },
39           "fan2" => { :ignore => true }
40         },
41         :temps => {
42           "temp7" => { :ignore => true },
43           "temp8" => { :ignore => true },
44           "temp9" => { :ignore => true },
45           "temp10" => { :ignore => true }
46         }
47       }
48     }
49   },
50   :networking => {
51     :interfaces => {
52       :external_ipv4 => {
53         :interface => "eth0",
54         :role => :external,
55         :family => :inet,
56         :address => "138.201.195.31",
57         :prefix => "26",
58         :gateway => "138.201.195.1"
59       },
60       :external_ipv6 => {
61         :interface => "eth0",
62         :role => :external,
63         :family => :inet6,
64         :address => "2a01:4f8:172:3cde::2",
65         :prefix => "64",
66         :gateway => "fe80::1"
67       }
68     }
69   },
70   :postgresql => {
71     :versions => ["9.6"],
72     :settings => {
73       :defaults => {
74         :shared_buffers => "8GB",
75         :maintenance_work_mem => "7144MB",
76         :effective_cache_size => "16GB"
77       }
78     }
79   },
80   :sysctl => {
81     :postgres => {
82       :comment => "Increase shared memory for postgres",
83       :parameters => {
84         "kernel.shmmax" => 9 * 1024 * 1024 * 1024,
85         "kernel.shmall" => 9 * 1024 * 1024 * 1024 / 4096
86       }
87     }
88   },
89   :tile => {
90     :database => {
91       :cluster => "9.6/main"
92     },
93     :node_file => "/store/database/nodes",
94     :styles => {
95       :default => {
96         :tile_directories => [
97           { :name => "/store/tiles/default", :min_zoom => 0, :max_zoom => 19 }
98         ]
99       }
100     }
101   }
102 )
103
104 run_list(
105   "role[hetzner]",
106   "role[tile]"
107 )