X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/cecd219c7ab80a25ceeb3e99879c9eb52f6ea6ff..5bbe6932cd6068a287a109cf811c075ab7d3bb47:/roles/tile.rb diff --git a/roles/tile.rb b/roles/tile.rb index 09b3f44ae..d0de61bbe 100644 --- a/roles/tile.rb +++ b/roles/tile.rb @@ -4,9 +4,9 @@ description "Role applied to all tile servers" default_attributes( :accounts => { :users => { + :pnorman => { :status => :user }, :tile => { - :status => :role, - :members => [:jburgess, :tomh] + :members => [:jburgess, :tomh, :pnorman] } } }, @@ -14,26 +14,48 @@ default_attributes( :mpm => "event", :timeout => 60, :event => { - :server_limit => 60, - :max_clients => 1200, + :server_limit => 80, + :max_request_workers => 1200, :threads_per_child => 20, - :min_spare_threads => 30, - :max_spare_threads => 180, - :max_requests_per_child => 100000 + :min_spare_threads => 300, + :max_spare_threads => 1200, + :max_connections_per_child => 0, + :async_request_worker_factor => 4, + :listen_cores_buckets_ratio => 6 + } + }, + :munin => { + :plugins => { + :renderd_processed => { + :graph_order => "reqPrio req reqLow dirty reqBulk dropped", + :reqPrio => { :draw => "AREA" }, + :req => { :draw => "STACK" } + } } }, :postgresql => { :settings => { :defaults => { + :max_connections => "250", :temp_buffers => "32MB", :work_mem => "128MB", + :max_parallel_workers_per_gather => "0", :wal_buffers => "1024kB", :wal_writer_delay => "500ms", :commit_delay => "10000", - :checkpoint_segments => "60" + :checkpoint_segments => "60", + :max_wal_size => "2880MB", + :random_page_cost => "1.1", + :jit => "off", + :track_activity_query_size => "16384", + :autovacuum_vacuum_scale_factor => "0.05", + :autovacuum_analyze_scale_factor => "0.02" } } }, + :ssl => { + :ct_report_uri => false + }, :sysctl => { :sockets => { :comment => "Increase size of connection queue", @@ -41,50 +63,50 @@ default_attributes( "net.core.somaxconn" => 10000 } }, - :kernel_scheduler_tune => { - :comment => "Tune kernel scheduler preempt", + :network_conntrack_time_wait => { + :comment => "Only track completed connections for 30 seconds", + :parameters => { + "net.netfilter.nf_conntrack_tcp_timeout_time_wait" => "30" + } + }, + :network_conntrack_max => { + :comment => "Increase max number of connections tracked", :parameters => { - "kernel.sched_min_granularity_ns" => 10000000, - "kernel.sched_wakeup_granularity_ns" => 15000000 + "net.netfilter.nf_conntrack_max" => "524288" + } + }, + :no_tcp_slow_start => { + :comment => "Disable TCP slow start", + :parameters => { + "net.ipv4.tcp_slow_start_after_idle" => "0" + } + }, + :tcp_use_bbr => { + :comment => "Use TCP BBR Congestion Control", + :parameters => { + "net.core.default_qdisc" => "fq", + "net.ipv4.tcp_congestion_control" => "bbr" } } }, :tile => { - :data => { - :world_boundaries => { - :url => "http://planet.openstreetmap.org/historical-shapefiles/world_boundaries-spherical.tgz" - }, - :simplified_land_polygons => { - :url => "http://data.openstreetmapdata.com/simplified-land-polygons-complete-3857.zip", - :refresh => true - }, - :admin_boundaries => { - :url => "http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/110m/cultural/ne_110m_admin_0_boundary_lines_land.zip", - :directory => "ne_110m_admin_0_boundary_lines_land" - }, - :populated_places => { - :url => "http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_populated_places.zip", - :directory => "ne_10m_populated_places", - :original => "ne_10m_populated_places.shp", - :processed => "ne_10m_populated_places_fixed.shp" - }, - :land_polygons => { - :url => "http://data.openstreetmapdata.com/land-polygons-split-3857.zip", - :refresh => true - }, - :antarctica_icesheet_polygons => { - :url => "http://data.openstreetmapdata.com/antarctica-icesheet-polygons-3857.zip", - :refresh => true - }, - :antarctica_icesheet_outlines => { - :url => "http://data.openstreetmapdata.com/antarctica-icesheet-outlines-3857.zip", - :refresh => true - } + :database => { + :style_file => "/srv/tile.openstreetmap.org/styles/default/openstreetmap-carto.style", + :tag_transform_script => "/srv/tile.openstreetmap.org/styles/default/openstreetmap-carto.lua", + :external_data_script => "/srv/tile.openstreetmap.org/styles/default/scripts/get-external-data.py -c /srv/tile.openstreetmap.org/styles/default/external-data.yml", + :external_data_tables => %w[ + icesheet_outlines + icesheet_polygons + ne_110m_admin_0_boundary_lines_land + simplified_water_polygons + water_polygons + ] }, :styles => { :default => { - :repository => "git://github.com/gravitystorm/openstreetmap-carto.git", - :revision => "v2.31.0", + :repository => "https://github.com/gravitystorm/openstreetmap-carto.git", + :revision => "v5.6.1", + :fonts_script => "/srv/tile.openstreetmap.org/styles/default/scripts/get-fonts.sh", :max_zoom => 19 } }