X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/a6bc4d6e40332aad2a026b54282efad7fa22acf3..85285059d23c921f13bab8156718888a63d90475:/roles/tilecache.rb diff --git a/roles/tilecache.rb b/roles/tilecache.rb index 8e1262e81..a78cac73d 100644 --- a/roles/tilecache.rb +++ b/roles/tilecache.rb @@ -2,32 +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" => "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" + :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]" )