]> git.openstreetmap.org Git - chef.git/blobdiff - roles/rhaegal.rb
Configure rhaegal as a tile server
[chef.git] / roles / rhaegal.rb
index 0f18a02fc83d4ec4432627d3d29004eb12a09582..6997afa571737f608503e37b1b1faed5c82dd9c5 100644 (file)
@@ -7,7 +7,19 @@ default_attributes(
       :mmiler => { :status => :administrator }
     }
   },
-  :thanks => "GEOF and OpenIT",
+  :devices => {
+    :ssd_samsung => {
+      :comment => "Tune scheduler for SSD",
+      :type => "block",
+      :bus => "ata",
+      :serial => "Samsung_SSD_860_PRO_*",
+      :attrs => {
+        "queue/scheduler" => "noop",
+        "queue/nr_requests" => "256",
+        "queue/read_ahead_kb" => "2048"
+      }
+    }
+  },
   :location => "Zagreb, Croatia",
   :networking => {
     :interfaces => {
@@ -24,9 +36,42 @@ default_attributes(
       "10.5.0.7",
       "8.8.8.8"
     ]
+  },
+  :postgresql => {
+    :versions => ["10"],
+    :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 => "10/main"
+    },
+    :node_file => "/store/database/nodes",
+    :styles => {
+      :default => {
+        :tile_directories => [
+          { :name => "/store/tiles/default", :min_zoom => 0, :max_zoom => 19 }
+        ]
+      }
+    }
   }
 )
 
 run_list(
-  "role[carnet]"
+  "role[carnet]",
+  "role[tile]"
 )