X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/ff044920428608b2c04507ad52d6ab52c9d6555f..cac1c5ce3786d0205aee37ac4b23daacb92c22ba:/roles/tilecache.rb diff --git a/roles/tilecache.rb b/roles/tilecache.rb index 3a6d7fa55..d7aae8af1 100644 --- a/roles/tilecache.rb +++ b/roles/tilecache.rb @@ -2,10 +2,35 @@ name "tilecache" description "Role applied to all tile cache servers" default_attributes( + :accounts => { + :groups => { + :proxy => { + :members => [:tomh, :grant, :matt, :jburgess] + } + } + }, :apt => { - :sources => [ "nginx" ] + :sources => ["nginx"] + }, + :networking => { + :tcp_fastopen_key => "tile" + }, + :nginx => { + :access_log => false, + :cache => { + :proxy => { + :enable => true, + :keys_zone => "proxy_cache_zone:64M", + } + } }, :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 +40,50 @@ 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" + } + }, + :no_tcp_slow_start => { + :comment => "Ensure TCP slow start is disabled", + :parameters => { + "net.ipv4.tcp_slow_start_after_idle" => "0", + "net.ipv4.tcp_no_metrics_save" => "0" } } } ) run_list( - "role[geodns]", "recipe[tilecache]" )