mirror of
https://github.com/hashicorp/vault.git
synced 2026-06-10 17:32:29 -04:00
* conversion stage 1 * correct image paths * add sidebar title to frontmatter * docs/concepts and docs/internals * configuration docs and multi-level nav corrections * commands docs, index file corrections, small item nav correction * secrets converted * auth * add enterprise and agent docs * add extra dividers * secret section, wip * correct sidebar nav title in front matter for apu section, start working on api items * auth and backend, a couple directory structure fixes * remove old docs * intro side nav converted * reset sidebar styles, add hashi-global-styles * basic styling for nav sidebar * folder collapse functionality * patch up border length on last list item * wip restructure for content component * taking middleman hacking to the extreme, but its working * small css fix * add new mega nav * fix a small mistake from the rebase * fix a content resolution issue with middleman * title a couple missing docs pages * update deps, remove temporary markup * community page * footer to layout, community page css adjustments * wip downloads page * deps updated, downloads page ready * fix community page * homepage progress * add components, adjust spacing * docs and api landing pages * a bunch of fixes, add docs and api landing pages * update deps, add deploy scripts * add readme note * update deploy command * overview page, index title * Update doc fields Note this still requires the link fields to be populated -- this is solely related to copy on the description fields * Update api_basic_categories.yml Updated API category descriptions. Like the document descriptions you'll still need to update the link headers to the proper target pages. * Add bottom hero, adjust CSS, responsive friendly * Add mega nav title * homepage adjustments, asset boosts * small fixes * docs page styling fixes * meganav title * some category link corrections * Update API categories page updated to reflect the second level headings for api categories * Update docs_detailed_categories.yml Updated to represent the existing docs structure * Update docs_detailed_categories.yml * docs page data fix, extra operator page remove * api data fix * fix makefile * update deps, add product subnav to docs and api landing pages * Rearrange non-hands-on guides to _docs_ Since there is no place for these on learn.hashicorp, we'll put them under _docs_. * WIP Redirects for guides to docs * content and component updates * font weight hotfix, redirects * fix guides and intro sidenavs * fix some redirects * small style tweaks * Redirects to learn and internally to docs * Remove redirect to `/vault` * Remove `.html` from destination on redirects * fix incorrect index redirect * final touchups * address feedback from michell for makefile and product downloads
148 lines
3.6 KiB
Markdown
148 lines
3.6 KiB
Markdown
---
|
||
layout: "api"
|
||
page_title: "/sys/replication - HTTP API"
|
||
sidebar_title: "<tt>/sys/replication</tt>"
|
||
sidebar_current: "api-http-system-replication"
|
||
description: |-
|
||
The '/sys/replication' endpoint focuses on managing general operations in Vault Enterprise replication
|
||
---
|
||
|
||
# `/sys/replication`
|
||
|
||
~> **Enterprise Only** – These endpoints require Vault Enterprise.
|
||
|
||
## Attempt Recovery
|
||
|
||
This endpoint attempts recovery if replication is in an adverse state. For
|
||
example: an error has caused replication to stop syncing.
|
||
|
||
| Method | Path | Produces |
|
||
| :------- | :--------------------------- | :--------------------- |
|
||
| `POST` | `/sys/replication/recover` | `200 application/json` |
|
||
|
||
### Sample Request
|
||
|
||
```
|
||
$ curl \
|
||
--header "X-Vault-Token: ..." \
|
||
--request POST \
|
||
http://127.0.0.1:8200/v1/sys/replication/recover
|
||
```
|
||
|
||
### Sample Response
|
||
|
||
```json
|
||
{
|
||
"warnings": ["..."]
|
||
}
|
||
```
|
||
|
||
## Reindex Replication
|
||
|
||
This endpoint reindexes the local data storage. This can cause a very long delay
|
||
depending on the number and size of objects in the data store.
|
||
|
||
**This endpoint requires 'sudo' capability.**
|
||
|
||
| Method | Path | Produces |
|
||
| :------- | :--------------------------- | :--------------------- |
|
||
| `POST` | `/sys/replication/reindex` | `200 application/json` |
|
||
|
||
```
|
||
$ curl \
|
||
--header "X-Vault-Token: ..." \
|
||
--request POST \
|
||
http://127.0.0.1:8200/v1/sys/replication/reindex
|
||
```
|
||
|
||
### Sample Response
|
||
|
||
```json
|
||
{
|
||
"warnings": ["..."]
|
||
}
|
||
```
|
||
|
||
## Check Status
|
||
|
||
This endpoint print information about the status of replication (mode,
|
||
sync progress, etc).
|
||
|
||
This is an authenticated endpoint.
|
||
|
||
| Method | Path | Produces |
|
||
| :------- | :--------------------------- | :--------------------- |
|
||
| `GET` | `/sys/replication/status` | `200 application/json` |
|
||
|
||
### Sample Request
|
||
|
||
```
|
||
$ curl \
|
||
http://127.0.0.1:8200/v1/sys/replication/status
|
||
```
|
||
|
||
### Sample Response
|
||
|
||
The printed status of the replication environment. As an example, for a
|
||
performance primary and DR primary node, it will look something like:
|
||
|
||
```json
|
||
{
|
||
"data": {
|
||
"dr": {
|
||
"cluster_id": "f2c21cb5-523f-617b-20ac-c913d9154ba6",
|
||
"known_secondaries": [
|
||
"3"
|
||
],
|
||
"last_wal": 291,
|
||
"merkle_root": "38543b95d44132138003939addbaf94125ec184e",
|
||
"mode": "primary",
|
||
"primary_cluster_addr": ""
|
||
},
|
||
"performance": {
|
||
"cluster_id": "1598d434-dfec-1f48-f019-3d22a8075bf9",
|
||
"known_secondaries": [
|
||
"2"
|
||
],
|
||
"last_wal": 291,
|
||
"merkle_root": "43f40fc775b40cc76cd5d7e289b2e6eaf4ba138c",
|
||
"mode": "primary",
|
||
"primary_cluster_addr": ""
|
||
}
|
||
},
|
||
}
|
||
```
|
||
|
||
### Sample Response from Performance Secondary & DR Primary
|
||
|
||
The printed status of the replication environment. As an example, for a
|
||
performnace secondary and DR primary node, it will look something like:
|
||
|
||
```json
|
||
{
|
||
"data": {
|
||
"dr": {
|
||
"cluster_id": "e4bfa800-002e-7b6d-14c2-617855ece02f",
|
||
"known_secondaries": [
|
||
"4"
|
||
],
|
||
"last_wal": 455,
|
||
"merkle_root": "cdcf796619240ce19dd8af30fa700f64c8006e3d",
|
||
"mode": "primary",
|
||
"primary_cluster_addr": ""
|
||
},
|
||
"performance": {
|
||
"cluster_id": "1598d434-dfec-1f48-f019-3d22a8075bf9",
|
||
"known_primary_cluster_addrs": [
|
||
"https://127.0.0.1:8201"
|
||
],
|
||
"last_remote_wal": 291,
|
||
"merkle_root": "43f40fc775b40cc76cd5d7e289b2e6eaf4ba138c",
|
||
"mode": "secondary",
|
||
"primary_cluster_addr": "https://127.0.0.1:8201",
|
||
"secondary_id": "2",
|
||
"state": "stream-wals"
|
||
}
|
||
},
|
||
}
|
||
```
|