X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/7241de1b2163bf5fbe1140ee7ecb60e1b68049df..e2e332bc6d7c55bb83a404deb703d664043348e4:/cookbooks/vectortile/recipes/default.rb?ds=sidebyside diff --git a/cookbooks/vectortile/recipes/default.rb b/cookbooks/vectortile/recipes/default.rb index ad4e5a8ef..703407f11 100644 --- a/cookbooks/vectortile/recipes/default.rb +++ b/cookbooks/vectortile/recipes/default.rb @@ -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 "444bfbda82dea2899e77ac7f0e88ddf7f62c3b45" user "tileupdate" group "tileupdate" end @@ -99,7 +100,7 @@ end python_package "tilekiln" do python_virtualenv tilekiln_directory python_version "3" - version "0.6.2" + version node[:vectortile][:tilekiln][:version] 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] @@ -242,7 +250,7 @@ template "/usr/local/bin/vector-update" do owner "root" group "root" mode "755" - variables :tilekiln_bin => "#{tilekiln_directory}/bin/tilekiln", :source_database => "spirit", :config_path => "#{shortbread_config}", :diff_size => "1000", :tiles_file => "/srv/vector.openstreetmap.org/data/tiles.txt", :post_processing => "/usr/local/bin/tiles-rerender" + variables :tilekiln_bin => "#{tilekiln_directory}/bin/tilekiln", :source_database => "spirit", :config_path => "#{shortbread_config}", :diff_size => "1000", :expiry_dir => "/srv/vector.openstreetmap.org/data/", :post_processing => "/usr/local/bin/tiles-rerender" end template "/usr/local/bin/tiles-rerender" do @@ -250,7 +258,7 @@ template "/usr/local/bin/tiles-rerender" do owner "root" group "root" mode "755" - variables :tilekiln_bin => "#{tilekiln_directory}/bin/tilekiln", :source_database => "spirit", :storage_database => "tiles", :config_path => "#{shortbread_config}", :tiles_file => "/srv/vector.openstreetmap.org/data/tiles.txt", :update_threads => 4 + variables :tilekiln_bin => "#{tilekiln_directory}/bin/tilekiln", :source_database => "spirit", :storage_database => "tiles", :config_path => "#{shortbread_config}", :expiry_dir => "/srv/vector.openstreetmap.org/data/", :update_threads => 4 end systemd_service "replicate" 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", +}