Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #10487 from yangdongsheng/rbd_export
rbd: introduce v2 format for rbd export/import Reviewed-by: Jason Dillaman <dillaman@redhat.com>
- Loading branch information
Showing
14 changed files
with
1,247 additions
and
621 deletions.
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
RBD Export & Import | ||
=================== | ||
|
||
This is a file format of an RBD image or snapshot. It's a sparse format | ||
for the full image. There are three recording sections in the file. | ||
|
||
(1) Header. | ||
(2) Metadata. | ||
(3) Diffs. | ||
|
||
Header | ||
~~~~~~ | ||
|
||
"rbd image v2\\n" | ||
|
||
Metadata records | ||
~~~~~~~~~~~~~~~~ | ||
|
||
Every record has a one byte "tag" that identifies the record type, | ||
followed by length of data, and then some other data. | ||
|
||
Metadata records come in the first part of the image. Order is not | ||
important, as long as all the metadata records come before the data | ||
records. | ||
|
||
In v2, we have the following metadata in each section: | ||
(1 Bytes) tag. | ||
(8 Bytes) length. | ||
(n Bytes) data. | ||
|
||
In this way, we can skip the unrecognized tag. | ||
|
||
Image order | ||
----------- | ||
|
||
- u8: 'O' | ||
- le64: length of appending data (8) | ||
- le64: image order | ||
|
||
Image format | ||
------------ | ||
|
||
- u8: 'F' | ||
- le64: length of appending data (8) | ||
- le64: image format | ||
|
||
Image Features | ||
-------------- | ||
|
||
- u8: 'T' | ||
- le64: length of appending data (8) | ||
- le64: image features | ||
|
||
Image Stripe unit | ||
----------------- | ||
|
||
- u8: 'U' | ||
- le64: length of appending data (8) | ||
- le64: image striping unit | ||
|
||
Image Stripe count | ||
------------------ | ||
|
||
- u8: 'C' | ||
- le64: length of appending data (8) | ||
- le64: image striping count | ||
|
||
Final Record | ||
~~~~~~~~~~~~ | ||
|
||
End | ||
--- | ||
|
||
- u8: 'E' | ||
|
||
|
||
Diffs records | ||
~~~~~~~~~~~~~~~~~ | ||
Record the all snapshots and the HEAD in this section. | ||
|
||
- le64: number of diffs | ||
- Diffs ... | ||
|
||
Detail please refer to rbd-diff.rst |
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
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
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
Oops, something went wrong.