]> git.openstreetmap.org Git - chef.git/blobdiff - roles/poldi.rb
decrease fpm pool size to relieve postgres load
[chef.git] / roles / poldi.rb
index f1ba6320bf298f6e7ba2da6de29fe42e2443d054..01172686e451cdcbbef179089b6e7a337c15c797 100644 (file)
@@ -2,32 +2,38 @@ name "poldi"
 description "Master role applied to poldi"
 
 default_attributes(
+  :apt => {
+    :sources => [ "ubuntugis-stable", "ubuntugis-unstable" ]
+  },
   :devices => {
-    :ubuntu => {
-      :comment => "RAID array backing the ubuntu volume group",
+    :areca_ld_tune => {
+      :comment => "RAID arrays on areca",
       :type => "block",
       :bus => "scsi",
-      :serial => "20004d927fffff800",
+      :serial => "20004d927fffff*",
       :attrs => {
-        "queue/scheduler" => "deadline"
+        "queue/scheduler" => "deadline",
+        "queue/read_ahead_kb" => "2048"
       }
     },
-    :nominatim => {
-      :comment => "RAID array backing the nominatim volume group",
+    :ssd_samsung_tune => {
+      :comment => "Tune Samsung SSD",
       :type => "block",
-      :bus => "scsi",
-      :serial => "20004d927fffff801",
+      :bus => "ata",
+      :serial => "Samsung_SSD_840_PRO_Series_*",
       :attrs => {
-        "queue/scheduler" => "deadline"
+        "queue/scheduler" => "noop",
+        "queue/nr_requests" => "256",
+        "queue/read_ahead_kb" => "2048"
       }
-    },
-    :nominatim2 => {
-      :comment => "RAID array backing the nominatim2 volume group",
-      :type => "block",
-      :bus => "scsi",
-      :serial => "20004d927fffff802",
-      :attrs => {
-        "queue/scheduler" => "deadline"
+    }
+  },
+  :sysfs => {
+    :md_tune => {
+      :comment => "Tune the md sync performance so as not to kill system performance",
+      :parameters => {
+        "block/md0/md/sync_speed_min" => "1",
+        "block/md0/md/sync_speed_max" => "100000"
       }
     }
   },
@@ -43,24 +49,54 @@ default_attributes(
         :interface => "eth1",
         :role => :external,
         :family => :inet,
-        :address => "128.40.168.106"
+        :address => "128.40.45.203"
       }
     }
   },
   :postgresql => {
+    :versions => [ "9.1" ],
     :settings => {
       :defaults => {
-        :shared_buffers => "9GB",
+        :shared_buffers => "24GB",
         :work_mem => "160MB",
-        :maintenance_work_mem => "9GB",
+        :maintenance_work_mem => "10GB",
         :random_page_cost => "1.5",
         :effective_cache_size => "48GB"
       }
     }
+  },
+  :nominatim => {
+    :database => {
+        :cluster => "9.1/main",
+        :dbname => "nominatim",
+        :postgis => "2.0"
+    },
+    :fpm_pools => {
+        :www => {
+            :pm => "dynamic",
+            :max_children => "60"
+        },
+        :bulk => {
+            :pm => "static",
+            :max_children => "10"
+        }
+    }
+  },
+  :munin => {
+    :plugins => {
+      :sensors_volt => {
+        :volt6 => {
+          :warning => "2.992:3.536"
+        },
+        :volt10 => {
+          :warning => "2.71:3.29"
+        }
+      }
+    }
   }
 )
 
 run_list(
-  "role[ucl-internal]",
+  "role[ucl-wolfson]",
   "role[nominatim]"
 )