Version information
released Feb 3rd 2024
This version is compatible with:
- Puppet Enterprise 2023.5.x, 2023.4.x, 2023.3.x, 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x
- Puppet >= 6.21.0 < 9.0.0
- , , , , ,
Start using this module
Add this module to your Puppetfile:
mod 'deric-clickhouse_keeper', '0.2.0'
Learn more about managing modules with a PuppetfileDocumentation
deric/clickhouse_keeper — version 0.2.0 Feb 3rd 2024
Puppet ClickHouse Keeper
A Puppet module to manage ClickHouse Keeper installation. ClickHouse Keeper provides distributed key-value storage with API taht is compatible with ZooKeeper.
Unlike ZooKeeper ClickHouse Keeper is written in C++ and uses the RAFT algorithm implementation. This algorithm allows linearizability for reads and writes, and has several open-source implementations in different languages.
Usage
include clickhouse_keeper
And you might want to modify configuration for incoming client connections, ClickHouse Keeper tcp_port
defaults to 9181
.
clickhouse_keeper::tcp_port: 2181
clickhouse_keeper::listen_host: 0.0.0.0
clickhouse_keeper::enable_ipv6: false
clickhouse_keeper::address: "%{facts.fqdn}"
Parameters
address
Exported address to raft config, used only whenexport_raft
is trueid
Must be unique among serverscluster
Used to distinguish multiple clusters when configuration is exportedmanage_config
manage_repo
Whether APT/RPM repository should be managed by Puppetmanage_package
manage_user
manage_service
export_raft
raft_config
raft_port
Port for internal communication between ClickHouse Keeper nodesgenerate_certs
packages
OS packages to be installedpackage_ensure
package_install_options
owner
System user account to own config filesgroup
System group to own config filesconfig_dir
Path to config directoryconfig_file
log_level
raft_log_level
log_file
error_file
log_size
log_count
listen_host
Bind address for client connectionsenable_ipv6
Whether IPv6 address should be binded (default:true
).max_connections
default:4096
service_name
service_enable
service_ensure
tcp_port
Port for client connectionstcp_port_secure
SSL port, requires valid certificatescertificate
Path to public ssl certificateprivate_key
Path to private ssl certificate keydhparams
Path to DH params fileprometheus_port
If defined metrics will be exposed at given port and /metrics endpointlog_storage_path
Keeper coordination logs (raft)snapshot_storage_path
Snapshots pathoperation_timeout
min_session_timeout
session_timeout
Acceptance tests
BEAKER_destroy=no BEAKER_setfile=debian10-64 bundle exec rake beaker
Dependencies
- puppetlabs/stdlib (>= 4.20.0 < 10.0.0)
- puppetlabs/apt (>= 4.4.0 < 10.0.0)
- puppetlabs/concat (>= 2.1.0 < 10.0.0)
- puppetlabs/yumrepo_core (>= 1.0.0)