You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: docs/demo/01_pv_populator.md
+7-8
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,11 @@
1
-
PV Populator is a `Volume Populator` that helps to rename a PVC. It does a patch on `PersistentVolume`of older `Claim`with new `Claim`.
1
+
PV Populator is a volume populator that does a patch on PV of older PVC with new PVC. Here source of the volume is the PV of any older PVC. Both the PVC(new and source) should be from same storageclass. It is like mentioning PVC as a data source for a PVC. There one clone volume will be created and here PV of the mentioned PVC will be patched with new PVC. In this way we will be able to rename a PVC and it will refer to the PV of older PVC.
2
2
3
3
NOTE -
4
4
1.`AnyVolumeDataSource` feature gate should be enabled in the kubernetes cluster.
5
-
2. Default storageclass should be configured for this demo.
6
-
3. Namespace `volume-copy` is reserved for volume populator. Don't create any application or pvc in that namespace.
7
-
4. Before rename volume should not be used by any application.
5
+
2. Namespace `volume-copy` is reserved for volume populator. Don't create any application or pvc in that namespace.
6
+
3. Before rename volume should not be used by any application.
8
7
9
-
Here are the steps to rename a pvc using PV Populator.
8
+
Here are the steps of how to use persistent volume populator -
10
9
1. Install volume populator.
11
10
```bash
12
11
kubectl create ns volume-copy
@@ -32,7 +31,7 @@ Here are the steps to rename a pvc using PV Populator.
32
31
/data # cat file
33
32
hello!
34
33
```
35
-
3. After writing some data delete the pod.
34
+
3. After writing some data delete the Pod.
36
35
```bash
37
36
kubectl delete -f yaml/populator/pv/app/pod.yaml
38
37
```
@@ -48,7 +47,7 @@ Here are the steps to rename a pvc using PV Populator.
48
47
spec:
49
48
pvcName: my-pvc
50
49
```
51
-
5. Create a new pvc pointing to the claim-cpopulator.
50
+
5. Create a new pvc pointing to pv-cpopulator.
52
51
```bash
53
52
# Please edit the storageclass accordingly
54
53
kubectl apply -f yaml/populator/pv/app/pvc-d.yaml
@@ -71,7 +70,7 @@ Here are the steps to rename a pvc using PV Populator.
71
70
requests:
72
71
storage: 2Gi
73
72
```
74
-
6. Create a new pod and check the older data is present or not.
73
+
6. Create a new Pod and check the older data is present or not in the new PVC.
Copy file name to clipboardexpand all lines: docs/demo/02_rsync_populator.md
+7-6
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,11 @@
1
-
Rsync Populator is a `Volume Populator` that helps to create volume using rsync source. In this project we are creating rsync daemon on source volume and then populator will use that source to create a volume.
1
+
Rsync Populator is a volume populator that helps to create volume from any rsync source. Rsync client is used as volume populator plugin. `RsyncPopulator` CR contains the information of source location and how to access the source.
2
2
3
3
NOTE -
4
4
1.`AnyVolumeDataSource` feature gate should be enabled in the kubernetes cluster.
5
5
2. Namespace `volume-copy` is reserved for volume populator. Don't create any application or pvc in that namespace.
6
+
3. Before rename volume should not be used by any application.
6
7
7
-
Here are the steps to create a volume using rsync source.
8
+
Here are the steps of how to use rsync populator -
8
9
1. Install volume populator
9
10
```bash
10
11
kubectl create ns volume-copy
@@ -34,11 +35,11 @@ Here are the steps to create a volume using rsync source.
Copy file name to clipboardexpand all lines: docs/demo/03_rename_volume.md
+6-7
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,11 @@
1
-
[PV Populator](https://github.com/shovanmaity/k8s-volume-copy/blob/main/docs/demo/01_pv_populator.md) is a `Volume Populator` that helps to rename a PVC. It does a patch on `PersistentVolume`of older `Claim` with new `Claim`. Volume Rename control loopuse this to rename a volume. We can rename a pvc using PV Populator there we need to create populator and pvc. Volume Rename takes care of these 2 steps. We just need to create `VolumeRename` CR.
1
+
PersistentVolume Populator is a volume populator that does a patch on the PV of given PVC with new PVC. Volume Rename control loop, it makes use of PersistentVolume Populator to rename a volume. When a `VolumeRename` CR is created it creates a PersistentVolumePopulator CR and a new PVC pointing to that volume populator CR as a data source.
2
2
3
3
NOTE -
4
4
1.`AnyVolumeDataSource` feature gate should be enabled in the kubernetes cluster.
5
-
2. Default storageclass should be configured for this demo.
6
-
3. Namespace `volume-copy` is reserved for volume populator. Don't create any application or pvc in that namespace.
7
-
4. Before rename volume should not be used by any application.
5
+
2. Namespace `volume-copy` is reserved for volume populator. Don't create any application or pvc in that namespace.
6
+
3. Before rename volume should not be used by any application.
8
7
9
-
Here are the steps to rename a pvc.
8
+
Here are the steps to rename a pvc -
10
9
1. Install volume populator and volume rename controller.
11
10
```bash
12
11
kubectl create ns volume-copy
@@ -38,7 +37,7 @@ Here are the steps to rename a pvc.
38
37
```bash
39
38
kubectl delete -f yaml/volume-rename/app/pod.yaml
40
39
```
41
-
4. Create a volume rename cr. It has old and new pvc details.
40
+
4. Create a `VolumeRename`cr. It contains old and new pvc details.
42
41
```bash
43
42
kubectl apply -f yaml/volume-rename/cr.yaml
44
43
```
@@ -55,7 +54,7 @@ Here are the steps to rename a pvc.
55
54
```bash
56
55
kubectl get volumerename.demo.io/volume-rename -o=jsonpath="{.status.state}{'\n'}"
57
56
```
58
-
6. Create a new pod and check the older data is present or not.
57
+
6. Create a new pod and check the older data is present or not in the new PVC.
Copy file name to clipboardexpand all lines: docs/demo/04_copy_volume.md
+6-7
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,11 @@
1
-
[Rsync Populator](https://github.com/shovanmaity/k8s-volume-copy/blob/main/docs/demo/02_rsync_populator.md) is a `Volume Populator` that helps to create a volume from any rsync source. This module use it to copy any filesystem PVC. It creates rsync server on source PVC and rsync client is used as populator to create a new volume copy.
1
+
Rsync Populator is a volume populator that helps to create a volume from any rsync source. Volume Copy control loop, it makes use of Rsync Populator to rename a volume. When a `VolumeCopy` CR is created it sets up rsync source on the source PVC and creates a RsyncPopulator and a new PVC pointing to that volume populator as a data source.
2
2
3
3
NOTE -
4
4
1.`AnyVolumeDataSource` feature gate should be enabled in the kubernetes cluster.
5
-
2. Default storageclass should be configured for this demo.
6
-
3. Namespace `volume-copy` is reserved for volume populator. Don't create any application or pvc in that namespace.
7
-
4. Before copying volume should not be used by any application.
5
+
2. Namespace `volume-copy` is reserved for volume populator. Don't create any application or pvc in that namespace.
6
+
3. Before copying volume should not be used by any application.
8
7
9
-
Here are the steps to copy a pvc.
8
+
Here are the steps to copy a pvc -
10
9
1. Install volume populator and volume copy controller.
11
10
```bash
12
11
kubectl create ns volume-copy
@@ -38,7 +37,7 @@ Here are the steps to copy a pvc.
38
37
```bash
39
38
kubectl delete -f yaml/volume-copy/app/pod.yaml
40
39
```
41
-
4. Create a VolumeCopy cr. It has old and new pvc details in the spec.
40
+
4. Create a `VolumeCopy` cr. It has old and new pvc details in the spec.
42
41
```bash
43
42
kubectl apply -f yaml/volume-copy/cr.yaml
44
43
```
@@ -57,7 +56,7 @@ Here are the steps to copy a pvc.
57
56
```bash
58
57
kubectl get volumecopy.demo.io/volume-copy -o=jsonpath="{.status.state}{'\n'}"
59
58
```
60
-
6. Create a new pod and check the older data is present or not.
59
+
6. Create a new pod and check the older data is present or not in the new PVC.
Copy file name to clipboardexpand all lines: docs/demo/05_move_volume.md
+5-6
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,11 @@
1
-
In this demo we will move PVC from one storageclass to another storageclass. In these yaml storage class `hp-node-1` and `hp-node-2` are hard coded, if you want you can change it. In this demo we will use `VolumeRename` and `VolumeCopy`. Flow is `scale down` -> `rename volume(s)` -> `copy volume(s)` -> `scale up`.
1
+
In this demo we will move PVC from one storageclass to another storageclass. In these yaml storage class `hp-node-1` and `hp-node-2` are hard coded, if you want you can change it. In this demo we will use `VolumeRename` and `VolumeCopy`.
2
2
3
3
NOTE -
4
4
1.`AnyVolumeDataSource` feature gate should be enabled in the kubernetes cluster.
5
-
2. Storageclass should be configured for this demo.
6
-
3. Namespace `volume-copy` is reserved for volume populator. Don't create any application or pvc in that namespace.
7
-
4. Before moving volume should not be used by any application.
5
+
2. Namespace `volume-copy` is reserved for volume populator. Don't create any application or pvc in that namespace.
6
+
3. Before moving volume should not be used by any application.
8
7
9
-
Here are steps -
8
+
Here are steps to move a volume from one storageclass to another storageclass -
10
9
1. Install PV and Rsync volume populator and volume rename and copy controller.
0 commit comments