116 lines
2.7 KiB
Plaintext
116 lines
2.7 KiB
Plaintext
---
|
||
layout: api
|
||
page_title: /sys/remount - HTTP API
|
||
description: >-
|
||
The '/sys/remount' endpoint is used remount a mounted backend to a new
|
||
endpoint.
|
||
---
|
||
|
||
# Remount ( API )
|
||
|
||
The Remount documentation details the endpoints required to trigger and monitor the status of a remount operation.
|
||
|
||
## Move Backend
|
||
|
||
The `/sys/remount` endpoint moves an already-mounted backend to a new mount point. This process works for both secret
|
||
engines and auth methods.
|
||
|
||
The remount operation returns a migration ID to the user. The user may utilize the migration ID to look up
|
||
the status of the mount migration. More details about the remount operation are described in
|
||
[Mount Migration](/docs/concepts/mount-migration).
|
||
|
||
~> Note: This endpoint requires a policy with both `sudo` and `update` capabilities to `sys/remount`
|
||
|
||
~> Note: A mount migration will revoke all leases for the secrets of a secrets backend or tokens of an auth backend,
|
||
depending on which type of backend is being moved.
|
||
|
||
|
||
| Method | Path |
|
||
| :----- | :------------- |
|
||
| `POST` | `/sys/remount` |
|
||
|
||
### Parameters
|
||
|
||
- `from` `(string: <required>)` – Specifies the previous mount point.
|
||
|
||
- `to` `(string: <required>)` – Specifies the new destination mount point.
|
||
|
||
### Sample Payload ( Cross Namespace )
|
||
|
||
```json
|
||
{
|
||
"from": "ns1/ns2/secret",
|
||
"to": "ns1/ns3/new-secret"
|
||
}
|
||
```
|
||
|
||
### Sample Payload ( Cross Namespace, Auth Mount )
|
||
|
||
```json
|
||
{
|
||
"from": "ns1/ns2/auth/approle",
|
||
"to": "ns1/ns3/auth/new-approle"
|
||
}
|
||
```
|
||
|
||
### Sample Payload ( Within Namespace )
|
||
|
||
```json
|
||
{
|
||
"from": "secret",
|
||
"to": "new-secret"
|
||
}
|
||
```
|
||
|
||
### Sample Request
|
||
|
||
```shell-session
|
||
$ curl \
|
||
--header "X-Vault-Token: ..." \
|
||
--request POST \
|
||
--data @payload.json \
|
||
http://127.0.0.1:8200/v1/sys/remount
|
||
```
|
||
|
||
### Sample Response
|
||
|
||
```json
|
||
{
|
||
"migration_id": "ef3ba21c-8be8-4e5f-8d00-cb46a532c665"
|
||
}
|
||
```
|
||
|
||
## Monitor Migration Status
|
||
|
||
This endpoint is used to monitor the status of a mount migration operation, using the ID returned in the response
|
||
of the `sys/remount` call. The response contains the passed-in ID, the source and target mounts, and a status field
|
||
that displays `in-progress`, `success` or `failure`.
|
||
|
||
| Method | Path |
|
||
| :----- | :------------- |
|
||
| `GET` | `/sys/remount/status/:migration_id` |
|
||
|
||
### Parameters
|
||
|
||
- `migration_id` `(string: <required>)` – Specifies the id of the mount migration
|
||
|
||
### Sample Request
|
||
|
||
```shell-session
|
||
$ curl \
|
||
--header "X-Vault-Token: ..." \
|
||
http://127.0.0.1:8200/v1/sys/remount/status/ef3ba21c-8be8-4e5f-8d00-cb46a532c665
|
||
```
|
||
|
||
### Sample Response
|
||
|
||
```json
|
||
{
|
||
"migration_id": "ef3ba21c-8be8-4e5f-8d00-cb46a532c665",
|
||
"migration_info": {
|
||
"source_mount": "ns1/ns2/secret",
|
||
"target_mount": "ns1/ns3/new-secret",
|
||
"status": "in-progress",
|
||
}
|
||
}
|
||
``` |