open-vault/website/content/docs/configuration/service-registration/index.mdx
Ashlee M Boyer f3df55ad58
docs: Migrate link formats (#18696)
* Adding check-legacy-links-format workflow

* Adding test-link-rewrites workflow

* Updating docs-content-check-legacy-links-format hash

* Migrating links to new format

Co-authored-by: Kendall Strautman <kendallstrautman@gmail.com>
2023-01-25 16:12:15 -08:00

68 lines
2.1 KiB
Plaintext

---
layout: docs
page_title: Service Registration - Configuration
description: |-
The optional `service_registration` stanza configures Vault's mechanism for
service registration.
---
# `service_registration` Stanza
The optional `service_registration` stanza configures Vault's mechanism for
service registration. The `service_registration` stanza is designed for use cases
where you would like to use a system like [Consul][consul] for [service
discovery][consul-discovery], but use a different system for the [storage
backend][storage-backend].
When Consul is configured as the [storage backend][consul-backend], Vault
implicitly uses Consul for service registration, so the `service_registration` stanza
is not needed.
For times when you would like to use a different storage backend, like
[Raft][raft-backend], but still have service registration available, the
`service_registration` stanza can be used:
```hcl
service_registration "consul" {
address = "127.0.0.1:8500"
}
storage "raft" {
path = "/path/to/raft/data"
node_id = "raft_node_1"
}
```
For information about a specific service registration provider, visit the [Consul Service Registration][consul-service-registration] or [Kubernetes Service Registration
][kubernetes-service-registration] pages.
## Configuration
Service registration configuration is done through the Vault configuration file
using the `service_registration` stanza:
```hcl
service_registration [NAME] {
[PARAMETERS...]
}
```
For example:
```hcl
service_registration "consul" {
address = "127.0.0.1:8500"
}
```
For configuration options which also read an environment variable, the
environment variable will take precedence over values in the configuration
file.
[consul]: https://www.consul.io/
[consul-discovery]: https://www.consul.io/
[storage-backend]: /vault/docs/configuration/storage
[consul-backend]: /vault/docs/configuration/storage/consul
[raft-backend]: /vault/docs/configuration/storage/raft
[consul-service-registration]: /vault/docs/configuration/service-registration/consul
[kubernetes-service-registration]: /vault/docs/configuration/service-registration/kubernetes