]> git.openstreetmap.org Git - chef.git/blobdiff - roles/poldi.rb
Switch the web site to use poldi for nominatim
[chef.git] / roles / poldi.rb
index 77b905b360c050568e141efaeb67619a102d6d89..52b32e7e925aa40c24aed715ecaaa796904f6994 100644 (file)
@@ -3,31 +3,34 @@ description "Master role applied to poldi"
 
 default_attributes(
   :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"
       }
     }
   },
@@ -37,30 +40,72 @@ default_attributes(
         :interface => "eth0",
         :role => :internal,
         :family => :inet,
-        :address => "10.0.0.16"
+        :address => "146.179.159.164"
       },
       :external_ipv4 => {
         :interface => "eth1",
         :role => :external,
         :family => :inet,
-        :address => "128.40.168.106"
+        :address => "193.63.75.101"
+      },
+      :external_ipv6 => {
+        :interface => "eth1",
+        :role => :external,
+        :family => :inet6,
+        :address => "2001:630:12:500:2e0:81ff:fec5:333e"
       }
     }
   },
   :postgresql => {
+    :versions => ["9.3"],
     :settings => {
       :defaults => {
-        :shared_buffers => "9GB",
+        :shared_buffers => "10GB",
         :work_mem => "160MB",
-        :maintenance_work_mem => "9GB",
+        :maintenance_work_mem => "10GB",
         :random_page_cost => "1.5",
-        :effective_cache_size => "24GB"
+        :effective_cache_size => "48GB",
+        :fsync => "on"
+      }
+    }
+  },
+  :nominatim => {
+    :enabled => false,
+    :flatnode_file => "/ssd-old/nominatim/nodes.store",
+    :database => {
+      :cluster => "9.3/main",
+      :dbname => "nominatim",
+      :postgis => "2.1"
+    },
+    :fpm_pools => {
+      :www => {
+        :port => "8000",
+        :pm => "dynamic",
+        :max_children => "60"
+      },
+      :bulk => {
+        :port => "8001",
+        :pm => "static",
+        :max_children => "10"
       }
+    },
+    :tablespaces => {
+      "Osm2pgsql_Data" => "aux",
+      "Osm2pgsql_Index" => "data",
+      "Place_Data" => "ssd2",
+      "Place_Index" => "ssd1",
+      "Address_Data" => "ssd2",
+      "Address_Index" => "ssd1",
+      "Search_Data" => "ssd1",
+      "Search_Index" => "ssd1",
+      "Aux_Data" => "aux",
+      "Aux_Index" => "aux"
     }
   }
 )
 
 run_list(
-  "role[ucl-internal]",
+  "role[ic]",
+  "role[tyan-s7010]",
   "role[nominatim]"
 )