Postgres 1C ZFS

Рекомендуемые тесты fio для ZFS + PostgreSQL

(1) Тест случайных операций 4K (OLTP-нагрузка)

bash
fio --name=randrw --filename=/postrass/testfile --rw=randrw --bs=4k --size=1G --numjobs=4 --iodepth=32 --runtime=60 --time_based --group_reporting --ioengine=libaio --direct=1

(2) Тест последовательной записи 128K (большие блоки)

bash

fio --name=seqwrite --filename=/postrass/testfile --rw=write --bs=128k --size=1G --numjobs=1 --iodepth=1 --runtime=60 --time_based --group_reporting --ioengine=posixaio

(3) Тест случайных операций 128K (соответствует recordsize)

bash

fio --name=randrw_128k --filename=/postrass/testfile --rw=randrw --bs=128k --size=1G --numjobs=4 --iodepth=32 --runtime=60 --time_based --group_reporting --ioengine=libaio --direct=1


Установка Postgres

Великолепная сатья по установке 1С на linux от рарус

В статье указана устаревшая ссылка на скрипт установки PGPro, вот новая:
wget https://repo.postgrespro.ru/pg1c-14/keys/pgpro-repo-add.sh

Получить PostgresPro бесплатно можно на сайте 1c.postgres.ru
Рекомендации от posgrespro для 1С

Полезное для linux+postgres
Postgres + PGAF (Failover за Postgres)
Советы от Гилёва по части PostgreSQL
Неплохая статья с примером обслуживания базы
Настройка PostgreSQL для 1С

Основные моменты ZFS

В postgres:

full_page_writes = off

По ссылке дано объяснение по каждому из пунктов. В частности почему размер блока стоит делать побольше, и почему не надо делать logbias=throughput

Параметры ядра для postgres

vm.swappiness=1
kernel.sched_migration_cost_ns = 5000000
kernel.sched_autogroup_enabled = 0
vm.dirty_background_bytes = 67108864
vm.dirty_bytes = 536870912
vm.zone_reclaim_mode = 0

Revision #3
Created 6 July 2023 02:22:45 by Admin
Updated 7 July 2025 10:51:12 by Admin