X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/b882fe09b267ab8ea780e45141131339201d3dcc..ecc3072dbc6b6b07f5e766b88657387a3a84d17f:/roles/tile.rb?ds=sidebyside diff --git a/roles/tile.rb b/roles/tile.rb index 5c06bb578..20bded97f 100644 --- a/roles/tile.rb +++ b/roles/tile.rb @@ -4,46 +4,41 @@ description "Role applied to all tile servers" default_attributes( :accounts => { :users => { + :pnorman => { :status => :administrator }, :tile => { - :members => [:jburgess, :tomh] + :members => [:jburgess, :tomh, :pnorman] } } }, :apache => { :mpm => "event", :timeout => 60, + :evasive => { + :enable => false + }, :event => { - :server_limit => 60, - :max_request_workers => 1200, :threads_per_child => 20, :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" } - } + :listen_cores_buckets_ratio => 8 } }, :postgresql => { :settings => { :defaults => { :max_connections => "250", - :temp_buffers => "32MB", + :shared_buffers => "16GB", :work_mem => "128MB", + :maintenance_work_mem => "8GB", + :max_parallel_workers_per_gather => "0", + :wal_level => "minimal", :wal_buffers => "1024kB", :wal_writer_delay => "500ms", + :checkpoint_timeout => "60min", :commit_delay => "10000", - :checkpoint_segments => "60", - :max_wal_size => "2880MB", - :random_page_cost => "1.1", + :max_wal_size => "10GB", + :max_wal_senders => "0", :jit => "off", :track_activity_query_size => "16384", :autovacuum_vacuum_scale_factor => "0.05", @@ -61,53 +56,51 @@ 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 => { - "kernel.sched_min_granularity_ns" => 10000000, - "kernel.sched_wakeup_granularity_ns" => 15000000 + "net.netfilter.nf_conntrack_tcp_timeout_time_wait" => "30" + } + }, + :network_conntrack_max => { + :comment => "Increase max number of connections tracked", + :parameters => { + "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 => { :database => { :style_file => "/srv/tile.openstreetmap.org/styles/default/openstreetmap-carto.style", - :tag_transform_script => "/srv/tile.openstreetmap.org/styles/default/openstreetmap-carto.lua" - }, - :data => { - :simplified_land_polygons => { - :url => "https://osmdata.openstreetmap.de/download/simplified-land-polygons-complete-3857.zip", - :refresh => true - }, - :simplified_water_polygons => { - :url => "https://osmdata.openstreetmap.de/download/simplified-water-polygons-split-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" - }, - :land_polygons => { - :url => "https://osmdata.openstreetmap.de/download/land-polygons-split-3857.zip", - :refresh => true - }, - :water_polygons => { - :url => "https://osmdata.openstreetmap.de/download/water-polygons-split-3857.zip", - :refresh => true - }, - :antarctica_icesheet_polygons => { - :url => "https://osmdata.openstreetmap.de/download/antarctica-icesheet-polygons-3857.zip", - :refresh => true - }, - :antarctica_icesheet_outlines => { - :url => "https://osmdata.openstreetmap.de/download/antarctica-icesheet-outlines-3857.zip", - :refresh => true - } + :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 => "https://github.com/gravitystorm/openstreetmap-carto.git", - :revision => "v5.2.0", + :revision => "v5.9.0", + :fonts_script => "/srv/tile.openstreetmap.org/styles/default/scripts/get-fonts.sh", + :functions_script => "/srv/tile.openstreetmap.org/styles/default/functions.sql", :max_zoom => 19 } }