ClickHouse, An Analytics Database Proven By A MergeTree Round Trip
ClickHouse on EL 10 from the upstream LTS release (sha512-verified), as a hardened systemd service on loopback with the default user behind a password; the live test creates a MergeTree table, inserts a row and selects it back over HTTP; a query without credentials is refused. Original role, live-tested on Rocky Linux 10.
Verification
Live-testedReally deployed to a container sandbox, proven idempotent (a second run changes nothing), verified against the role’s assertions, then torn down.
Conformance
- Static validation (yamllint · ansible-lint)
Provenance
- SHA-256 checksum
- Signature (pending)
Functional
- Live-tested - applied, verified, destroyed
Last verified 2026-09-21 · podman 4.9.3 · ansible 2.21.4 · how we verify
Cite it in your README
badge · attributionPaste this beside the module in the repository that uses it. The badge is rendered from this artifact's verification record, so it reads live-tested because the record says so, and the link lands on this page.
[](https://www.iac-bazaar.com/catalog/ansible-clickhouse?utm_source=syndication&utm_medium=readme&utm_campaign=artifact)
Ansible role 1.0.0, live-tested on IaC Bazaar: [ClickHouse, An Analytics Database Proven By A MergeTree Round Trip](https://www.iac-bazaar.com/catalog/ansible-clickhouse?utm_source=syndication&utm_medium=readme&utm_campaign=artifact)
```yaml
# ClickHouse, An Analytics Database Proven By A MergeTree Round Trip: https://www.iac-bazaar.com/catalog/ansible-clickhouse (download from your IaC Bazaar account)
```Preview:
Documentation
clickhouse
ClickHouse, the columnar analytics database, from the upstream LTS release (checked against the .sha512 published beside it), as a hardened system service on loopback with the default user behind a password. Original role for EL 10, live-tested with podman on Rocky Linux 10.
No package, so the checksum is the whole story. EL 10 carries no
clickhouse; ClickHouse ships a release with a checksum file beside it. The
role downloads both and has Ansible's get_url refuse the asset unless its
SHA-512 is the one in the vendor's file, then installs the binaries as
root's in /usr/local/bin, pinned by clickhouse_version.
A service account, a hardened unit, a loopback listener. clickhouse
is a system user with no shell that owns the data directory and nothing
else; the unit runs with NoNewPrivileges, PrivateTmp, ProtectHome and
ProtectSystem=strict. The listener is 127.0.0.1:8123 by default,
for a proxy that authenticates or a client on the same host; the live test
reads the listening sockets and expects loopback only.
Proven by a MergeTree round trip. The live test creates a MergeTree table over HTTP with basic auth, inserts a row, selects it back as JSON and expects the value; a query without credentials is refused (401). Both listeners, HTTP 8123 and the native protocol 9000, are loopback only.
One big binary. ClickHouse ships one multi-call binary (clickhouse server, clickhouse client, ...) of some 800 MB in a 236 MB tarball;
the role keeps the unpacked release under /usr/local/src and installs
the binary as root's. The common-static package is the server; the
client is the same binary, clickhouse client --password ....
License
Commercial - IaC Bazaar EULA. (c) IaC Bazaar.
Usage code & full reference need an account
The complete copy-paste usage, the full input/output reference, and operational notes are free with an account - shown here and bundled in the download. Sign in and this section fills in.
- Variables
- Test
Related modules
ansible-dragonfly
Dragonfly on EL 10 from the vendor's release, pinned by a SHA-256 the role carries (the vendor publishes no checksum file), as a hardened systemd service on loopback behind a password kept in a flagfile; the live test speaks RESP itself: an unauthenticated PING and a wrong password are refused, AUTH + SET + GET round-trip. Original role, live-tested on Rocky Linux 10.
ansible-influxdb3
InfluxDB 3 Core on EL 10 from the vendor's release (checksum-verified), as a hardened systemd service on loopback with file object storage; the binary runs from its release directory (it links the Python it ships); the live test writes a point in line protocol and reads it back with SQL. Original role, live-tested on Rocky Linux 10.
ansible-mariadb-server
MariaDB bound to loopback (the package listens everywhere), with the mariadb-secure-installation steps applied by the role: anonymous users, the test database and remote root gone, LOAD DATA LOCAL off, reverse DNS off. Provisions an application database and a user that can see nothing else. Original role, live-tested on Rocky Linux 10.
ansible-meilisearch
Meilisearch on EL 10 from the vendor's release, pinned by a SHA-256 the role carries (the vendor publishes no checksum file), as a hardened systemd service on loopback in production mode behind a master key; the live test creates an index and documents, waits for the indexing task, searches and finds the one match, and sees a keyless request refused. Original role, live-tested on Rocky Linux 10.
ansible-mongodb
MongoDB Community 8.0 from MongoDB's repository, its key pinned by fingerprint: authorization on from the first start, the first administrator made through the localhost exception with a generated password, SCRAM-SHA-256 only, loopback. The live test writes as the administrator and is refused anonymously, with a wrong password and over SCRAM-SHA-1. Original role, live-tested on Rocky Linux 10.
ansible-opensearch
OpenSearch 3 (sha512-verified min distribution, bundled JDK), one node on EL 10 from the upstream release, as a hardened systemd service on loopback; the live test reads the root document, indexes one document with a refresh, finds it by a search, deletes the index and checks the keystore belongs to the service; the release tree stays read-only. Original role, live-tested on Rocky Linux 10.