Кластер postgres не инициализирует настройки?

Ссылка скопирована
1 ответ

Коллеги Привет, нужна помощь и заранее спасибо за внимание
Есть кластер etcd+etcd+etcd за patroni + postgres и реплика patroni + postgres
Что произошло понятия не имею, так что нужен советпомощь
Добавил в конфиг /etc/patroni/config.yml.in | перезапустил сервер и значение max_locks_per_transaction снова 64 - по дефолту

bootstrap:
dcs:
ttl: 100
loop_wait: 10
retry_timeout: 10
maximum_lag_on_failover: 1048576
postgresql:
use_pg_rewind: true
use_slots: true
parameters:
# wal_level: replica
# hot_standby: "on"
# wal_keep_segments: 5120
# max_wal_senders: 5
# max_replication_slots: 5
# checkpoint_timeout: 30
wal_level: replica
hot_standby: "on"
wal_keep_size: 8
max_wal_senders: 5
max_replication_slots: 5
checkpoint_timeout: 30
#MY
min_wal_size: 1024
max_wal_size: 2048
shared_buffers: 8192
temp_buffers: 1024
work_mem: 2048
max_connections: 200
max_locks_per_transaction: 256
standard_conforming_strings: off
escape_string_warning: off
Добавлял через ALTER на прямую в postgresql.conf после перзапуска значение по умолчанию 64 , а нужно 256
Правил patronictl -c /etc/patroni/config.yml.in edit-config
Ребутил все что можно
И нет результат

Дополнительно:

Some of the PostgreSQL parameters must hold the same values on the primary and the replicas. For those, values set either in the local patroni configuration files or via the environment variables take no effect. To alter or set their values one must change the shared configuration in the DCS. Below is the actual list of such parameters together with the default values:
max_connections: 100
max_locks_per_transaction: 64
max_worker_processes: 8
max_prepared_transactions: 0
wal_level: hot_standby
track_commit_timestamp: off

https://patroni.readthedocs.io/en/latest/patroni_c...
всё выглядит штатно, как задумано разработчиками patroni

  • Вот и Я о том же ) Но эффект не достигнут... Копаю далее
    Закрался вопрос в голову, что если кто-то тронул руками postgresql.auto.conf ?
    как это проверить и как если что пересоздать.....Или лучше удалить совсем его ....
  • Напишу прямо: бесполезно искать или пытаться менять любым способом max_locks_per_transaction в конфигурации самого postgresql. Все вопросы только к patroni. patroni намеренно передаёт часть настроек напрямую аргументами бинарнику базы при запуске. Это высший приоритет и ничем в конфигурации базы не переопределить.
    Как менять эти 6 параметров найдите в документации patroni и только в его документации, потому что это сделано и задокументировано в patroni именно так намеренно.
  • Melkij, Спасибо Вам за ответы
    Выполнил patronictl -c /etc/patroni/config.yml.in(мой_путь_к_файлу) edit-config
    Новые параметры внес в абаз parameters :
    escape_string_warning: false
    loop_wait: 10
    maximum_lag_on_failover: 1048576
    postgresql:
    parameters:
    checkpoint_timeout: 30
    hot_standby: 'on'
    max_connections: 200
    max_locks_per_transaction: 256

    max_replication_slots: 5
    max_wal_senders: 5
    wal_keep_size: 8
    wal_level: replica
    use_pg_rewind: true
    use_slots: true
    retry_timeout: 10
    standard_conforming_strings: false
    ttl: 100

    Далее на на РЕПЛИКЕ выполнил patronictl -c /etc/patroni/config.yml.in(мой_путь_к_файлу) restart pgsql

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Роман IT Ответ

Для правильной инициализации кластера PostgreSQL и настройки его параметров, следует выполнить следующие шаги:

1. Убедитесь, что у вас установлен PostgreSQL и кластер создан. Если кластер еще не создан, выполните команду инициализации кластера, например:

initdb -D /путь/к/каталогу/кластера

initdb -D /путь/к/каталогу/кластера

2. Проверьте файл конфигурации postgresql.conf, который обычно находится в каталоге кластера (например, /etc/postgresql/12/main/postgresql.conf). Убедитесь, что в этом файле указаны правильные параметры, такие как порт, размер буферного кеша, максимальное количество подключений и т.д.

3. Также важно проверить файл pg_hba.conf, который находится в том же каталоге. В этом файле определяются правила доступа к базе данных. Убедитесь, что правила настроены правильно и разрешают доступ к базе данных.

4. После внесения изменений в конфигурационные файлы, перезапустите кластер PostgreSQL, чтобы изменения вступили в силу:

pg_ctl restart -D /путь/к/каталогу/кластера

pg_ctl restart -D /путь/к/каталогу/кластера

5. Для проверки успешной инициализации и настройки кластера, можно выполнить команду:

pg_lsclusters

pg_lsclusters

Эта команда покажет список всех кластеров PostgreSQL на вашей системе, их статус и порт, на котором они слушают.

Если после выполнения всех этих шагов кластер все равно не инициализируется или настройки не применяются, рекомендуется просмотреть логи PostgreSQL (обычно находятся в каталоге кластера в файлах с расширением .log) для выявления возможных ошибок и проблем.

Надеюсь, эти шаги помогут вам успешно настроить и инициализировать кластер PostgreSQL с необходимыми параметрами. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать их.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно