X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/5b61dc78ec8857086174b99aa68ec7ee7f439e0b..8b26972a6378577bb1f565093453bce77752a8eb:/roles/tilecache.rb?ds=sidebyside diff --git a/roles/tilecache.rb b/roles/tilecache.rb index bbabdea11..a78cac73d 100644 --- a/roles/tilecache.rb +++ b/roles/tilecache.rb @@ -2,26 +2,81 @@ name "tilecache" description "Role applied to all tile cache servers" default_attributes( - :apt => { - :sources => [ "nginx" ] + :accounts => { + :groups => { + :proxy => { + :members => [:tomh, :grant, :matt, :jburgess] + } + } + }, + :networking => { + :tcp_fastopen_key => "tile" + }, + :nginx => { + :access_log => false }, :sysctl => { + :sockets => { + :comment => "Increase size of connection queue", + :parameters => { + "net.core.somaxconn" => 10000 + } + }, :network_conntrack_time_wait => { :comment => "Only track completed connections for 30 seconds", - :parameters => { + :parameters => { "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" + } + }, + :network_local_port_range => { + :comment => "Increase available local port range", + :parameters => { + "net.ipv4.ip_local_port_range" => "1024\t65535" + } + }, + :network_tcp_timewait_reuse => { + :comment => "Allow tcp timewait reuse", + :parameters => { + "net.ipv4.tcp_tw_reuse" => 1 + } + }, + :kernel_tfo_listen_enable => { + :comment => "Enable TCP Fast Open for listening sockets", + :parameters => { + "net.ipv4.tcp_fastopen" => 3 + } + }, :squid_swappiness => { :comment => "Prefer not to swapout to free memory", - :parameters => { - "vm.swappiness" => "30" + :parameters => { + "vm.swappiness" => "1" + } + }, + :sched_wakeup => { + :comment => "Tune scheduler", + :parameters => { + "kernel.sched_min_granularity_ns" => "10000000", + "kernel.sched_wakeup_granularity_ns" => "15000000" + } + } + }, + :tools => { + :cron => { + :load => { + :nice => 19, + :io_scheduling_class => "best-effort", + :io_scheduling_priority => 7 } } } ) run_list( - "role[geodns]", "recipe[tilecache]" )