X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/9b081c84fe8f9c69d2266673918aab7ad580339e..bf14fbaf495ff6aa406ad95aa39ac81fd00549e5:/roles/karm.rb diff --git a/roles/karm.rb b/roles/karm.rb index 42b2e436a..a64b3337d 100644 --- a/roles/karm.rb +++ b/roles/karm.rb @@ -2,6 +2,12 @@ name "karm" description "Master role applied to karm" default_attributes( + :apt => { + :sources => ["postgresql"] + }, + :db => { + :cluster => "9.5/main" + }, :networking => { :interfaces => { :internal_ipv4 => { @@ -12,9 +18,45 @@ default_attributes( :hwaddress => "0c:c4:7a:a3:aa:ac" } } + }, + :postgresql => { + :settings => { + :defaults => { + :shared_buffers => "64GB", + :work_mem => "64MB", + :maintenance_work_mem => "1GB", + :effective_cache_size => "180GB", + :effective_io_concurrency => "256" + } + } + }, + :sysctl => { + :postgres => { + :comment => "Increase shared memory for postgres", + :parameters => { + "kernel.shmmax" => 66 * 1024 * 1024 * 1024, + "kernel.shmall" => 66 * 1024 * 1024 * 1024 / 4096 + } + } + }, + :sysfs => { + :md_tune => { + :comment => "Enable request merging for NVMe devices", + :parameters => { + "block/nvme0n1/queue/nomerges" => "1", + "block/nvme1n1/queue/nomerges" => "1", + "block/nvme2n1/queue/nomerges" => "1", + "block/nvme3n1/queue/nomerges" => "1", + "block/nvme4n1/queue/nomerges" => "1", + "block/nvme5n1/queue/nomerges" => "1", + "block/nvme6n1/queue/nomerges" => "1" + } + } } ) run_list( - "role[ic]" + "role[ic]", + "role[db-master]", + "role[db-backup]" )