mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-11-26 00:00:23 +00:00
doc: correct rbd snap-clone doc
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
This commit is contained in:
parent
44191b5a1f
commit
07890aace6
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
- [Steps and RBD CLI commands for RBD snapshot and clone operations](#steps-and-rbd-cli-commands-for-rbd-snapshot-and-clone-operations)
|
- [Steps and RBD CLI commands for RBD snapshot and clone operations](#steps-and-rbd-cli-commands-for-rbd-snapshot-and-clone-operations)
|
||||||
- [Create a snapshot from PVC](#create-a-snapshot-from-pvc)
|
- [Create a snapshot from PVC](#create-a-snapshot-from-pvc)
|
||||||
- [steps to creating a snapshot](#steps-to-creating-a-snapshot)
|
- [steps to create a snapshot](#steps-to-create-a-snapshot)
|
||||||
- [RBD CLI commands to create snapshot](#rbd-cli-commands-to-create-snapshot)
|
- [RBD CLI commands to create snapshot](#rbd-cli-commands-to-create-snapshot)
|
||||||
- [Create PVC from a snapshot (datasource snapshot)](#create-pvc-from-a-snapshot-datasource-snapshot)
|
- [Create PVC from a snapshot (datasource snapshot)](#create-pvc-from-a-snapshot-datasource-snapshot)
|
||||||
- [steps to create a pvc from snapshot](#steps-to-create-a-pvc-from-snapshot)
|
- [steps to create a pvc from snapshot](#steps-to-create-a-pvc-from-snapshot)
|
||||||
@ -18,25 +18,25 @@
|
|||||||
- [RBD CLI commands to create a Volume from Volume](#rbd-cli-commands-to-create-a-volume-from-volume)
|
- [RBD CLI commands to create a Volume from Volume](#rbd-cli-commands-to-create-a-volume-from-volume)
|
||||||
|
|
||||||
This document outlines the command used to create RBD snapshot, delete RBD
|
This document outlines the command used to create RBD snapshot, delete RBD
|
||||||
snapshot Restore RBD snapshot and Create New RBD image from RBD image.
|
snapshot, Restore RBD snapshot and Create new RBD image from existing RBD image.
|
||||||
|
|
||||||
## Create a snapshot from PVC
|
## Create a snapshot from PVC
|
||||||
|
|
||||||
Refer [snapshot](https://kubernetes.io/docs/concepts/storage/volume-snapshots/)
|
Refer [snapshot](https://kubernetes.io/docs/concepts/storage/volume-snapshots/)
|
||||||
for more information realted to Volume cloning in kubernetes.
|
for more information realted to Volume cloning in kubernetes.
|
||||||
|
|
||||||
### steps to creating a snapshot
|
### steps to create a snapshot
|
||||||
|
|
||||||
- Check if the parent image has more snapshots than the configured value, if
|
- Check if the parent image has more snapshots than the configured value, if
|
||||||
its has more snapshot Add tasks to flatten all the temporary cloned images
|
it has more snapshot, add tasks to flatten all the temporary cloned images
|
||||||
and return ResourceExhausted error message
|
and return ResourceExhausted error message
|
||||||
- Create a temporary snapshot from the parent image
|
- Create a temporary snapshot from the parent image
|
||||||
- Clone a new image from a temporary snapshot with options
|
- Clone a new image from a temporary snapshot with options
|
||||||
--rbd-default-clone-format 2 --image-feature layering,deep-flatten
|
`--rbd-default-clone-format 2 --image-feature layering,deep-flatten`
|
||||||
- Delete temporary snapshot created
|
- Delete temporary snapshot created
|
||||||
- Check the image chain depth, if the Softlimit is reached Add a task Flatten
|
- Check the image chain depth, if the `softlimit` is reached add a task to flatten
|
||||||
the cloned image and return success. If the depth is reached hardlimit Add a
|
the cloned image and return success. If the depth is reached `hardlimit` add a
|
||||||
task Flatten the cloned image and return snapshot status ready as false
|
task flatten the cloned image and return snapshot status ready as `false`
|
||||||
|
|
||||||
### RBD CLI commands to create snapshot
|
### RBD CLI commands to create snapshot
|
||||||
|
|
||||||
@ -44,16 +44,16 @@ for more information realted to Volume cloning in kubernetes.
|
|||||||
[$] rbd snap ls <RBD image for src k8s volume> --all
|
[$] rbd snap ls <RBD image for src k8s volume> --all
|
||||||
// If the parent has more snapshots than the configured `maxsnapshotsonimage`
|
// If the parent has more snapshots than the configured `maxsnapshotsonimage`
|
||||||
add backgound tasks to flatten the temporary cloned images( temporary cloned
|
add backgound tasks to flatten the temporary cloned images( temporary cloned
|
||||||
images name will be same as snapshot names)
|
image names will be same as snapshot names)
|
||||||
[$] ceph rbd task add flatten <RBD image for temporary snap images>
|
[$] ceph rbd task add flatten <RBD image for temporary snap images>
|
||||||
[$] rbd snap create <RBD image for src k8s volume>@<random snap name>
|
[$] rbd snap create <RBD image for src k8s volume>@<random snap name>
|
||||||
[$] rbd clone --rbd-default-clone-format 2 --image-feature
|
[$] rbd clone --rbd-default-clone-format 2 --image-feature
|
||||||
layering,deep-flatten <RBD image for src k8s volume>@<random snap>
|
layering,deep-flatten <RBD image for src k8s volume>@<random snap>
|
||||||
<RBD image for temporary snap image>
|
<RBD image for temporary snap image>
|
||||||
[$] rbd snap rm <RBD image for src k8s volume>@<random snap name>
|
[$] rbd snap rm <RBD image for src k8s volume>@<random snap name>
|
||||||
[$] rbd snap create <BD image for temporary snap image>@<random snap name>
|
[$] rbd snap create <RBD image for temporary snap image>@<random snap name>
|
||||||
// check the depth,if the depth is greater than configured hardlimit add a
|
// check the depth, if the depth is greater than configured hardlimit add a
|
||||||
// task to flatten the cloned image return snapshot status ready as false,
|
// task to flatten the cloned image, return snapshot status ready as `false`,
|
||||||
// if the depth is greater than softlimit add a task to flatten the image
|
// if the depth is greater than softlimit add a task to flatten the image
|
||||||
// and return success
|
// and return success
|
||||||
[$] ceph rbd task add flatten <RBD image for temporary snap image>
|
[$] ceph rbd task add flatten <RBD image for temporary snap image>
|
||||||
@ -63,14 +63,14 @@ images name will be same as snapshot names)
|
|||||||
|
|
||||||
### steps to create a pvc from snapshot
|
### steps to create a pvc from snapshot
|
||||||
|
|
||||||
- Check the depth(n) of the cloned image if n>=(hardlimit -2) Add task to
|
- Check the depth(n) of the cloned image if `n>=(hardlimit -2)`, add task to
|
||||||
flatten the image and return ABORT (to avoid image leak)
|
flatten the image and return ABORT (to avoid image leak)
|
||||||
- Clone a new image from the snapshot with user-provided options
|
- Clone a new image from the snapshot with user-provided options
|
||||||
|
|
||||||
### RBD CLI commands to create clone from snapshot
|
### RBD CLI commands to create clone from snapshot
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
// check the depth,if the depth is greater than configured (hardlimit)
|
// check the depth, if the depth is greater than configured (hardlimit)
|
||||||
// Add a task to value flatten the cloned image
|
// Add a task to value flatten the cloned image
|
||||||
[$] ceph rbd task add flatten <RBD image for temporary snap image>
|
[$] ceph rbd task add flatten <RBD image for temporary snap image>
|
||||||
[$] rbd clone --rbd-default-clone-format 2 --image-feature <k8s dst vol config>
|
[$] rbd clone --rbd-default-clone-format 2 --image-feature <k8s dst vol config>
|
||||||
@ -101,8 +101,8 @@ images name will be same as snapshot names)
|
|||||||
## Delete a Volume (PVC)
|
## Delete a Volume (PVC)
|
||||||
|
|
||||||
With earlier implementation to delete the image we used to add a task to remove
|
With earlier implementation to delete the image we used to add a task to remove
|
||||||
the image with new changes this cannot be done as the image may contains
|
the image. With new changes this cannot be done as the image may contains
|
||||||
snapshots or linking.so we will be following below steps to delete an
|
snapshots or linking, so we will be following below steps to delete an
|
||||||
image(this will be applicable for both normal image and cloned image)
|
image(this will be applicable for both normal image and cloned image)
|
||||||
|
|
||||||
### steps to delete a volume
|
### steps to delete a volume
|
||||||
@ -125,8 +125,8 @@ for more information realted to Volume cloning in kubernetes.
|
|||||||
|
|
||||||
### steps to create a Volume from Volume
|
### steps to create a Volume from Volume
|
||||||
|
|
||||||
- Check the depth(n) of the cloned image if n>=((hard limit) -2) Add task to
|
- Check the depth(n) of the cloned image if `n>=((hard limit) -2)`, add task to
|
||||||
flatten the image and return about (to avoid image leak)
|
flatten the image and return ABORT (to avoid image leak)
|
||||||
- Create snapshot of rbd image
|
- Create snapshot of rbd image
|
||||||
- Clone the snapshot (temp clone)
|
- Clone the snapshot (temp clone)
|
||||||
- Delete the snapshot
|
- Delete the snapshot
|
||||||
|
Loading…
Reference in New Issue
Block a user