Raid-1 на SSD для СУБД 1с PostgreSQL (Linux)

Выбор и настройка HardWare

Модератор: Модераторы разделов

Аватара пользователя
SwapON
Сообщения: 187
ОС: Gentoo Xfce4

Raid-1 на SSD для СУБД 1с PostgreSQL (Linux)

Сообщение SwapON »

Имеется ВМ с выделенными параметрами:
CPU: 1 сокет, 2 ядра, 4 потока
ОЗУ: 12 Гб
ОС: Debian
FS: ext4
ПО: PostgreSQL 13 для БД 1с
1с с конфами: БП, ЗиУП, УПП, Общепит, Регламент. Всего баз ~ 10, юзеров ~ 30
postgresql.conf
max_connections = 100
shared_buffers = 128MB
dynamic_shared_memory_type = posix
max_wal_size = 1GB
min_wal_size = 80MB
logging_collector = on
log_timezone = 'Asia/Vladivostok'
stats_temp_directory = '/var/lib/pgsql_stats_tmp'
datestyle = 'iso, dmy'
timezone = 'Asia/Vladivostok'
lc_messages = 'ru_RU.UTF-8'
lc_monetary = 'ru_RU.UTF-8'
lc_numeric = 'ru_RU.UTF-8'
lc_time = 'ru_RU.UTF-8'
default_text_search_config = 'pg_catalog.russian'
listen_addresses = '*'
shared_buffers = 5004MB # 25% of RAM
temp_buffers = 128MB
work_mem = 256MB
maintenance_work_mem = 256MB
max_files_per_process = 10000
max_parallel_workers_per_gather = 0
max_parallel_maintenance_workers = 2 # Количество CPU/4, минимум 2, максимум 6
commit_delay = 1000
max_wal_size = 4GB
min_wal_size = 2GB
checkpoint_timeout = 15min
effective_cache_size = 15012MB # 75% of RAM
from_collapse_limit = 8
join_collapse_limit = 8
autovacuum_max_workers = 4 # Количество CPU/2, минимум 2
vacuum_cost_limit = 400 # 100* autovacuum_max_workers
autovacuum_naptime = 20s
autovacuum_vacuum_scale_factor = 0.01
autovacuum_analyze_scale_factor = 0.005
max_locks_per_transaction = 256
escape_string_warning = off
standard_conforming_strings = off
shared_preload_libraries = 'online_analyze, plantuner'
online_analyze.threshold = 50
online_analyze.scale_factor = 0.1
online_analyze.enable = on
online_analyze.verbose = off
online_analyze.min_interval = 10000
online_analyze.table_type = 'temporary'
plantuner.fix_empty_table = on
Хостится ВМ на собранном на коленке сервере:
CPU: 11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz
HDD: 1TB WDC WD10EZEX-22M 4 штуки в программном Raid-10 (mdadm)
Виртуализация: KVM, Libvirt
Остальные параметры не вижу смысла озвучивать.

В принципе мониторинг показывает что всё работает на ура, за исключением показателей ввода-вывода.

На подходе 4 SSD по 1 TB. Планирую пересобрать сервер, заменив 4 HDD в рейде на SSD. Вот только не решил как лучше. Покурив интернет на предмет внятных манов, столкнулся с тем, что каждая лягушка хвалит и рекомендует своё.

1. Посоветуйте как лучше заюзать SSD (raid-уровень либо вообще достаточно одного SSD диска).
2. Если же тут найдутся СУБД-воды, то может посоветуйте как затюнить постгрю на производительность I/O.
Спасибо сказали: