forked from RamenDR/ramen
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Testing volsync without ramen is the best way to understand how it works and how we need to use it when using minikube (or vanilla k8s?). For this test we have 2 directories: - source: resources for source cluster. Applying creates the namespace, pvc and busybox deployment. - destination: resources for destination cluster. Applying creates a namespace and volsync replication destination on destination cluster. We use security context to run the busybox app as unprivileged user and set the ownership of the pvc. Without this the busybox app runs as root on minikube. It is possible to allow volsync privileged movers using an annotation on the namespace but this is great pain to use and conflicts with ocm, and there is no reason to run the busybox app as root. To test replication I did this manually: - apply source kustomization to cluster dr1 - apply destination kustomization to cluster dr2 - copy the volsync secret from cluster dr2 to cluster dr1 - export the volsync service using subctl on cluster dr2 - apply the replication source on cluster dr1 These steps should be done by the test scripts in the next version. We also need to change the way the app writes data, logging every 10 seconds is not helpful for this test, it is better that the test will write data to the pod write before creating the replication source. Signed-off-by: Nir Soffer <nsoffer@redhat.com>
- Loading branch information
Showing
8 changed files
with
137 additions
and
0 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
# SPDX-FileCopyrightText: The RamenDR authors | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
--- | ||
resources: | ||
- namespace.yaml | ||
- replication-dst.yaml |
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,8 @@ | ||
# SPDX-FileCopyrightText: The RamenDR authors | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
--- | ||
apiVersion: v1 | ||
kind: Namespace | ||
metadata: | ||
name: busybox |
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,20 @@ | ||
# SPDX-FileCopyrightText: The RamenDR authors | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
--- | ||
apiVersion: volsync.backube/v1alpha1 | ||
kind: ReplicationDestination | ||
metadata: | ||
name: busybox-dst | ||
namespace: busybox | ||
spec: | ||
rsyncTLS: | ||
copyMethod: Snapshot | ||
capacity: 1Gi | ||
accessModes: [ReadWriteOnce] | ||
storageClassName: csi-hostpath-sc | ||
volumeSnapshotClassName: csi-hostpath-snapclass | ||
moverSecurityContext: | ||
runAsUser: 10000 | ||
runAsGroup: 10000 | ||
fsGroup: 10000 |
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,47 @@ | ||
# SPDX-FileCopyrightText: The RamenDR authors | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
--- | ||
apiVersion: apps/v1 | ||
kind: Deployment | ||
metadata: | ||
labels: | ||
appname: busybox | ||
name: busybox | ||
namespace: busybox | ||
spec: | ||
replicas: 1 | ||
selector: | ||
matchLabels: | ||
appname: busybox | ||
template: | ||
metadata: | ||
labels: | ||
appname: busybox | ||
spec: | ||
containers: | ||
- image: docker.io/library/busybox:latest | ||
imagePullPolicy: IfNotPresent | ||
name: busybox | ||
command: | ||
- sh | ||
- -c | ||
- | | ||
trap exit TERM | ||
while true; do | ||
echo $(date) | tee -a /mnt/test/outfile | ||
sync | ||
sleep 10 & | ||
wait | ||
done | ||
volumeMounts: | ||
- name: volume | ||
mountPath: /mnt/test | ||
volumes: | ||
- name: volume | ||
persistentVolumeClaim: | ||
claimName: busybox-pvc | ||
securityContext: | ||
runAsUser: 10000 | ||
runAsGroup: 10000 | ||
fsGroup: 10000 |
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,8 @@ | ||
# SPDX-FileCopyrightText: The RamenDR authors | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
--- | ||
resources: | ||
- namespace.yaml | ||
- pvc.yaml | ||
- deploy.yaml |
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,8 @@ | ||
# SPDX-FileCopyrightText: The RamenDR authors | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
--- | ||
apiVersion: v1 | ||
kind: Namespace | ||
metadata: | ||
name: busybox |
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,17 @@ | ||
# SPDX-FileCopyrightText: The RamenDR authors | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
--- | ||
apiVersion: v1 | ||
kind: PersistentVolumeClaim | ||
metadata: | ||
name: busybox-pvc | ||
namespace: busybox | ||
labels: | ||
appname: busybox | ||
spec: | ||
accessModes: [ReadWriteOnce] | ||
storageClassName: csi-hostpath-sc | ||
resources: | ||
requests: | ||
storage: 1Gi |
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,22 @@ | ||
# SPDX-FileCopyrightText: The RamenDR authors | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
--- | ||
apiVersion: volsync.backube/v1alpha1 | ||
kind: ReplicationSource | ||
metadata: | ||
name: busybox-src | ||
namespace: busybox | ||
spec: | ||
sourcePVC: busybox-pvc | ||
trigger: | ||
manual: replication-1 | ||
rsyncTLS: | ||
keySecret: volsync-rsync-tls-busybox-dst | ||
address: volsync-rsync-tls-dst-busybox-dst.busybox.svc.clusterset.local | ||
copyMethod: Snapshot | ||
volumeSnapshotClassName: csi-hostpath-snapclass | ||
moverSecurityContext: | ||
runAsUser: 10000 | ||
runAsGroup: 10000 | ||
fsGroup: 10000 |