forked from hswaw/hscloud
machines/bc01n05: postgres tuning
Change-Id: I30925a84216b45bde9e92b67b007f15b2cdf58e8 Reviewed-on: https://gerrit.hackerspace.pl/c/hscloud/+/1481 Reviewed-by: q3k <q3k@hackerspace.pl>
This commit is contained in:
parent
821b839b16
commit
3b0887397a
1 changed files with 22 additions and 2 deletions
|
@ -1,14 +1,16 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with builtins;
|
||||
let postgresPkg = pkgs.postgresql_14;
|
||||
let
|
||||
postgresPkg = pkgs.postgresql_14;
|
||||
numCPUs = 16;
|
||||
in rec {
|
||||
networking.hostName = "bc01n05";
|
||||
# TODO: undefine fqdn and define domain after big nix change
|
||||
hscloud.base.fqdn = "${networking.hostName}.hswaw.net";
|
||||
#networking.domain = "hswaw.net";
|
||||
system.stateVersion = "22.05";
|
||||
nix.maxJobs = 16;
|
||||
nix.maxJobs = numCPUs;
|
||||
|
||||
### zfs
|
||||
# randomly generated
|
||||
|
@ -53,6 +55,24 @@ in rec {
|
|||
package = postgresPkg;
|
||||
enableTCPIP = true;
|
||||
initdbArgs = ["--encoding='UTF8'" "--lc-collate='C'" "--lc-ctype='C'"];
|
||||
settings = {
|
||||
max_connections = 300;
|
||||
shared_buffers = "4GB";
|
||||
temp_buffers = "64MB";
|
||||
work_mem = "64MB";
|
||||
maintenance_work_mem = "258MB";
|
||||
effective_io_concurrency = 10; # ssd, guess
|
||||
maintenance_io_concurrency = 100; # ssd, guess
|
||||
max_worker_processes = numCPUs;
|
||||
max_parallel_workers = numCPUs;
|
||||
max_parallel_maintenance_workers = 4;
|
||||
wal_level = "logical";
|
||||
wal_sync_method = "fsync"; # slightly faster (per pg_test_fsync) AND safer
|
||||
full_page_writes = "off"; # partial writes impossible on zfs
|
||||
wal_init_zero = "off"; # useless on CoW
|
||||
wal_recycle = "off"; # same
|
||||
random_page_cost = 2.0; # ssd, TODO maybe even lower?
|
||||
};
|
||||
ensureDatabases = ["synapse" "mediarepo"];
|
||||
ensureUsers = [
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue