X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/3a4d52bd4c0f8e6ae7679145846b7bc7845d8ace..b7858d9e79876bd35ae711de3a9df4f57b50e0e2:/roles/tilecache.rb diff --git a/roles/tilecache.rb b/roles/tilecache.rb index db78d4d76..a78cac73d 100644 --- a/roles/tilecache.rb +++ b/roles/tilecache.rb @@ -2,10 +2,26 @@ 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 => { @@ -15,19 +31,52 @@ default_attributes( :network_conntrack_max => { :comment => "Increase max number of connections tracked", :parameters => { - "net.netfilter.nf_conntrack_max" => "131072" + "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" + "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]" )