]> git.openstreetmap.org Git - chef.git/blobdiff - roles/planet.rb
imagery: restart mapserver every hour to limit memory leak
[chef.git] / roles / planet.rb
index 889f0bb0e90df79836e185a6e4b92e78a55088a3..4dd1f1d7476ec2cd3533c37280f0738f1427e129 100644 (file)
@@ -2,15 +2,36 @@ name "planet"
 description "Role applied to all planet servers"
 
 default_attributes(
 description "Role applied to all planet servers"
 
 default_attributes(
-  :accounts => {
-    :users => {
-      :bretth => { :status => :user },
-      :planet => {
-        :status => :administrator,
-        :members => [:bretth]
-      }
+  :apache => {
+    :mpm => "event",
+    :keepalive => true,
+    :event => {
+      :server_limit => 30,
+      :max_request_workers => 1000,
+      :threads_per_child => 50,
+      :min_spare_threads => 75,
+      :max_spare_threads => 525,
+      :listen_cores_buckets_ratio => 4
     }
   },
     }
   },
+  :networking => {
+    :firewall => {
+      :http_connection_limit => 10
+    }
+  },
+  :prometheus => {
+    :files => %w[
+      /store/planet/notes/planet-notes-latest.osn.bz2
+      /store/planet/pbf/planet-latest.osm.pbf
+      /store/planet/planet/changesets-latest.osm.bz2
+      /store/planet/planet/discussions-latest.osm.bz2
+      /store/planet/planet/planet-latest.osm.bz2
+      /store/planet/replication/changesets/state.yaml
+      /store/planet/replication/day/state.txt
+      /store/planet/replication/hour/state.txt
+      /store/planet/replication/minute/state.txt
+    ]
+  },
   :rsyncd => {
     :modules => {
       :planet => {
   :rsyncd => {
     :modules => {
       :planet => {
@@ -28,24 +49,19 @@ default_attributes(
         :ignore_nonreadable => true,
         :timeout => 3600,
         :refuse_options => ["checksum"]
         :ignore_nonreadable => true,
         :timeout => 3600,
         :refuse_options => ["checksum"]
+      },
+      :statistics => {
+        :comment => "Statistics",
+        :path => "/store/planet/statistics",
+        :read_only => false,
+        :write_only => true,
+        :list => false,
+        :uid => "planet",
+        :gid => "planet",
+        :transfer_logging => false,
+        :nodes_allow => "roles:web-statistics"
       }
     }
       }
     }
-  },
-  :networking => {
-    :firewall => {
-      :http_connection_limit => 10
-    }
-  },
-  :apache => {
-    :mpm => "worker",
-    :keepalive => true,
-    :event => {
-      :server_limit => 20,
-      :max_request_workers => 1000,
-      :threads_per_child => 50,
-      :min_spare_threads => 75,
-      :max_spare_threads => 525
-    }
   }
 )
 
   }
 )
 
@@ -53,6 +69,5 @@ run_list(
   "role[web-db]",
   "recipe[planet]",
   "recipe[planet::replication]",
   "role[web-db]",
   "recipe[planet]",
   "recipe[planet::replication]",
-  "recipe[nfs::server]",
   "recipe[rsyncd]"
 )
   "recipe[rsyncd]"
 )