Spec-Zone.ru › Chef 17

postgres_conf ресурс

[править на GitHub]

Используйте postgres_conf ресурс проверки Chef InSpec, чтобы проверить содержимое файла конфигурации PostgreSQL, обычно расположенного по адресу /etc/postgresql/<version>/main/postgresql.conf или /var/lib/postgres/data/postgresql.conf, в зависимости от платформы.

Доступность

Установка

Этот ресурс распространяется вместе с самим Chef InSpec. Вы можете использовать его автоматически.

Версия

Этот ресурс впервые стал доступен в версии v1.0.0 InSpec.

Синтаксис

Блок ресурса postgres_conf объявляет одну (или несколько) настройку в файле postgresql.conf, а затем сравнивает настройку в файле конфигурации со значением, указанным в тесте:

describe postgres_conf('path') do
  its('setting') { should eq 'value' }
end

где

  • 'setting' указывает настройку в файле postgresql.conf
  • ('path') — это нестандартный путь к файлу postgresql.conf (необязательно)
  • should eq 'value' — это ожидаемое значение

Свойства

Этот ресурс поддерживает любые настройки, перечисленные в файле postgresql.conf, как свойства, например max_connections

its('max_connections') { should eq '5' }

Примеры

Следующие примеры показывают, как использовать этот ресурс аудита Chef InSpec.

Проверка максимального количества разрешенных подключений клиентов

describe postgres_conf do
  its('max_connections') { should eq '5' }
end

Проверка системного ведения журнала

describe postgres_conf do
  its('logging_collector') { should eq 'on' }
  its('log_connections') { should eq 'on' }
  its('log_disconnections') { should eq 'on' }
  its('log_duration') { should eq 'on' }
  its('log_hostname') { should eq 'on' }
  its('log_line_prefix') { should eq '%t %u %d %h' }
  its(['pgaudit.log_parameter']) { should cmp 'on' }
end

Проверка порта, на котором PostgreSQL прослушивает

describe postgres_conf do
  its('port') { should eq '5432' }
end

Проверка настроек Unix-сокет

describe postgres_conf do
  its('unix_socket_directories') { should eq '.s.PGSQL.5432' }
  its('unix_socket_group') { should eq nil }
  its('unix_socket_permissions') { should eq '0770' }
end

где unix_socket_group устанавливается в значение по умолчанию PostgreSQL (группа, к которой принадлежит пользователь сервера).

Матчеры

Полный список доступных матчеров можно найти на нашей странице матчеров.

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/postgres_conf/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API