themepark_directory = "/srv/vector.openstreetmap.org/osm2pgsql-themepark"
git themepark_directory do
repository "https://github.com/osm2pgsql-dev/osm2pgsql-themepark.git"
+ revision "7efc00db433fa7d2c49db00c32ffd27d8ced35f4"
user "tileupdate"
group "tileupdate"
end
python_package "tilekiln" do
python_virtualenv tilekiln_directory
python_version "3"
- version "0.6.3"
+ version "0.6.5"
end
template "/srv/vector.openstreetmap.org/html/index.html" do
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]
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
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
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",
+}