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