X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/9b081c84fe8f9c69d2266673918aab7ad580339e..52010fab3720d37d9c4838eb0d5190ab127f9353:/roles/karm.rb diff --git a/roles/karm.rb b/roles/karm.rb index 42b2e436a..9f1fc2a9a 100644 --- a/roles/karm.rb +++ b/roles/karm.rb @@ -2,19 +2,65 @@ name "karm" description "Master role applied to karm" default_attributes( + :apt => { + :sources => ["postgresql"] + }, + :db => { + :cluster => "9.5/main" + }, :networking => { :interfaces => { :internal_ipv4 => { - :interface => "enp1s0f0", + :interface => "bond0", :role => :internal, :family => :inet, - :address => "146.179.159.168", - :hwaddress => "0c:c4:7a:a3:aa:ac" + :address => "10.0.48.50", + :bond => { + :slaves => %w[enp1s0f0 enp1s0f1] + } + } + } + }, + :postgresql => { + :settings => { + :defaults => { + :shared_buffers => "64GB", + :work_mem => "64MB", + :maintenance_work_mem => "1GB", + :effective_cache_size => "180GB", + :effective_io_concurrency => "256", + :random_page_cost => "1.1" + } + } + }, + :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", + "block/nvme7n1/queue/nomerges" => "1" } } } ) run_list( - "role[ic]" + "role[equinix]", + "role[db-master]", + "role[db-backup]" )