Add role for vial
authorTom Hughes <tom@compton.nu>
Mon, 22 Aug 2016 19:22:23 +0000 (20:22 +0100)
committerTom Hughes <tom@compton.nu>
Mon, 22 Aug 2016 19:22:23 +0000 (20:22 +0100)
roles/vial.rb [new file with mode: 0644]

diff --git a/roles/vial.rb b/roles/vial.rb
new file mode 100644 (file)
index 0000000..ab6bdca
--- /dev/null
@@ -0,0 +1,78 @@
+name "vial"
+description "Master role applied to vial"
+
+default_attributes(
+  :apt => {
+    :sources => ["postgresql"]
+  },
+  :devices => {
+    :ssd_samsung => {
+      :comment => "Tune scheduler for SSD",
+      :type => "block",
+      :bus => "ata",
+      :serial => "SAMSUNG_MZ7LM960HCHP-*",
+      :attrs => {
+        "queue/scheduler" => "noop",
+        "queue/nr_requests" => "256",
+        "queue/read_ahead_kb" => "2048"
+      }
+    }
+  },
+  :networking => {
+    :interfaces => {
+      :external_ipv4 => {
+        :interface => "eth0",
+        :role => :external,
+        :family => :inet,
+        :address => "138.201.195.31",
+        :prefix => "26",
+        :gateway => "138.201.195.1"
+      },
+      :external_ipv6 => {
+        :interface => "eth0",
+        :role => :external,
+        :family => :inet6,
+        :address => "2a01:4f8:172:3cde::2",
+        :prefix => "64",
+        :gateway => "fe80::1"
+      }
+    }
+  },
+  :postgresql => {
+    :versions => ["9.5"],
+    :settings => {
+      :defaults => {
+        :shared_buffers => "8GB",
+        :maintenance_work_mem => "7144MB",
+        :effective_cache_size => "16GB"
+      }
+    }
+  },
+  :sysctl => {
+    :postgres => {
+      :comment => "Increase shared memory for postgres",
+      :parameters => {
+        "kernel.shmmax" => 9 * 1024 * 1024 * 1024,
+        "kernel.shmall" => 9 * 1024 * 1024 * 1024 / 4096
+      }
+    }
+  },
+  :tile => {
+    :database => {
+      :cluster => "9.5/main"
+    },
+    :node_file => "/store/database/nodes",
+    :styles => {
+      :default => {
+        :tile_directories => [
+          { :name => "/store/tiles/default", :min_zoom => 0, :max_zoom => 19 }
+        ]
+      }
+    }
+  }
+)
+
+run_list(
+  "role[hetzner]",
+  "role[tile]"
+)