当前位置:网站首页>Use br to recover backup data on azure blob storage
Use br to recover backup data on azure blob storage
2022-07-07 21:25:00 【Tianxiang shop】
This paper introduces how to combine Azure Blob Storage Upper SST Restore the backup data to Kubernetes In the environment TiDB colony .
The recovery method used in this article is based on TiDB Operator Of Custom Resource Definition (CRD) Realization , Bottom use BR Data recovery .BR Its full name is Backup & Restore, yes TiDB Command line tools for distributed backup and recovery , Used to deal with TiDB Cluster for data backup and recovery .
Use scenarios
When using BR take TiDB The cluster data is backed up to Azure Blob Storage after , If needed from Azure Blob Storage Will back up SST( Key value pair ) Restore files to TiDB colony , Please refer to this article to use BR Resume .
Be careful
- BR Only support TiDB v3.1 And above .
- BR The recovered data cannot be synchronized to the downstream , because BR Direct import SST file , At present, the downstream cluster has no way to obtain the upstream SST file .
This article assumes that it will be stored in Azure Blob Storage Specify the path on spec.azblob.container
In the bucket spec.azblob.prefix
The backup data under the folder is restored to namespace test2
Medium TiDB colony demo2
. The following is the specific operation process .
The first 1 Step : Prepare to restore the environment
Use BR take Azure Blob Storage The backup data on is restored to TiDB front , Please follow these steps to prepare the recovery environment .
Download the file backup-rbac.yaml, And execute the following command in
test2
This namespace Create what is needed for recovery RBAC Related resources :kubectl apply -f backup-rbac.yaml -n test2
Grant remote storage access , There are two ways to grant permissions , Refer to the documentation Azure Account Authorization .
If you use it TiDB Version below v4.0.8, You also need to do the following . If you use it TiDB by v4.0.8 And above , Please skip this step .
Make sure you have the recovery database
mysql.tidb
TabularSELECT
andUPDATE
jurisdiction , Used for adjusting before and after recovery GC Time .establish
restore-demo2-tidb-secret
secret For storing access TiDB Clustered root Account and key .kubectl create secret generic restore-demo2-tidb-secret --from-literal=password=${password} --namespace=test2
The first 2 Step : Restore the specified backup data to TiDB colony
According to the remote storage access authorization method selected in the previous step , You need to use the corresponding method below to restore the backup data to TiDB:
Method 1: If you authorize by accessing the key , You can create
Restore
CR Recover cluster data :kubectl apply -f resotre-azblob.yaml
restore-azblob.yaml
The contents of the document are as follows :--- apiVersion: pingcap.com/v1alpha1 kind: Restore metadata: name: demo2-restore-azblob namespace: test2 spec: br: cluster: demo2 clusterNamespace: test2 # logLevel: info # statusAddr: ${status_addr} # concurrency: 4 # rateLimit: 0 # timeAgo: ${time} # checksum: true # sendCredToTikv: true # # Only needed for TiDB Operator < v1.1.10 or TiDB < v4.0.8 # to: # host: ${tidb_host} # port: ${tidb_port} # user: ${tidb_user} # secretName: restore-demo2-tidb-secret azblob: secretName: azblob-secret container: my-container prefix: my-folder
Method 2: If it passes Azure AD Method of authorization , You can create
Restore
CR Recover cluster data :kubectl apply -f restore-azblob.yaml
restore-azblob.yaml
The contents of the document are as follows :--- apiVersion: pingcap.com/v1alpha1 kind: Restore metadata: name: demo2-restore-azblob namespace: test2 spec: serviceAccount: tidb-backup-manager br: cluster: demo2 sendCredToTikv: false clusterNamespace: test2 # logLevel: info # statusAddr: ${status_addr} # concurrency: 4 # rateLimit: 0 # timeAgo: ${time} # checksum: true # Only needed for TiDB Operator < v1.1.10 or TiDB < v4.0.8 to: host: ${tidb_host} port: ${tidb_port} user: ${tidb_user} secretName: restore-demo2-tidb-secret azblob: secretName: azblob-secret-ad container: my-container prefix: my-folder
In the configuration restore-azblob.yaml
When you file , Please refer to the following information :
- About Azure Blob Storage Related configuration , Please refer to Azure Blob Storage Storage field introduction .
.spec.br
Some parameters in are optional , Such aslogLevel
、statusAddr
、concurrency
、rateLimit
、checksum
、timeAgo
、sendCredToTikv
. more.spec.br
Detailed explanation of fields , Please refer to BR Field is introduced .- If you use it TiDB by v4.0.8 And above ,BR Will automatically adjust
tikv_gc_life_time
Parameters , Don't need to Restore CR Middle configurationspec.to
Field . - more
Restore
CR Detailed explanation of fields , Please refer to Restore CR Field is introduced .
Create good Restore
CR after , You can view the status of the recovery through the following command :
kubectl get rt -n test2 -o wide
边栏推荐
- MinGW MinGW-w64 TDM-GCC等工具链之间的差别与联系「建议收藏」
- Deadlock conditions and preventive treatment [easy to understand]
- Écrivez une liste de sauts
- HDU4876ZCC loves cards(多校题)
- Codesonar enhances software reliability through innovative static analysis
- Cocos2d-x game archive [easy to understand]
- UVA 12230 – crossing rivers (probability) "suggested collection"
- Devil daddy A0 English zero foundation self-improvement Road
- What stocks can a new account holder buy? Is the stock trading account safe
- 恶魔奶爸 A3阶段 近常速语流初接触
猜你喜欢
How to meet the dual needs of security and confidentiality of medical devices?
Lex & yacc of Pisa proxy SQL parsing
目标:不排斥 yaml 语法。争取快速上手
C语言 整型 和 浮点型 数据在内存中存储详解(内含原码反码补码,大小端存储等详解)
Helix QAC 2020.2 new static test tool maximizes the coverage of standard compliance
95年专注安全这一件事 沃尔沃未来聚焦智能驾驶与电气化领域安全
How to meet the dual needs of security and confidentiality of medical devices?
Magic weapon - sensitive file discovery tool
程序猿赚的那点钱算个P啊!
Codesonar enhances software reliability through innovative static analysis
随机推荐
Lex & yacc of Pisa proxy SQL parsing
margin 等高布局
SQL injection error report injection function graphic explanation
[matrix multiplication] [noi 2012] [cogs963] random number generator
SQL注入报错注入函数图文详解
Codesonar Webinar
恶魔奶爸 A3阶段 近常速语流初接触
Ten thousand word summary data storage, three knowledge points
The latest version of codesonar has improved functional security and supports Misra, c++ parsing and visualization
[uvalive 6663 count the regions] (DFS + discretization) [easy to understand]
Implement secondary index with Gaussian redis
Implement secondary index with Gaussian redis
MySQL storage expression error
AADL inspector fault tree safety analysis module
恶魔奶爸 指南帖——简易版
Demon daddy C
Demon daddy A1 speech listening initial challenge
Prometheus remote_ write InfluxDB,unable to parse authentication credentials,authorization failed
Écrivez une liste de sauts
FatMouse&#39; Trade(杭电1009)