当前位置:网站首页>Restore backup data on S3 compatible storage with br
Restore backup data on S3 compatible storage with br
2022-07-06 08:03:00 【Tianxiang shop】
This paper introduces how to combine S3 On compatible storage SST Restore the backup data to AWS 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 Amazon S3 after , If needed from Amazon S3 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 Amazon S3 Specify the path on spec.s3.bucket
In the bucket spec.s3.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 S3 Restore the backup data on the compatible storage 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 .
- If the data to be recovered is Amazon S3 On , There are three ways to grant permissions , Refer to the documentation AWS Account Authorization .
- If the data to be recovered is compatible with other S3 On the storage of , for example Ceph、MinIO, have access to AccessKey and SecretKey Mode Authorization , Refer to the documentation adopt AccessKey and SecretKey to grant 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 it passes accessKey and secretKey Method of authorization , You can create
Restore
CR Recover cluster data :kubectl apply -f resotre-aws-s3.yaml
restore-aws-s3.yaml
The contents of the document are as follows :--- apiVersion: pingcap.com/v1alpha1 kind: Restore metadata: name: demo2-restore-s3 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 s3: provider: aws secretName: s3-secret region: us-west-1 bucket: my-bucket prefix: my-folder
Method 2: If it passes IAM binding Pod Method of authorization , You can create
Restore
CR Recover cluster data :kubectl apply -f restore-aws-s3.yaml
restore-aws-s3.yaml
The contents of the document are as follows :--- apiVersion: pingcap.com/v1alpha1 kind: Restore metadata: name: demo2-restore-s3 namespace: test2 annotations: iam.amazonaws.com/role: arn:aws:iam::123456789012:role/user spec: 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 s3: provider: aws region: us-west-1 bucket: my-bucket prefix: my-folder
Method 3: If it passes IAM binding ServiceAccount Method of authorization , You can create
Restore
CR Recover cluster data :kubectl apply -f restore-aws-s3.yaml
restore-aws-s3.yaml
The contents of the document are as follows :--- apiVersion: pingcap.com/v1alpha1 kind: Restore metadata: name: demo2-restore-s3 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 s3: provider: aws region: us-west-1 bucket: my-bucket prefix: my-folder
In the configuration restore-aws-s3.yaml
When you file , Please refer to the following information :
- About compatibility S3 Storage related configuration , Please refer to S3 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
边栏推荐
- ESP系列引脚說明圖匯總
- [KMP] template
- MFC sends left click, double click, and right click messages to list controls
- Notes on software development
- Nc204382 medium sequence
- Erc20 token agreement
- Golang DNS 随便写写
- [factorial inverse], [linear inverse], [combinatorial counting] Niu Mei's mathematical problems
- Leetcode question brushing record | 203_ Remove linked list elements
- 面向个性化需求的在线云数据库混合调优系统 | SIGMOD 2022入选论文解读
猜你喜欢
hcip--mpls
[research materials] 2021 China online high growth white paper - Download attached
A Closer Look at How Fine-tuning Changes BERT
MEX有关的学习
Go learning notes (3) basic types and statements (2)
将 NFT 设置为 ENS 个人资料头像的分步指南
Secure captcha (unsafe verification code) of DVWA range
Codeforces Global Round 19(A~D)
Qualitative risk analysis of Oracle project management system
[research materials] 2021 live broadcast annual data report of e-commerce - Download attached
随机推荐
Data governance: Data Governance under microservice architecture
23. Update data
Chinese Remainder Theorem (Sun Tzu theorem) principle and template code
wincc7.5下载安装教程(Win10系统)
[Yugong series] creation of 009 unity object of U3D full stack class in February 2022
使用 BR 恢复 S3 兼容存储上的备份数据
软件开发的一点随记
Understanding of law of large numbers and central limit theorem
Easy to use tcp-udp_ Debug tool download and use
The Vice Minister of the Ministry of industry and information technology of "APEC industry +" of the national economic and information technology center led a team to Sichuan to investigate the operat
Nacos Development Manual
Wireshark grabs packets to understand its word TCP segment
Migrate data from CSV files to tidb
The State Economic Information Center "APEC industry +" Western Silicon Valley will invest 2trillion yuan in Chengdu Chongqing economic circle, which will surpass the observation of Shanghai | stable
Common functions for PHP to process strings
ESP系列引脚说明图汇总
1204 character deletion operation (2)
File upload of DVWA range
珠海金山面试复盘
Data governance: 3 characteristics, 4 transcendence and 3 28 principles of master data