patroni: Manages a Patroni instance
patroni_dcs_config: Manages Patroni DCS configuration optionspatronictl_config: Abstract type to configure other types
Manages a Patroni instance
The following parameters are available in the patroni class:
scopenamespacehostnamedcs_loop_waitdcs_ttldcs_retry_timeoutdcs_maximum_lag_on_failoverdcs_master_start_timeoutdcs_synchronous_modedcs_synchronous_mode_strictdcs_postgresql_use_pg_rewinddcs_postgresql_use_slotsdcs_postgresql_recovery_confdcs_postgresql_parametersbootstrap_methodinitdb_data_checksumsinitdb_encodinginitdb_localebootstrap_pg_hbabootstrap_usersbootstrap_post_bootstrapbootstrap_post_initsuperuser_usernamesuperuser_passwordreplication_usernamereplication_passwordcallback_on_reloadcallback_on_restartcallback_on_role_changecallback_on_startcallback_on_stoppgsql_connect_addresspgsql_create_replica_methodspgsql_data_dirpgsql_config_dirpgsql_bin_dirpgsql_listenpgsql_use_unix_socketpgsql_pgpass_pathpgsql_recovery_confpgsql_custom_confpgsql_parameterspgsql_pg_hbapgsql_pg_ctl_timeoutpgsql_use_pg_rewindpgsql_remove_data_directory_on_rewind_failurepgsql_replica_methodmanage_postgresql_repouse_consulconsul_hostconsul_urlconsul_portconsul_schemeconsul_tokenconsul_verifyconsul_register_serviceconsul_service_check_intervalconsul_consistencyconsul_cacertconsul_certconsul_keyconsul_dcconsul_checksuse_etcdetcd_hostetcd_hostsetcd_urletcd_proxyurletcd_srvetcd_protocoletcd_usernameetcd_passwordetcd_cacertetcd_certetcd_keyuse_exhibitorexhibitor_hostsexhibitor_poll_intervalexhibitor_portuse_kuberneteskubernetes_namespacekubernetes_labelskubernetes_scope_labelkubernetes_role_labelkubernetes_use_endpointskubernetes_pod_ipkubernetes_portsrestapi_ciphersrestapi_connect_addressrestapi_listenrestapi_usernamerestapi_passwordrestapi_certfilerestapi_keyfilerestapi_cafilerestapi_verify_clientuse_zookeeperzookeeper_hostswatchdog_modewatchdog_devicewatchdog_safety_marginmanage_postgresqlpostgresql_versionpackage_nameversioninstall_dependenciesmanage_pythoninstall_methodinstall_dirpython_class_versionpython_venv_versionmanage_venv_packageconfig_pathconfig_ownerconfig_groupconfig_modeservice_nameservice_ensureservice_enablecustom_pip_provideris_standbystandby_cluster_hoststandby_cluster_portstandby_cluster_primary_slot_name
Data type: String[1]
Refer to Patroni Global scope setting
Data type: String[1]
Refer to Patroni Global namespace setting
Default value: '/service/'
Data type: String
Refer to Patroni Global name setting
Default value: $facts['networking']['hostname']
Data type: Integer
Refer to Patroni Dynamic Configuration Settings loop_wait setting
Default value: 10
Data type: Integer
Refer to Patroni Dynamic Configuration Settings ttl setting
Default value: 30
Data type: Integer
Refer to Patroni Dynamic Configuration Settings retry_timeout setting
Default value: 10
Data type: Integer
Refer to Patroni Dynamic Configuration Settings maximum_lag_on_failover setting
Default value: 1048576
Data type: Integer
Refer to Patroni Dynamic Configuration Settings master_start_timeout setting
Default value: 300
Data type: Boolean
Refer to Patroni Dynamic Configuration Settings synchronous_mode setting
Default value: false
Data type: Boolean
Refer to Patroni Dynamic Configuration Settings synchronous_mode_strict setting
Default value: false
Data type: Boolean
Refer to Patroni Dynamic Configuration Settings postgresql_use_pg_rewind setting
Default value: true
Data type: Boolean
Refer to Patroni Dynamic Configuration Settings postgresql_use_slots setting
Default value: true
Data type: Hash
Refer to Patroni Dynamic Configuration Settings postgresql_recovery_conf setting
Default value: {}
Data type: Hash
Refer to Patroni Dynamic Configuration Settings postgresql_parameters setting
Default value: {}
Data type: String[1]
Refer to Bootstrap configuration settings method setting
Default value: 'initdb'
Data type: Boolean
Refer to Bootstrap configuration settings data-checksums setting
Default value: true
Data type: String
Refer to Bootstrap configuration settings encoding setting
Default value: 'UTF8'
Data type: String
Refer to Bootstrap configuration settings locale setting
Default value: 'en_US.utf8'
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',
]Data type: Hash
Refer to Bootstrap configuration settings users setting
Default value: {}
Data type: Variant[Undef,String]
Refer to Bootstrap configuration settings post_bootstrap setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Bootstrap configuration settings post_init setting
Default value: undef
Data type: String
Refer to PostgreSQL configuration settings superuser username
Default value: 'postgres'
Data type: String
Refer to PostgreSQL configuration settings superuser password
Default value: 'changeme'
Data type: String
Refer to PostgreSQL configuration settings replication username
Default value: 'rep_user'
Data type: String
Refer to PostgreSQL configuration settings replication password
Default value: 'changeme'
Data type: Variant[Undef,String]
Refer to PostgreSQL configuration settings callbacks on_reload
Default value: undef
Data type: Variant[Undef,String]
Refer to PostgreSQL configuration settings callbacks on_restart
Default value: undef
Data type: Variant[Undef,String]
Refer to PostgreSQL configuration settings callbacks on_role_change
Default value: undef
Data type: Variant[Undef,String]
Refer to PostgreSQL configuration settings callbacks on_start
Default value: undef
Data type: Variant[Undef,String]
Refer to PostgreSQL configuration settings callbacks on_stop
Default value: undef
Data type: String
Refer to PostgreSQL configuration settings connect_address setting
Default value: "${facts['networking']['fqdn']}:5432"
Data type: Array[String]
Refer to PostgreSQL configuration settings create_replica_methods setting
Default value: ['basebackup']
Data type: Optional[Stdlib::Unixpath]
Refer to PostgreSQL configuration settings data_dir setting
Default value: undef
Data type: Variant[Undef,String]
Refer to PostgreSQL configuration settings config_dir setting
Default value: undef
Data type: Variant[Undef,String]
Refer to PostgreSQL configuration settings bin_dir setting
Default value: undef
Data type: String
Refer to PostgreSQL configuration settings listen setting
Default value: '0.0.0.0:5432'
Data type: Boolean
Refer to PostgreSQL configuration settings use_unix_socket setting
Default value: false
Data type: String
Refer to PostgreSQL configuration settings pgpass_path setting
Default value: '/tmp/pgpass0'
Data type: Hash
Refer to PostgreSQL configuration settings recovery_conf setting
Default value: {}
Data type: Variant[Undef,String]
Refer to PostgreSQL configuration settings custom_conf setting
Default value: undef
Data type: Hash
Refer to PostgreSQL configuration settings parameters setting
Default value: {}
Data type: Array[String]
Refer to PostgreSQL configuration settings pg_hba setting
Default value: []
Data type: Integer
Refer to PostgreSQL configuration settings pg_ctl_timeout setting
Default value: 60
Data type: Boolean
Refer to PostgreSQL configuration settings use_pg_rewind setting
Default value: true
Data type: Boolean
Refer to PostgreSQL configuration settings remove_data_directory_on_rewind_failure setting
Default value: false
Data type: Array[Hash]
Refer to PostgreSQL configuration settings replica_method setting
Default value: []
Data type: Boolean
Should the postgresql module manage the package repo
Default value: true
Data type: Boolean
Boolean to use Consul for configuration storage
Default value: false
Data type: String
Refer to Consul configuration host setting
Default value: 'localhost'
Data type: Variant[Undef,String]
Refer to Consul configuration url setting
Default value: undef
Data type: Stdlib::Port
Refer to Consul configuration port setting
Default value: 8500
Data type: Enum['http','https']
Refer to Consul configuration scheme setting
Default value: 'http'
Data type: Variant[Undef,String]
Refer to Consul configuration token setting
Default value: undef
Data type: Boolean
Refer to Consul configuration verify setting
Default value: false
Data type: Optional[Boolean]
Refer to Consul configuration register_service setting
Default value: undef
Data type: Optional[String]
Refer to Consul configuration service_check_interval setting
Default value: undef
Data type: Optional[Enum['default', 'consistent', 'stale']]
Refer to Consul configuration consistency setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Consul configuration cacert setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Consul configuration cert setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Consul configuration key setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Consul configuration dc setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Consul configuration checks setting
Default value: undef
Data type: Boolean
Boolean to use Etcd for configuration storage
Default value: false
Data type: String
Refer to Etcd configuration host setting
Default value: '127.0.0.1:2379'
Data type: Array[String]
Refer to Etcd configuration hosts setting
Default value: []
Data type: Variant[Undef,String]
Refer to Etcd configuration url setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Etcd configuration proxy setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Etcd configuration srv setting
Default value: undef
Data type: Enum['http','https']
Refer to Etcd configuration protocol setting
Default value: 'http'
Data type: Variant[Undef,String]
Refer to Etcd configuration username setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Etcd configuration password setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Etcd configuration cacert setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Etcd configuration cert setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Etcd configuration key setting
Default value: undef
Data type: Boolean
Boolean to use Exhibitor configuration storage
Default value: false
Data type: Array[String]
Refer to Exhibitor configuration hosts setting
Default value: []
Data type: Integer
Refer to Exhibitor configuration poll_interval setting
Default value: 10
Data type: Integer
Refer to Exhibitor configuration port setting
Default value: 8080
Data type: Boolean
Boolean to use Kubernetes configuration storage
Default value: false
Data type: String
Refer to Kubernetes configuration namespace setting
Default value: 'default'
Data type: Hash
Refer to Kubernetes configuration labels setting
Default value: {}
Data type: Variant[Undef,String]
Refer to Kubernetes configuration scope_label setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Kubernetes configuration role_label setting
Default value: undef
Data type: Boolean
Refer to Kubernetes configuration use_endpoints setting
Default value: false
Data type: Variant[Undef,String]
Refer to Kubernetes configuration pod_ip setting
Default value: undef
Data type: Variant[Undef,String]
Refer to Kubernetes configuration ports setting
Default value: undef
Data type: Optional[String]
Refer to REST API configuration ciphers setting
Default value: undef
Data type: String
Refer to REST API configuration connect_address setting
Default value: "${facts['networking']['fqdn']}:8008"
Data type: String
Refer to REST API configuration listen setting
Default value: '0.0.0.0:8008'
Data type: Variant[Undef,String]
Refer to REST API configuration username setting
Default value: undef
Data type: Variant[Undef,String]
Refer to REST API configuration password setting
Default value: undef
Data type: Variant[Undef,String]
Refer to REST API configuration certfile setting
Default value: undef
Data type: Variant[Undef,String]
Refer to REST API configuration keyfile setting
Default value: undef
Data type: Optional[String]
Refer to REST API configuration cafile setting
Default value: undef
Data type: Optional[Enum['none','optional','required']]
Refer to REST API configuration verify_client setting
Default value: undef
Data type: Boolean
Boolean to enable Zookeeper configuration storage
Default value: false
Data type: Array[String[1]]
Refer to Zookeeper configuration hosts setting
Default value: []
Data type: Enum['off','automatic','required']
Refer to Watchdog configuration mode setting
Default value: 'automatic'
Data type: Stdlib::Absolutepath
Refer to Watchdog configuration device setting
Default value: '/dev/watchdog'
Data type: Integer
Refer to Watchdog configuration safety_margin setting
Default value: 5
Data type: Boolean
Boolean to determine if postgresql is managed
Default value: true
Data type: Optional[String[1]]
Version of postgresql passed to postgresql::globals class
Default value: undef
Data type: String[1]
Patroni package name, only used when install_method is package
Default value: 'patroni'
Data type: String[1]
Version of Patroni to install
Default value: 'present'
Data type: Array[String[1]]
Install dependencies, only used when install_method is pip
Default value: []
Data type: Boolean
Manage Python class, only used when install_method is pip
Default value: true
Data type: Enum['package','pip']
Install method
Default value: 'pip'
Data type: Stdlib::Absolutepath
Install directory, only used when install_method is pip
Default value: '/opt/app/patroni'
Data type: String[1]
The version of Python to pass to Python class
Only used when install_method is pip
Default value: '36'
Data type: String[1]
The version of Python to pass to Python virtualenv defined type
Only used when install_method is pip
Default value: '3.6'
Data type: Boolean
Whether to manage the Python venv package
Default value: true
Data type: Stdlib::Absolutepath
Path to Patroni configuration file
Default value: '/opt/app/patroni/etc/postgresql.yml'
Data type: String[1]
Patroni configuration file owner
Default value: 'postgres'
Data type: String[1]
Patroni configuration file group
Default value: 'postgres'
Data type: Stdlib::Filemode
Patroni configuration file mode
Default value: '0600'
Data type: String[1]
Name of Patroni service
Default value: 'patroni'
Data type: Enum['running', 'stopped']
Patroni service ensure property
Default value: 'running'
Data type: Boolean
Patroni service enable property
Default value: true
Data type: Optional[String[1]]
Use custom pip path when installing pip packages
Default value: undef
Data type: Boolean
Boolean to use Standby cluster
Default value: false
Data type: String
Refer to Standby configuration host setting
Default value: '127.0.0.1'
Data type: Stdlib::Port
Refer to Standby configuration port setting
Default value: 5432
Data type: String[1]
Refer to Standby configuration slot setting
Default value: 'patroni'
Manages Patroni DCS configuration options
patroni_dcs_config { 'postgresql.params.max_connections':
value => '200',
}The following properties are available in the patroni_dcs_config type.
The value to assign the DCS configuration
The following parameters are available in the patroni_dcs_config type.
namevar
The DCS configuration option name
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.
NOTE This is a private type not intended to be used directly.
The following parameters are available in the patronictl_config type.
patronictl config
Default value: /opt/app/patroni/etc/postgresql.yml
namevar
The name of the resource.
patronictl path
Default value: /opt/app/patroni/bin/patronictl