]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/vectortile/recipes/default.rb
Merge remote-tracking branch 'github/pull/716'
[chef.git] / cookbooks / vectortile / recipes / default.rb
index 6fcf2531749ec5f8b2364777d181c67f4e17b126..81f69ec5b457bb5b62ced2f1be3051e1e2242f40 100644 (file)
@@ -86,6 +86,7 @@ shortbread_config = "#{style_directory}/shortbread.yaml"
 themepark_directory = "/srv/vector.openstreetmap.org/osm2pgsql-themepark"
 git themepark_directory do
   repository "https://github.com/osm2pgsql-dev/osm2pgsql-themepark.git"
+  revision "6df586489889dae1c5ffed33071067ef09771acf"
   user "tileupdate"
   group "tileupdate"
 end
@@ -99,7 +100,7 @@ end
 python_package "tilekiln" do
   python_virtualenv tilekiln_directory
   python_version "3"
-  version "0.5.1"
+  version "0.6.5"
 end
 
 template "/srv/vector.openstreetmap.org/html/index.html" do
@@ -189,6 +190,13 @@ end
   end
 end
 
+postgresql_table "tile_stats" do
+  cluster node[:vectortile][:database][:cluster]
+  database "tiles"
+  schema "tilekiln"
+  owner "tilekiln"
+end
+
 (0..14).each do |zoom|
   postgresql_table "shortbread_v1_z#{zoom}" do
     cluster node[:vectortile][:database][:cluster]
@@ -222,7 +230,7 @@ systemd_service "tilekiln" do
   wants "postgresql.service"
   sandbox :enable_network => true
   restrict_address_families "AF_UNIX"
-  exec_start "#{tilekiln_directory}/bin/tilekiln serve #{tilekiln_mode} --storage-dbname tiles --num-threads #{node[:vectortile][:serve][:threads]}"
+  exec_start "#{tilekiln_directory}/bin/tilekiln serve #{tilekiln_mode} --storage-dbname tiles --num-threads #{node[:vectortile][:serve][:threads]} --base-url 'https://vector.openstreetmap.org'"
 end
 
 service "tilekiln" do
@@ -280,3 +288,36 @@ else
     action [:stop, :disable]
   end
 end
+
+package %w[
+  ruby-pg
+  ruby-webrick
+]
+
+prometheus_exporter "osm2pgsql" do
+  port 10027
+  user "tileupdate"
+  restrict_address_families "AF_UNIX"
+  options [
+    "--database-name=spirit"
+  ]
+end
+
+systemd_service "tilekiln-prometheus" do
+  description "Tilekiln vector tile server"
+  user "tilekiln"
+  after "postgresql.service"
+  wants "postgresql.service"
+  sandbox :enable_network => true
+  restrict_address_families "AF_UNIX"
+  exec_start "#{tilekiln_directory}/bin/tilekiln prometheus --bind-host #{node[:prometheus][:address]} --storage-dbname tiles"
+end
+
+service "tilekiln-prometheus" do
+  action [:enable, :start]
+end
+
+node.default[:prometheus][:exporters][10013] = {
+  :name => "tilekiln",
+  :address => "#{node[:prometheus][:address]}:10013",
+}