open-vault/website/content/docs/configuration/storage/cockroachdb.mdx
Joel Kenny 2f1502556a
docs/configuration: document CockroachDB HA mode (#16202)
HA support for CockroachDB was added in #12965. This commit updates the docs
to reflect that support.
2022-07-11 12:00:51 -07:00

72 lines
2.4 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
layout: docs
page_title: CockroachDB - Storage Backends - Configuration
description: >-
The CockroachDB storage backend is used to persist Vault's data in a
CockroachDB server or cluster.
---
# CockroachDB Storage Backend
The CockroachDB storage backend is used to persist Vault's data in a
[CockroachDB][cockroachdb] server or cluster.
- **High Availability** the CockroachDB storage backend supports high availability.
- **Community Supported** the CockroachDB storage backend is supported by the
community. While it has undergone development and review by HashiCorp
employees, they may not be as knowledgeable about the technology.
```hcl
storage "cockroachdb" {
connection_url = "postgres://user123:secret123!@localhost:5432/vault"
}
```
**Note** - CockroachDB is compatible with the PostgreSQL database driver and
uses that driver to interact with the database.
## `cockroachdb` Parameters
- `connection_url` `(string: <required>)`  Specifies the connection string to
use to authenticate and connect to CockroachDB. A full list of supported
parameters can be found in the [pgx library][pgxlib] and [PostgreSQL connection string][pg_conn_docs]
documentation. For example connection string URLs, see the examples section below.
- `table` `(string: "vault_kv_store")` Specifies the name of the table in
which to write Vault data. If this table does not exist Vault will attempt to create it.
- `max_parallel` `(string: "128")` Specifies the maximum number of concurrent
requests to CockroachDB.
- `ha_enabled` `(string: "true|false")` - Default not enabled.
- `ha_table` `(string: "vault_ha_locks")` - Specifies the name of the table to use
for storing high availability information.
## `cockroachdb` Examples
This example shows connecting to a CockroachDB cluster using full SSL
verification (recommended) and high availability enabled.
```hcl
storage "cockroachdb" {
connection_url = "postgres://user:pass@localhost:26257/database?sslmode=verify-full"
ha_enabled = "true"
}
```
To disable SSL verification (not recommended), replace `verify-full` with
`disable`:
```hcl
storage "cockroachdb" {
connection_url = "postgres://user:pass@localhost:26257/database?sslmode=disable"
ha_enabled = "true"
}
```
[cockroachdb]: https://www.cockroachlabs.com/
[pgxlib]: https://pkg.go.dev/github.com/jackc/pgx/stdlib
[pg_conn_docs]: https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-CONNSTRING