Skip to content

Latest commit

 

History

History
1185 lines (660 loc) · 29.1 KB

REFERENCE.md

File metadata and controls

1185 lines (660 loc) · 29.1 KB

Reference

Table of Contents

Classes

  • patroni: Manages a Patroni instance

Resource types

Classes

patroni

Manages a Patroni instance

Parameters

The following parameters are available in the patroni class:

scope

Data type: String

Refer to Patroni Global scope setting

namespace

Data type: String

Refer to Patroni Global namespace setting

Default value: '/service/'

hostname

Data type: String

Refer to Patroni Global name setting

Default value: $facts['networking']['hostname']

dcs_loop_wait

Data type: Integer

Refer to Patroni Dynamic Configuration Settings loop_wait setting

Default value: 10

dcs_ttl

Data type: Integer

Refer to Patroni Dynamic Configuration Settings ttl setting

Default value: 30

dcs_retry_timeout

Data type: Integer

Refer to Patroni Dynamic Configuration Settings retry_timeout setting

Default value: 10

dcs_maximum_lag_on_failover

Data type: Integer

Refer to Patroni Dynamic Configuration Settings maximum_lag_on_failover setting

Default value: 1048576

dcs_master_start_timeout

Data type: Integer

Refer to Patroni Dynamic Configuration Settings master_start_timeout setting

Default value: 300

dcs_synchronous_mode

Data type: Boolean

Refer to Patroni Dynamic Configuration Settings synchronous_mode setting

Default value: false

dcs_synchronous_mode_strict

Data type: Boolean

Refer to Patroni Dynamic Configuration Settings synchronous_mode_strict setting

Default value: false

dcs_postgresql_use_pg_rewind

Data type: Boolean

Refer to Patroni Dynamic Configuration Settings postgresql_use_pg_rewind setting

Default value: true

dcs_postgresql_use_slots

Data type: Boolean

Refer to Patroni Dynamic Configuration Settings postgresql_use_slots setting

Default value: true

dcs_postgresql_recovery_conf

Data type: Hash

Refer to Patroni Dynamic Configuration Settings postgresql_recovery_conf setting

Default value: {}

dcs_postgresql_parameters

Data type: Hash

Refer to Patroni Dynamic Configuration Settings postgresql_parameters setting

Default value: {}

bootstrap_method

Data type: String[1]

Refer to Bootstrap configuration settings method setting

Default value: 'initdb'

initdb_data_checksums

Data type: Boolean

Refer to Bootstrap configuration settings data-checksums setting

Default value: true

initdb_encoding

Data type: String

Refer to Bootstrap configuration settings encoding setting

Default value: 'UTF8'

initdb_locale

Data type: String

Refer to Bootstrap configuration settings locale setting

Default value: 'en_US.utf8'

bootstrap_pg_hba

Data type: Array[String]

Refer to Bootstrap configuration settings pg_hba setting

Default value:

[
    'host all all 0.0.0.0/0 md5',
    'host replication rep_user 0.0.0.0/0 md5',
  ]
bootstrap_users

Data type: Hash

Refer to Bootstrap configuration settings users setting

Default value: {}

bootstrap_post_bootstrap

Data type: Variant[Undef,String]

Refer to Bootstrap configuration settings post_bootstrap setting

Default value: undef

bootstrap_post_init

Data type: Variant[Undef,String]

Refer to Bootstrap configuration settings post_init setting

Default value: undef

superuser_username

Data type: String

Refer to PostgreSQL configuration settings superuser username

Default value: 'postgres'

superuser_password

Data type: String

Refer to PostgreSQL configuration settings superuser password

Default value: 'changeme'

replication_username

Data type: String

Refer to PostgreSQL configuration settings replication username

Default value: 'rep_user'

replication_password

Data type: String

Refer to PostgreSQL configuration settings replication password

Default value: 'changeme'

callback_on_reload

Data type: Variant[Undef,String]

Refer to PostgreSQL configuration settings callbacks on_reload

Default value: undef

callback_on_restart

Data type: Variant[Undef,String]

Refer to PostgreSQL configuration settings callbacks on_restart

Default value: undef

callback_on_role_change

Data type: Variant[Undef,String]

Refer to PostgreSQL configuration settings callbacks on_role_change

Default value: undef

callback_on_start

Data type: Variant[Undef,String]

Refer to PostgreSQL configuration settings callbacks on_start

Default value: undef

callback_on_stop

Data type: Variant[Undef,String]

Refer to PostgreSQL configuration settings callbacks on_stop

Default value: undef

pgsql_connect_address

Data type: String

Refer to PostgreSQL configuration settings connect_address setting

Default value: "${facts['networking']['fqdn']}:5432"

pgsql_create_replica_methods

Data type: Array[String]

Refer to PostgreSQL configuration settings create_replica_methods setting

Default value: ['basebackup']

pgsql_data_dir

Data type: Optional[Stdlib::Unixpath]

Refer to PostgreSQL configuration settings data_dir setting

Default value: undef

pgsql_config_dir

Data type: Variant[Undef,String]

Refer to PostgreSQL configuration settings config_dir setting

Default value: undef

pgsql_bin_dir

Data type: Variant[Undef,String]

Refer to PostgreSQL configuration settings bin_dir setting

Default value: undef

pgsql_listen

Data type: String

Refer to PostgreSQL configuration settings listen setting

Default value: '0.0.0.0:5432'

pgsql_use_unix_socket

Data type: Boolean

Refer to PostgreSQL configuration settings use_unix_socket setting

Default value: false

pgsql_pgpass_path

Data type: String

Refer to PostgreSQL configuration settings pgpass_path setting

Default value: '/tmp/pgpass0'

pgsql_recovery_conf

Data type: Hash

Refer to PostgreSQL configuration settings recovery_conf setting

Default value: {}

pgsql_custom_conf

Data type: Variant[Undef,String]

Refer to PostgreSQL configuration settings custom_conf setting

Default value: undef

pgsql_parameters

Data type: Hash

Refer to PostgreSQL configuration settings parameters setting

Default value: {}

pgsql_pg_hba

Data type: Array[String]

Refer to PostgreSQL configuration settings pg_hba setting

Default value: []

pgsql_pg_ctl_timeout

Data type: Integer

Refer to PostgreSQL configuration settings pg_ctl_timeout setting

Default value: 60

pgsql_use_pg_rewind

Data type: Boolean

Refer to PostgreSQL configuration settings use_pg_rewind setting

Default value: true

pgsql_remove_data_directory_on_rewind_failure

Data type: Boolean

Refer to PostgreSQL configuration settings remove_data_directory_on_rewind_failure setting

Default value: false

pgsql_replica_method

Data type: Array[Hash]

Refer to PostgreSQL configuration settings replica_method setting

Default value: []

manage_postgresql_repo

Data type: Boolean

Should the postgresql module manage the package repo

Default value: true

use_consul

Data type: Boolean

Boolean to use Consul for configuration storage

Default value: false

consul_host

Data type: String

Refer to Consul configuration host setting

Default value: 'localhost'

consul_url

Data type: Variant[Undef,String]

Refer to Consul configuration url setting

Default value: undef

consul_port

Data type: Stdlib::Port

Refer to Consul configuration port setting

Default value: 8500

consul_scheme

Data type: Enum['http','https']

Refer to Consul configuration scheme setting

Default value: 'http'

consul_token

Data type: Variant[Undef,String]

Refer to Consul configuration token setting

Default value: undef

consul_verify

Data type: Boolean

Refer to Consul configuration verify setting

Default value: false

consul_register_service

Data type: Optional[Boolean]

Refer to Consul configuration register_service setting

Default value: undef

consul_service_check_interval

Data type: Optional[String]

Refer to Consul configuration service_check_interval setting

Default value: undef

consul_consistency

Data type: Optional[Enum['default', 'consistent', 'stale']]

Refer to Consul configuration consistency setting

Default value: undef

consul_cacert

Data type: Variant[Undef,String]

Refer to Consul configuration cacert setting

Default value: undef

consul_cert

Data type: Variant[Undef,String]

Refer to Consul configuration cert setting

Default value: undef

consul_key

Data type: Variant[Undef,String]

Refer to Consul configuration key setting

Default value: undef

consul_dc

Data type: Variant[Undef,String]

Refer to Consul configuration dc setting

Default value: undef

consul_checks

Data type: Variant[Undef,String]

Refer to Consul configuration checks setting

Default value: undef

use_etcd

Data type: Boolean

Boolean to use Etcd for configuration storage

Default value: false

etcd_host

Data type: String

Refer to Etcd configuration host setting

Default value: '127.0.0.1:2379'

etcd_hosts

Data type: Array[String]

Refer to Etcd configuration hosts setting

Default value: []

etcd_url

Data type: Variant[Undef,String]

Refer to Etcd configuration url setting

Default value: undef

etcd_proxyurl

Data type: Variant[Undef,String]

Refer to Etcd configuration proxy setting

Default value: undef

etcd_srv

Data type: Variant[Undef,String]

Refer to Etcd configuration srv setting

Default value: undef

etcd_protocol

Data type: Enum['http','https']

Refer to Etcd configuration protocol setting

Default value: 'http'

etcd_username

Data type: Variant[Undef,String]

Refer to Etcd configuration username setting

Default value: undef

etcd_password

Data type: Variant[Undef,String]

Refer to Etcd configuration password setting

Default value: undef

etcd_cacert

Data type: Variant[Undef,String]

Refer to Etcd configuration cacert setting

Default value: undef

etcd_cert

Data type: Variant[Undef,String]

Refer to Etcd configuration cert setting

Default value: undef

etcd_key

Data type: Variant[Undef,String]

Refer to Etcd configuration key setting

Default value: undef

use_exhibitor

Data type: Boolean

Boolean to use Exhibitor configuration storage

Default value: false

exhibitor_hosts

Data type: Array[String]

Refer to Exhibitor configuration hosts setting

Default value: []

exhibitor_poll_interval

Data type: Integer

Refer to Exhibitor configuration poll_interval setting

Default value: 10

exhibitor_port

Data type: Integer

Refer to Exhibitor configuration port setting

Default value: 8080

use_kubernetes

Data type: Boolean

Boolean to use Kubernetes configuration storage

Default value: false

kubernetes_namespace

Data type: String

Refer to Kubernetes configuration namespace setting

Default value: 'default'

kubernetes_labels

Data type: Hash

Refer to Kubernetes configuration labels setting

Default value: {}

kubernetes_scope_label

Data type: Variant[Undef,String]

Refer to Kubernetes configuration scope_label setting

Default value: undef

kubernetes_role_label

Data type: Variant[Undef,String]

Refer to Kubernetes configuration role_label setting

Default value: undef

kubernetes_use_endpoints

Data type: Boolean

Refer to Kubernetes configuration use_endpoints setting

Default value: false

kubernetes_pod_ip

Data type: Variant[Undef,String]

Refer to Kubernetes configuration pod_ip setting

Default value: undef

kubernetes_ports

Data type: Variant[Undef,String]

Refer to Kubernetes configuration ports setting

Default value: undef

restapi_ciphers

Data type: Optional[String]

Refer to REST API configuration ciphers setting

Default value: undef

restapi_connect_address

Data type: String

Refer to REST API configuration connect_address setting

Default value: "${facts['networking']['fqdn']}:8008"

restapi_listen

Data type: String

Refer to REST API configuration listen setting

Default value: '0.0.0.0:8008'

restapi_username

Data type: Variant[Undef,String]

Refer to REST API configuration username setting

Default value: undef

restapi_password

Data type: Variant[Undef,String]

Refer to REST API configuration password setting

Default value: undef

restapi_certfile

Data type: Variant[Undef,String]

Refer to REST API configuration certfile setting

Default value: undef

restapi_keyfile

Data type: Variant[Undef,String]

Refer to REST API configuration keyfile setting

Default value: undef

restapi_cafile

Data type: Optional[String]

Refer to REST API configuration cafile setting

Default value: undef

restapi_verify_client

Data type: Optional[Enum['none','optional','required']]

Refer to REST API configuration verify_client setting

Default value: undef

use_zookeeper

Data type: Boolean

Boolean to enable Zookeeper configuration storage

Default value: false

zookeeper_hosts

Data type: Array[String]

Refer to Zookeeper configuration hosts setting

Default value: []

watchdog_mode

Data type: Enum['off','automatic','required']

Refer to Watchdog configuration mode setting

Default value: 'automatic'

watchdog_device

Data type: String

Refer to Watchdog configuration device setting

Default value: '/dev/watchdog'

watchdog_safety_margin

Data type: Integer

Refer to Watchdog configuration safety_margin setting

Default value: 5

manage_postgresql

Data type: Boolean

Boolean to determine if postgresql is managed

Default value: true

postgresql_version

Data type: Optional[String]

Version of postgresql passed to postgresql::globals class

Default value: undef

package_name

Data type: String

Patroni package name, only used when install_method is package

Default value: 'patroni'

version

Data type: String

Version of Patroni to install

Default value: 'present'

install_dependencies

Data type: Array

Install dependencies, only used when install_method is pip

Default value: []

manage_python

Data type: Boolean

Manage Python class, only used when install_method is pip

Default value: true

install_method

Data type: Enum['package','pip']

Install method

Default value: 'pip'

install_dir

Data type: Stdlib::Absolutepath

Install directory, only used when install_method is pip

Default value: '/opt/app/patroni'

python_class_version

Data type: String

The version of Python to pass to Python class Only used when install_method is pip

Default value: '36'

python_venv_version

Data type: String

The version of Python to pass to Python virtualenv defined type Only used when install_method is pip

Default value: '3.6'

manage_venv_package

Data type: Boolean

Whether to manage the Python venv package

Default value: true

config_path

Data type: String

Path to Patroni configuration file

Default value: '/opt/app/patroni/etc/postgresql.yml'

config_owner

Data type: String

Patroni configuration file owner

Default value: 'postgres'

config_group

Data type: String

Patroni configuration file group

Default value: 'postgres'

config_mode

Data type: String

Patroni configuration file mode

Default value: '0600'

service_name

Data type: String

Name of Patroni service

Default value: 'patroni'

service_ensure

Data type: String

Patroni service ensure property

Default value: 'running'

service_enable

Data type: Boolean

Patroni service enable property

Default value: true

custom_pip_provider

Data type: Optional[String[1]]

Use custom pip path when installing pip packages

Default value: undef

Resource types

patroni_dcs_config

Manages Patroni DCS configuration options

Examples

Set PostgreSQL max connections
patroni_dcs_config { 'postgresql.params.max_connections':
  value => '200',
}

Properties

The following properties are available in the patroni_dcs_config type.

value

The value to assign the DCS configuration

Parameters

The following parameters are available in the patroni_dcs_config type.

name

namevar

The DCS configuration option name

provider

The specific backend to use for this patroni_dcs_config resource. You will seldom need to specify this --- Puppet will usually discover the appropriate provider for your platform.

patronictl_config

NOTE This is a private type not intended to be used directly.

Parameters

The following parameters are available in the patronictl_config type.

config

patronictl config

Default value: /opt/app/patroni/etc/postgresql.yml

name

namevar

The name of the resource.

path

patronictl path

Default value: /opt/app/patroni/bin/patronictl