-
Notifications
You must be signed in to change notification settings - Fork 680
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
tools, readme: add pd recover usage document (#560)
* tools, readme: add pd recover usage document Via: pingcap/docs-cn#818 * tools: address comment
- Loading branch information
Showing
3 changed files
with
49 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
--- | ||
title: PD Recover User Guide | ||
summary: Use PD Recover to recover a PD cluster which cannot start or provide services normally. | ||
category: tools | ||
--- | ||
|
||
# PD Recover User Guide | ||
|
||
PD Recover is a disaster recovery tool of PD, used to recover the PD cluster which cannot start or provide services normally. | ||
|
||
## Source code compiling | ||
|
||
1. [Go](https://golang.org/) Version 1.9 or later | ||
2. In the root directory of the [PD project](https://github.com/pingcap/pd), use the `make` command to compile and generate `bin/pd-recover` | ||
|
||
## Usage | ||
|
||
This section describes how to recover a PD cluster which cannot start or provide services normally. | ||
|
||
### Flags description | ||
|
||
``` | ||
-alloc-id uint | ||
Specify a number larger than the allocated ID of the original cluster | ||
-cacert string | ||
Specify the path to the trusted CA certificate file in PEM format | ||
-cert string | ||
Specify the path to the SSL certificate file in PEM format | ||
-key string | ||
Specify the path to the SSL certificate key file in PEM format, which is the private key of the certificate specified by `--cert` | ||
-cluster-id uint | ||
Specify the Cluster ID of the original cluster | ||
-endpoints string | ||
Specify the PD address (default: "http://127.0.0.1:2379") | ||
``` | ||
|
||
### Recovery flow | ||
|
||
1. Obtain the Cluster ID and the Alloc ID from the current cluster. | ||
|
||
- Obtain the Cluster ID from the PD, TiKV and TiDB log. | ||
- Obtain the allocated Alloc ID from either the PD log or the `Metadata Information` in the PD monitoring panel. | ||
|
||
Specifying `alloc-id` requires a number larger than the current largest Alloc ID. If you fail to obtain the Alloc ID, you can make an estimate of a larger number according to the number of Regions and Stores in the cluster. Generally, you can specify a number that is several orders of magnitude larger. | ||
2. Stop the whole cluster, clear the PD data directory, and restart the PD cluster. | ||
3. Use PD Recover to recover and make sure that you use the correct `cluster-id` and appropriate `alloc-id`. | ||
4. When the recovery success information is prompted, restart the whole cluster. |