From 9661971ada8e1c1e680c69f1e297bdb3dde4e741 Mon Sep 17 00:00:00 2001 From: "A.Arnold" Date: Sat, 2 Mar 2024 16:43:01 +0000 Subject: [PATCH 01/22] OADP-3617: Backing up and Restoring VMs - OADP Signed-off-by: A.Arnold --- _topic_maps/_topic_map.yml | 9 + .../backing-up-restoring-vms-using-oadp.adoc | 395 ++++++++++++++++++ .../installing/backing-up-vms-using-oadp.adoc | 74 ++++ .../installing/installing-oadp-kubevirt.adoc | 68 +++ .../installing/restoring-vms-using-oadp.adoc | 21 + modules/oadp-installing-dpa-1-3.adoc | 4 +- ...-setting-resource-limits-and-requests.adoc | 48 +++ 7 files changed, 617 insertions(+), 2 deletions(-) create mode 100644 backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc create mode 100644 backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc create mode 100644 backup_and_restore/application_backup_and_restore/installing/installing-oadp-kubevirt.adoc create mode 100644 backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc create mode 100644 modules/oadp-kubevirt-setting-resource-limits-and-requests.adoc diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml index e6e81a47823d..30e0d24bfb67 100644 --- a/_topic_maps/_topic_map.yml +++ b/_topic_maps/_topic_map.yml @@ -3104,6 +3104,15 @@ Topics: File: about-oadp-1-3-data-mover - Name: Backing up and restoring volumes by using CSI snapshots File: oadp-backup-restore-csi-snapshots + - Name: Backing up and restoring virtual machines using OADP + Dir: installing + Topics: + - Name: Backing up virtual machines using OADP + File: backing-up-vms-using-oadp + - Name: Restoring virtual machines using OADP + File: restoring-vms-using-oadp + - Name: Backing up and restoring virtual machines with OADP examples + File: backing-up-restoring-vms-using-oadp - Name: Troubleshooting File: troubleshooting - Name: OADP API diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc new file mode 100644 index 000000000000..848c0846ee30 --- /dev/null +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc @@ -0,0 +1,395 @@ +:_mod-docs-content-type: ASSEMBLY +include::_attributes/common-attributes.adoc[] +[id="backing-up-restoring-vms-using-oadp"] += Backing up and restoring up virtual machines using OADP examples +:context: oadp-backing-up-vms +:installing-oadp-kubevirt: + +toc::[] + +[id="backing-up-restoring-fedora-vm-block-pv"] +== Backup and restore a running Virtual Machine, with native data mover + +Example of Backing up and restoring Fedora virtual machine (VM) deployed with large file Over Block PV using {oadp-first}. + +.Prerequisites + +. OADP operator installed on OCP cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator] +. An available object storage for the backup location. +. A file consisting of cloud credentials keys. For more information, please refer to the official OADP docs +https://docs.openshift.com/container-platform/4.13/backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.html +. {VirtProductName} Operator installed. +. Container Storage Interface (CSI) Storage Provisioner supporting Block volumes + + +.Procedure + +. Create a DPA instance with CSI and Node Agent enabled: + ++ +[source,terminal] +---- +cat < -n openshift-adp --from-file cloud= +---- + ++ +[NOTE] +==== +The Data Protection Application (DPA) configuration can be different for each bucket. +==== + +. Verify that the DataProtectionApplication (DPA) is reconciled. + +. Verify the Velero and Node agents pods are created and running: ++ +[source,terminal] +---- +$ oc get pod -n openshift-adp +---- ++ +Output ++ +[source,terminal] +---- +NAME READY STATUS RESTARTS AGE +node-agent-p4j6c 1/1 Running 0 13m +openshift-adp-controller-manager-54877df7c4-sw6zj 1/1 Running 0 162m +velero-5d6cbbc5d-gqpls 1/1 Running 0 13m +---- + +. Verify the node agent is running in `privilege` mode, outputting in YAML: + ++ +[source,terminal] +---- +$ oc get po/node-agent-p4j6c -o yaml +---- ++ +Output: ++ +[source,terminal] +---- + containers: + - args: + - node-agent + - server + command: + - /velero + env: + - name: NODE_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: spec.nodeName + - name: VELERO_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: VELERO_SCRATCH_DIR + value: /scratch + image: registry.redhat.io/oadp/oadp-velero-rhel9@sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + imagePullPolicy: Always + name: node-agent + resources: + requests: + cpu: 100m + memory: 64Mi + securityContext: + privileged: true <1> +---- ++ +<1> Node agent is running in `privilege` mode. + +. Perform a backup: ++ +[source,terminal] +---- +$ oc create -f backup.yml +apiVersion: velero.io/v1 +kind: Backup +metadata: + name: test-backup + labels: + velero.io/storage-location: default + namespace: openshift-adp +spec: + hooks: {} + includedNamespaces: + - test-vm + snapshotMoveData: true + storageLocation: ts-dpa-1 + ttl: 720h0m0s +---- + +. Verify the clone PVC volumeMode: ++ +[source,terminal] +---- +$ oc get pvc/ocp-kubevirt-df735757-6c10-11ee-9572-0c9a3c9340c2-z5hv -o jsonpath='{.spec.volumeMode}' +---- ++ +Output: ++ +[source,terminal] +---- +Block +---- +. Wait until the backups is completed successfully: ++ +[source,terminal] +---- +$ oc get backup test-backup -n openshift-adp -o jsonpath='{.status.phase}' +---- ++ +Output: ++ +[source,terminal] +---- +Completed +---- + +. Verify the dataupload CR's status is completed ++ +[source,terminal] +---- +$ oc get dataupload +---- ++ +Output: ++ +[source,terminal] +---- +NAME STATUS STARTED BYTES DONE TOTAL BYTES STORAGE LOCATION AGE NODE +test-backup4 Completed 105s 50223065 50223065 ts-dpa-1 105s oadp-51230-56rtw-worker +---- + +. Verify that there are no VolumeSnapshots resources remaining in the OADP namespace: ++ +[source,terminal] +---- +$ oc get vs -n openshift-adp +---- ++ +Output: ++ +[source,terminal] +---- +No resources found in openshift-adp namespace. +---- + +. Verify that there are no persistent volume claims (PVCs) remaining in the OADP namespace `openshift-adp`: ++ +[source,terminal] +---- +$ oc get pvc -n openshift-adp +---- ++ +Output: ++ +[source,terminal] +---- +No resources found in openshift-adp namespace. +---- + +. Delete the application namespace: ++ +[source,terminal] +---- +$ appm remove ocp-kubevirt +---- + +. Check that the application has been deleted: ++ +[source,terminal] +---- +$ oc get project ocp-kubevirt +---- ++ +Output: ++ +[source,terminal] +---- +Error from server (NotFound): namespaces "ocp-kubevirt" not found +---- + +. Perform a restore: ++ +[source,terminal] +---- +$ oc create -f restore.yml +apiVersion: velero.io/v1 +kind: Restore +metadata: + name: test-restore1 + namespace: openshift-adp +spec: + backupName: test-backup + excludedResources: + - nodes + - events + - events.events.k8s.io + - backups.velero.io + - restores.velero.io + - resticrepositories.velero.io + restorePVs: true +---- + +. Verify the clone PVC volumeMode is present in the namespace `openshift-adp ns`: ++ +[source,terminal] +---- +$ oc get pvc/ -o jsonpath='{.spec.volumeMode}'ocp-kubevirt-df735757-6c10-11ee-9572-0c9a3c9340c2-z5hvf +---- ++ +Output: ++ +[source,terminal] +---- +Block +---- + +. Wait until the restore finishes successfully: ++ +[source,terminal] +---- +$ oc get restore test-restore1 -n openshift-adp -o jsonpath='{.status.phase}' +---- ++ +Output: ++ +[source,terminal] +---- +Completed +---- + +. Verify the datadownload CR is completed successfully: ++ +[source,terminal] +---- +$ oc get datadownload +---- ++ +Output: ++ +[source,terminal] +---- +NAME STATUS STARTED BYTES DONE TOTAL BYTES STORAGE LOCATION AGE NODE +test-restore3-nv4n2 Completed 55s 50223065 50223065 ts-dpa-1 55s oadp-51230-56rtw-worker +---- + +. Verify that there are no PVCs left on the namespace `openshift-adp ns`: ++ +[source,terminal] +---- +$ oc get pvc +---- +Output: ++ +[source,terminal] +---- +No resources were found in openshift-adp namespace. +---- + +. Verify the VM is running: ++ +[source,terminal] +---- +$ appm validate ocp-kubevirt && echo ok! +---- ++ +Output: ++ +[source,terminal] +---- +... +2024-02-14 18:22:02,711.711 - INFO: TASK [ocp-kubevirt : Wait for VM to be Running & Ready] +2024-02-14 18:22:02,711.711 - INFO: ok: [localhost] +2024-02-14 18:22:03,924.924 - INFO: +2024-02-14 18:22:03,925.925 - INFO: TASK [ocp-kubevirt : Wait for VM to have AgentConnected status True indicating the guest agent is running] *** +2024-02-14 18:22:03,925.925 - INFO: ok: [localhost] +2024-02-14 18:22:03,951.951 - INFO: +2024-02-14 18:22:03,951.951 - INFO: PLAY RECAP +2024-02-14 18:22:03,951.951 - INFO: localhost : ok=5 changed=1 unreachable=0 failed=0 skipped=4 rescued=0 ignored=0 +2024-02-14 18:22:04,115.115 - DEBUG: Removed private data directory: /tmp/tmpic2dgato +ok! <1> +---- ++ +<1> `ok!` is echoed, showing the VM is running. + +. Verify the PVC holding the VM is provided with `Block` mode PV: ++ +[source,terminal] +---- +$ oc get pvc/test-vm-dv -o jsonpath='{.spec.volumeMode}' +---- ++ +Output: ++ +[source,terminal] +---- +Block +---- + +. Verify the PVC is mounted properly to the `virt-launcher` pod ++ +[source,terminal] +---- +$ oc get pvc/test-vm-dv -o jsonpath='{.status.phase}' +---- ++ +Output: ++ +[source,terminal] +---- +Bound +---- + +. Verify VM file content SHA digest: ++ +[source,terminal] +---- +$ sha256sum /tmp/random_data-from-v.bin +---- ++ +Output: ++ +[source,terminal] +---- +XXXXXXXXXXXXXXXXXXX6c8d3b2488af14e116292a21dd15fbedb724014673 /tmp/random_data-from-vm-after-restore.bin +---- diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc new file mode 100644 index 000000000000..d263a25386f4 --- /dev/null +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -0,0 +1,74 @@ +:_mod-docs-content-type: ASSEMBLY +include::_attributes/common-attributes.adoc[] +[id="backing-up-vms-using-oadp"] += Backing up virtual machines using OADP +:context: oadp-backing-up-vms +:installing-oadp-kubevirt: + +toc::[] + +.Prerequisites + +* Access to the cluster as a user with the `cluster-admin` role. + +.Procedure + +* Install the OADP Operator according to the instructions for your storage provider. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[installing the {oadp-first} Operator] + +** For more details about + +* Install the Data Protection Application with the kubevirt and openshift plugins. For more details, see xref:oadp-installing-dpa-1-3_oadp-backing-up-vms[Installing the Data Protection Application] with the xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[`kubevirt` and `openshift` plugins] + +* Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:oadp-creating-backup-cr.adoc_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. + +* Restore the Backup CR by creating a Restore CR. For more details, see xref:restoring-vms-using-oadp.adoc#oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. + + +include::modules/oadp-about-backup-snapshot-locations-secrets.adoc[leveloffset=+1] + +include::modules/oadp-creating-default-secret.adoc[leveloffset=+2] + +include::modules/oadp-secrets-for-different-credentials.adoc[leveloffset=+2] + + +[id="configuring-dpa-kubevirt"] +== Configuring the Data Protection Application + +You can configure the Data Protection Application by setting Velero resource allocations or enabling self-signed CA certificates. + + +include::modules/oadp-kubevirt-setting-resource-limits-and-requests.adoc[leveloffset=+2] + +include::modules/oadp-self-signed-certificate.adoc[leveloffset=+2] + +include::modules/oadp-installing-dpa-1-3.adoc[leveloffset=+1] + +[IMPORTANT] +.OADP 1.2 +==== +Red Hat only supports the combination of OADP versions 1.3.0 and later, and {VirtProductName} versions 4.14 and later. +OADP versions before 1.3.0 are not supported for back up and restore of {VirtProductName}. +==== + +include::modules/oadp-backing-up-pvs-csi.adoc[leveloffset=+2] + +[WARNING] +==== +Red Hat support is limited to only the following options: +* CSI backups +* CSI backups with DataMover. For more information, see xref:../../../backing-up-restoring-vms-using-oadp.adoc#backing-up-restoring-fedora-vm-block-pv[Backup and restore a running Virtual Machine, with native DataMover]. +==== + +include::modules/oadp-creating-backup-cr.adoc[leveloffset=+2] + + +[role="_additional-resources"] +[id="additional-resources_virt-backup-restore-overview"] +== Additional resources + +* xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-features-plugins[OADP features and plugins] +* xref:../../../virt/backup_restore/virt-backing-up-vms.adoc#oadp-backing-up-pvs-csi_virt-backing-up-vms[Container Storage Interface (CSI) snapshots] on CSI-enabled cloud storage, such as Ceph RBD or Ceph FS. +* xref:../../../backup_and_restore/application_backup_and_restore/troubleshooting.adoc#troubleshooting[Troubleshooting] +* xref:../../../backing-up-restoring-vms-using-oadp.adoc#backing-up-restoring-fedora-vm-block-pv[Backup and restore a running Virtual Machine, with native DataMover] + +:!installing-oadp-kubevirt: diff --git a/backup_and_restore/application_backup_and_restore/installing/installing-oadp-kubevirt.adoc b/backup_and_restore/application_backup_and_restore/installing/installing-oadp-kubevirt.adoc new file mode 100644 index 000000000000..f53d8203f122 --- /dev/null +++ b/backup_and_restore/application_backup_and_restore/installing/installing-oadp-kubevirt.adoc @@ -0,0 +1,68 @@ +:_mod-docs-content-type: ASSEMBLY +[id="installing-oadp-kubevirt"] +// If docs team approves the name, "Configuring OADP with Kubevirt" great but I suspect it will need to be "Configuring OADP with OpenShift Virtualization" or "Configuring OADP with Virtualization" or perhaps... bear with me.. "OADP and OpenShift-Virtualization" += Configuring the OpenShift API for Data Protection with {VirtProductName} +include::_attributes/common-attributes.adoc[] +:context: installing-oadp-kubevirt +:installing-oadp-kubevirt: +:credentials: cloud-credentials +:provider: kubevirt + +toc::[] + +You install the {oadp-first} with {VirtProductName} by installing the OADP Operator and configuring a backup location and a snapshot location. Then, you install the Data Protection Application. + +// include::snippets/oadp-mtc-operator.adoc[] + +Back up and restore virtual machines by using the xref:../../../backup_and_restore/index.adoc#application-backup-restore-operations-overview[OpenShift API for Data Protection (OADP)]. + +.Prerequisites + +* Access to the cluster as a user with the `cluster-admin` role. + +.Procedure + +. Install the xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator] according to the instructions for your storage provider. + +. Install the xref:oadp-installing-dpa-1-3_installing-oadp-kubevirt[Data Protection Application] with the `kubevirt` and `openshift` xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[plugins]. + +. Back up virtual machines by creating a xref:../../../backup_and_restore/application_backup_and_restore/backing_up_and_restoring/backing-up-applications.adoc#backing-up-applications[`Backup` custom resource (CR)]. + +. Restore the `Backup` CR by creating a xref:../../../backup_and_restore/application_backup_and_restore/backing_up_and_restoring/restoring-applications.adoc#restoring-applications[`Restore` CR]. + +You create a `Secret` for the backup location and then you install the Data Protection Application. For more details, see xref:../../..//backup_and_restore/application_backup_and_restore/installing/oadp-installing-operator.adoc#oadp-installing-operator-doc[Installing the OADP Operator]. + +To install the OADP Operator in a restricted network environment, you must first disable the default OperatorHub sources and mirror the Operator catalog. For details, see xref:../../../operators/admin/olm-restricted-networks.adoc#olm-restricted-networks[Using Operator Lifecycle Manager on restricted networks]. + + +//include::modules/oadp-installing-operator.adoc[leveloffset=+1] +include::modules/oadp-about-backup-snapshot-locations-secrets.adoc[leveloffset=+1] + +include::modules/oadp-creating-default-secret.adoc[leveloffset=+2] + +include::modules/oadp-secrets-for-different-credentials.adoc[leveloffset=+2] + +[id="configuring-dpa-kubevirt"] +== Configuring the Data Protection Application + +You can configure the Data Protection Application by setting Velero resource allocations or enabling self-signed CA certificates. + +// include::modules/oadp-kubevirt-setting-resource-limits-and-requests.adoc[leveloffset=+2] + +include::modules/oadp-self-signed-certificate.adoc[leveloffset=+2] + +include::modules/oadp-installing-dpa-1-3.adoc[leveloffset=+1] + +[IMPORTANT] +.OADP 1.2 +==== +// While it is possible to use OADP 1.2, it is advisable to use OADP 1.3. W.H: "We want stronger language here, and perhaps put this at the top of the section as well. "Red Hat supports the combination of OADP-1.3.x and OpenShift-Virtualization 4.14+ only" Using OADP-1.2.x to backup and restore OpenShift-Virtualization will not be supported" +Red Hat only supports the combination of OADP versions 1.3.0 and later, and {VirtProductName} versions 4.14 and later. +OADP versions before 1.3.0 are not supported for back up and restore of {VirtProductName}. +==== + +// include::modules/oadp-creating-object-bucket-claim.adoc[leveloffset=+2] + +// include::modules/oadp-enabling-csi-dpa.adoc[leveloffset=+2] -- If possible IMHO we could remove this section from the kubevirt section if possible, if it's a PITA don't sweat it installing-oadp-kubevirt#oadp-enabling-csi-dpa_installing-oadp-kubevirt + +:!installing-oadp-kubevirt: diff --git a/backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc new file mode 100644 index 000000000000..13d46a0bbfc1 --- /dev/null +++ b/backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc @@ -0,0 +1,21 @@ +:_mod-docs-content-type: ASSEMBLY +include::_attributes/common-attributes.adoc[] +[id="restoring-vms-using-oadp"] += Restoring up virtual machines using OADP +:context: restoring-vms-using-oadp +:installing-oadp-kubevirt: + +toc::[] + +Restore application backups by creating a `Restore` custom resource (CR). See xref:oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. + + +Create restore hooks to run commands in init containers, before the application container starts, or in the application container itself, by editing the `Restore` CR. See xref:oadp-creating-restore-hooks_restoring-vms-using-oadp[Creating restore hooks]. + +include::modules/oadp-creating-restore-cr.adoc[leveloffset=+1] + +include::modules/oadp-creating-restore-hooks.adoc[leveloffset=+2] + + + +:!installing-oadp-kubevirt: diff --git a/modules/oadp-installing-dpa-1-3.adoc b/modules/oadp-installing-dpa-1-3.adoc index cc3ad0376741..95f2186eae46 100644 --- a/modules/oadp-installing-dpa-1-3.adoc +++ b/modules/oadp-installing-dpa-1-3.adoc @@ -18,7 +18,7 @@ You install the Data Protection Application (DPA) by creating an instance of the * You must configure object storage as a backup location. * If you use snapshots to back up PVs, your cloud provider must support either a native snapshot API or Container Storage Interface (CSI) snapshots. * If the backup and snapshot locations use the same credentials, you must create a `Secret` with the default name, `{credentials}`. -ifdef::installing-oadp-azure,installing-oadp-gcp,installing-oadp-mcg,installing-oadp-ocs,virt-installing-configuring-oadp[] +ifdef::installing-oadp-azure,installing-oadp-gcp,installing-oadp-mcg,installing-oadp-ocs,oadp-backing-up-vms,virt-installing-configuring-oadp[] * If the backup and snapshot locations use different credentials, you must create two `Secrets`: ** `Secret` with a custom name for the backup location. You add this `Secret` to the `DataProtectionApplication` CR. @@ -309,7 +309,7 @@ spec: <13> Specify a bucket as the backup storage location. If the bucket is not a dedicated bucket for Velero backups, you must specify a prefix. <14> Specify a prefix for Velero backups, for example, `velero`, if the bucket is used for multiple purposes. endif::[] -ifdef::virt-installing-configuring-oadp[] +ifdef::oadp-backing-up-vms,virt-installing-configuring-oadp[] + [source,yaml,subs="attributes+"] ---- diff --git a/modules/oadp-kubevirt-setting-resource-limits-and-requests.adoc b/modules/oadp-kubevirt-setting-resource-limits-and-requests.adoc new file mode 100644 index 000000000000..529428cbcd74 --- /dev/null +++ b/modules/oadp-kubevirt-setting-resource-limits-and-requests.adoc @@ -0,0 +1,48 @@ +// Module included in the following assemblies: +// +// * backup_and_restore/application_backup_and_restore/installing/installing-oadp-kubevirt.adoc + + +:_mod-docs-content-type: CONCEPT +[id="oadp-kubevirt-setting-resource-limits-and-requests_{context}"] += Velero CPU and memory resource allocations for {VirtProductName} + +You set the CPU and memory resource allocations for the `Velero` pod by editing the `DataProtectionApplication` custom resource (CR) manifest. + +.Prerequisites + +* You must have the OpenShift API for Data Protection (OADP) Operator installed. + +.Procedure + +* Edit the values in the `spec.configuration.velero.podConfig.ResourceAllocations` block of the `DataProtectionApplication` CR manifest, as in the following example: ++ +[source,yaml] +---- +apiVersion: oadp.openshift.io/v1alpha1 +kind: DataProtectionApplication +metadata: + name: +spec: +... + configuration: + velero: + podConfig: + nodeSelector: <1> + resourceAllocations: <2> + limits: + cpu: "1" + memory: 1024Mi + requests: + cpu: 200m + memory: 256Mi +---- +<1> Specify the node selector to be supplied to Velero podSpec. +<2> The `resourceAllocations` for backing up {VirtProductName} are most lkely to be more resource intensive than backing up containers. It is advisable to increase the memory and cpu limits. + + +[NOTE] +==== +Kopia is an option in OADP 1.3 and later releases. You can use Kopia for file system backups, and Kopia is your only option for Data Mover cases with the built-in Data Mover. +==== + From 6a656c59aeb92daf9041753498fe456135294ff6 Mon Sep 17 00:00:00 2001 From: "A.Arnold" Date: Thu, 14 Mar 2024 19:41:35 +0000 Subject: [PATCH 02/22] Updating Mar14@19:41 Signed-off-by: A.Arnold --- .../installing/backing-up-restoring-vms-using-oadp.adoc | 3 +-- .../installing/backing-up-vms-using-oadp.adoc | 2 -- modules/oadp-installing-dpa-1-3.adoc | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc index 848c0846ee30..d2cd95b48e96 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc @@ -16,8 +16,7 @@ Example of Backing up and restoring Fedora virtual machine (VM) deployed with la . OADP operator installed on OCP cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator] . An available object storage for the backup location. -. A file consisting of cloud credentials keys. For more information, please refer to the official OADP docs -https://docs.openshift.com/container-platform/4.13/backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.html +. A file consisting of cloud credentials. . {VirtProductName} Operator installed. . Container Storage Interface (CSI) Storage Provisioner supporting Block volumes diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc index d263a25386f4..9ee72c947616 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -15,8 +15,6 @@ toc::[] * Install the OADP Operator according to the instructions for your storage provider. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[installing the {oadp-first} Operator] -** For more details about - * Install the Data Protection Application with the kubevirt and openshift plugins. For more details, see xref:oadp-installing-dpa-1-3_oadp-backing-up-vms[Installing the Data Protection Application] with the xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[`kubevirt` and `openshift` plugins] * Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:oadp-creating-backup-cr.adoc_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. diff --git a/modules/oadp-installing-dpa-1-3.adoc b/modules/oadp-installing-dpa-1-3.adoc index 95f2186eae46..6680899a9cc2 100644 --- a/modules/oadp-installing-dpa-1-3.adoc +++ b/modules/oadp-installing-dpa-1-3.adoc @@ -18,7 +18,7 @@ You install the Data Protection Application (DPA) by creating an instance of the * You must configure object storage as a backup location. * If you use snapshots to back up PVs, your cloud provider must support either a native snapshot API or Container Storage Interface (CSI) snapshots. * If the backup and snapshot locations use the same credentials, you must create a `Secret` with the default name, `{credentials}`. -ifdef::installing-oadp-azure,installing-oadp-gcp,installing-oadp-mcg,installing-oadp-ocs,oadp-backing-up-vms,virt-installing-configuring-oadp[] +ifdef::installing-oadp-azure,installing-oadp-gcp,installing-oadp-mcg,installing-oadp-ocs,installing-oadp-kubevirt,virt-installing-configuring-oadp[] * If the backup and snapshot locations use different credentials, you must create two `Secrets`: ** `Secret` with a custom name for the backup location. You add this `Secret` to the `DataProtectionApplication` CR. @@ -309,7 +309,7 @@ spec: <13> Specify a bucket as the backup storage location. If the bucket is not a dedicated bucket for Velero backups, you must specify a prefix. <14> Specify a prefix for Velero backups, for example, `velero`, if the bucket is used for multiple purposes. endif::[] -ifdef::oadp-backing-up-vms,virt-installing-configuring-oadp[] +ifdef::installing-oadp-kubevirt,virt-installing-configuring-oadp[] + [source,yaml,subs="attributes+"] ---- From 40d97ad5f1d88741726dc58c053b8a88032f73ea Mon Sep 17 00:00:00 2001 From: "A.Arnold" Date: Fri, 15 Mar 2024 00:00:37 +0000 Subject: [PATCH 03/22] Update 15Mar@00:00 Signed-off-by: A.Arnold --- modules/oadp-installing-dpa-1-3.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/oadp-installing-dpa-1-3.adoc b/modules/oadp-installing-dpa-1-3.adoc index 6680899a9cc2..3675db617535 100644 --- a/modules/oadp-installing-dpa-1-3.adoc +++ b/modules/oadp-installing-dpa-1-3.adoc @@ -351,8 +351,8 @@ spec: <6> Specify how many minutes to wait for several Velero resources before timeout occurs, such as Velero CRD availability, volumeSnapshot deletion, and backup repository availability. The default is 10m. <7> The administrative agent that routes the administrative requests to servers. <8> Set this value to `true` if you want to enable `nodeAgent` and perform File System Backup. -<9> Enter `kopia` or `restic` as your uploader. You cannot change the selection after the installation. For the Built-in DataMover you must use Kopia. The `nodeAgent` deploys a daemon set, which means that the `nodeAgent` pods run on each working node. You can configure File System Backup by adding `spec.defaultVolumesToFsBackup: true` to the `Backup` CR. -<10> Specify the nodes on which Kopia or Restic are available. By default, Kopia or Restic run on all nodes. +<9> Enter `kopia` as your uploader, to use the Built-in DataMover. The `nodeAgent` deploys a daemon set, which means that the `nodeAgent` pods run on each working node. You can configure File System Backup by adding `spec.defaultVolumesToFsBackup: true` to the `Backup` CR. +<10> Specify the nodes on which Kopia are available. By default, Kopia run on all nodes. <11> Specify the backup provider. <12> Specify the correct default name for the `Secret`, for example, `cloud-credentials-gcp`, if you use a default plugin for the backup provider. If specifying a custom name, then the custom name is used for the backup location. If you do not specify a `Secret` name, the default name is used. <13> Specify a bucket as the backup storage location. If the bucket is not a dedicated bucket for Velero backups, you must specify a prefix. From d9d35368778c26ce9c5147c0570fbccc0ebdd9c6 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Fri, 15 Mar 2024 00:08:33 +0000 Subject: [PATCH 04/22] Update backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc --- .../installing/backing-up-restoring-vms-using-oadp.adoc | 1 + 1 file changed, 1 insertion(+) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc index d2cd95b48e96..7a537d637c05 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc @@ -7,6 +7,7 @@ include::_attributes/common-attributes.adoc[] toc::[] +// add a couple of examples from the test cases [id="backing-up-restoring-fedora-vm-block-pv"] == Backup and restore a running Virtual Machine, with native data mover From 557a769fdc1f3e037ea872cd2e3ec2b8475eb107 Mon Sep 17 00:00:00 2001 From: "A.Arnold" Date: Thu, 28 Mar 2024 19:14:24 +0000 Subject: [PATCH 05/22] Updating Signed-off-by: A.Arnold --- .../backing-up-restoring-vms-using-oadp.adoc | 394 +++++++++++++++++- 1 file changed, 387 insertions(+), 7 deletions(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc index 7a537d637c05..cc7def48b2b7 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc @@ -9,16 +9,16 @@ toc::[] // add a couple of examples from the test cases [id="backing-up-restoring-fedora-vm-block-pv"] -== Backup and restore a running Virtual Machine, with native data mover +== Backup and restore a Fedora Virtual Machine with native data mover -Example of Backing up and restoring Fedora virtual machine (VM) deployed with large file Over Block PV using {oadp-first}. +The following is an example of backing up and restoring a Fedora virtual machine (VM) deployed with large file over block Persistent Volume (PV) using {oadp-first}. .Prerequisites -. OADP operator installed on OCP cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator] -. An available object storage for the backup location. -. A file consisting of cloud credentials. -. {VirtProductName} Operator installed. +. OADP operator installed on OCP cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator]. +. An available object storage for the backup location +. A file consisting of cloud credentials +. {VirtProductName} Operator installed . Container Storage Interface (CSI) Storage Provisioner supporting Block volumes @@ -380,7 +380,7 @@ Output: Bound ---- -. Verify VM file content SHA digest: +. Verify VM file content Secure Hash Algorithms (SHA) digest: + [source,terminal] ---- @@ -393,3 +393,383 @@ Output: ---- XXXXXXXXXXXXXXXXXXX6c8d3b2488af14e116292a21dd15fbedb724014673 /tmp/random_data-from-vm-after-restore.bin ---- + + +[id="backing-up-restoring-windows-vm-block-pv"] +== Backup and restore a Windows Virtual Machine with native data mover + +The following is an example of backing up and restoring a Windows virtual machine (VM) deployed with large file over block Persistent Volume (PV) using {oadp-first}. + +.Prerequisites + +. OADP operator installed on OCP cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator] +. An available object storage for the backup location. +. A file consisting of cloud credentials keys. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator] +. {VirtProductName} Operator installed +. Container Storage Interface (CSI) Storage Provisioner supporting block volumes + + +.Procedure + +. Create a DPA instance with CSI and Node Agent enabled: + ++ +[source,terminal] +---- +cat < -n openshift-adp --from-file cloud= +---- + +. Verify DPA is `reconciled` successfully and there are no errors. + +. Verify the Velero and Node agents pods are created and running. ++ +[source,terminal] +---- +$ oc get pod -n openshift-adp +---- + ++ +Output: ++ +[source,terminal] +---- +NAME READY STATUS RESTARTS AGE +node-agent-p4j6c 1/1 Running 0 13m +node-agent-pd546 1/1 Running 0 13m +node-agent-wn4xr 1/1 Running 0 13m +openshift-adp-controller-manager-54877df7c4-sw6zj 1/1 Running 0 162m +velero-5d6cbbc5d-gqpls 1/1 Running 0 13m +---- + +. Verify the node agents are running in `privilege` mode: ++ +[source,terminal] +---- +$ oc get po/node-agent-p4j6c -o yaml +---- ++ +Output: ++ +[source,terminal] +---- + containers: + - args: + - node-agent + - server + command: + - /velero + env: + - name: NODE_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: spec.nodeName + - name: VELERO_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: VELERO_SCRATCH_DIR + value: /scratch + image: registry.redhat.io/oadp/oadp-velero-rhel9@sha256:a703c7c9bd75a8072004bf9c968b8aefbfb35fa7121b46700875a7b4c3f208fc + imagePullPolicy: Always + name: node-agent + resources: + requests: + cpu: 100m + memory: 64Mi + securityContext: + privileged: true +---- + + + +. Deploy a Virtual Machine with a data volume template, for example: ++ +[source,terminal] +---- +apiVersion: kubevirt.io/v1 +kind: VirtualMachine +metadata: + annotations: + kubemacpool.io/transaction-timestamp: '2024-02-02T11:25:23.989536538Z' + vm.kubevirt.io/validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.memory.guest", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 2147483648 + }, { + "name": "windows-virtio-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "virtio disk bus type has better performance, install virtio drivers in VM and change bus type", + "values": ["virtio"], + "justWarning": true + }, { + "name": "windows-disk-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "disk bus has to be either virtio or sata or scsi", + "values": ["virtio", "sata", "scsi"] + }, { + "name": "windows-cd-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", + "rule": "enum", + "message": "cd bus has to be sata", + "values": ["sata"] + } + ] + labels: + app: win10-orange-barnacle-28 + vm.kubevirt.io/template: windows10-desktop-medium + vm.kubevirt.io/template.namespace: openshift + vm.kubevirt.io/template.revision: '1' + vm.kubevirt.io/template.version: v0.27.0 + name: win10-orange-barnacle-28 + namespace: test-vm + uid: 73699269-5b1d-4127-a7af-41f6320b3669 +spec: + dataVolumeTemplates: + - apiVersion: cdi.kubevirt.io/v1beta1 + kind: DataVolume + metadata: + creationTimestamp: null + name: win10-orange-barnacle-28 + spec: + pvc: + volumeMode: Block + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 120Gi + storageClassName: ocs-storagecluster-ceph-rbd-virtualization + source: + http: + url: 'http://cnv-qe-server.rhos-psi.cnv-qe.rhood.us/files/cnv-tests/windows-images/win_10.qcow2' + running: false + template: + metadata: + annotations: + vm.kubevirt.io/flavor: medium + vm.kubevirt.io/os: windows10 + vm.kubevirt.io/workload: desktop + creationTimestamp: null + labels: + kubevirt.io/domain: win10-orange-barnacle-28 + kubevirt.io/size: medium + spec: + architecture: amd64 + domain: + clock: + timer: + hpet: + present: false + hyperv: {} + pit: + tickPolicy: delay + rtc: + tickPolicy: catchup + utc: {} + cpu: + cores: 1 + sockets: 1 + threads: 1 + devices: + disks: + - disk: + bus: sata + name: rootdisk + - cdrom: + bus: sata + name: windows-drivers-disk + inputs: + - bus: usb + name: tablet + type: tablet + interfaces: + - macAddress: '02:04:b9:00:00:08' + masquerade: {} + model: e1000e + name: default + features: + acpi: {} + apic: {} + hyperv: + frequencies: {} + ipi: {} + reenlightenment: {} + relaxed: {} + reset: {} + runtime: {} + spinlocks: + spinlocks: 8191 + synic: {} + synictimer: + direct: {} + tlbflush: {} + vapic: {} + vpindex: {} + machine: + type: pc-q35-rhel9.2.0 + memory: + guest: 4Gi + resources: {} + networks: + - name: default + pod: {} + terminationGracePeriodSeconds: 3600 + volumes: + - dataVolume: + name: win10-orange-barnacle-28 + name: rootdisk + - containerDisk: + image: 'oE55y-ApqAP-WMw2Z-FjwEZ' + name: windows-drivers-disk +---- + +. Verify the status of the VM. + +. Verify the PVC holding the VM is provided with Block mode PV; ++ +[source,terminal] +---- + $ oc get pvc/test-vm-dv -o jsonpath='{.spec.volumeMode}' +---- + +. Output: ++ +[source,terminal] +---- +Block +---- + +. Verify the PVC holding the VM is mounted Properly to the virt-launcher pod; ++ +[source,terminal] +---- +$ oc get pvc/test-vm-dv -o jsonpath='{.status.phase}' +---- + +. Output: ++ +[source,terminal] +---- +Bound +---- + +. Create a file with timestamp and copy the file to the vm, making a note of the value: ++ +[source,terminal] +---- +$ dd if=/dev/urandom of=/tmp/random_data.bin bs=1M count=1000 +---- + +. Output: ++ +[source,terminal] +---- +1000+0 records in +1000+0 records out +1048576000 bytes (1.0 GB, 1000 MiB) copied, 2.773 s, 378 MB/s +---- + +. Write the Secure Hash Algorithms (SHA) to `/tmp/random_data.bin` ++ +[source,terminal] +---- +$ sha256sum /tmp/random_data.bin +---- + +. Output: ++ +[source,terminal] +---- +9999b9ba878615968a49976c8d3b2488af14e116292a21dd15fbedb724014673 /tmp/random_data.bin +---- + +. ++ +[source,terminal] +---- +$ virtctl -nocp-kubevirt scp /tmp/random_data.bin administrator@test-vm:\c:\random_data.bin +---- + +. Output: ++ +[source,terminal] +---- +fedora@test-vm.ocp-kubevirt's password: administrator +random_data.bin 100% 1000MB 4.2MB/s 03:56 +---- + +. Verify the VM file content with the Secure Hash Algorithms (SHA) digest: ++ +[source,terminal] +---- +$ virtctl -nocp-kubevirt scp administrator@test-vm:\c:\random_data.bin /tmp/random_data-from-vm-after-restore.bin +---- + +. Output: ++ +[source,terminal] +---- +administrator@test-vm.ocp-kubevirt's password: + +random_data.bin 100% 64MB 838.1KB/s 03:56 +---- + +.. Issue ++ +[source,terminal] +---- +$ sha256sum /tmp/random_data-from-v.bin +---- + +. Output: ++ +[source,terminal] +---- +9999b9ba878615968a49976c8d3b2488af14e116292a21dd15fbedb724014673 /tmp/random_data-from-vm-after-restore.bin +---- From b4ede3f4d542d68ab539146e333d3b627fc02cbb Mon Sep 17 00:00:00 2001 From: "A.Arnold" Date: Thu, 28 Mar 2024 22:11:08 +0000 Subject: [PATCH 06/22] Updating Signed-off-by: A.Arnold --- .../installing/backing-up-restoring-vms-using-oadp.adoc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc index cc7def48b2b7..76a3e329d787 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc @@ -1,5 +1,6 @@ :_mod-docs-content-type: ASSEMBLY include::_attributes/common-attributes.adoc[] +include::_attributes/attributes-openshift-dedicated.adoc[] [id="backing-up-restoring-vms-using-oadp"] = Backing up and restoring up virtual machines using OADP examples :context: oadp-backing-up-vms @@ -15,7 +16,7 @@ The following is an example of backing up and restoring a Fedora virtual machine .Prerequisites -. OADP operator installed on OCP cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator]. +. OADP operator installed on {OCP} (OCP) cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator]. . An available object storage for the backup location . A file consisting of cloud credentials . {VirtProductName} Operator installed @@ -773,3 +774,5 @@ $ sha256sum /tmp/random_data-from-v.bin ---- 9999b9ba878615968a49976c8d3b2488af14e116292a21dd15fbedb724014673 /tmp/random_data-from-vm-after-restore.bin ---- + + From a2d76c62307c510e866b133b2fdfadb3d0b192c3 Mon Sep 17 00:00:00 2001 From: "A.Arnold" Date: Mon, 8 Apr 2024 17:28:35 +0100 Subject: [PATCH 07/22] updating Signed-off-by: A.Arnold --- .../installing/backing-up-vms-using-oadp.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc index 9ee72c947616..2ce37caef641 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -19,7 +19,7 @@ toc::[] * Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:oadp-creating-backup-cr.adoc_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. -* Restore the Backup CR by creating a Restore CR. For more details, see xref:restoring-vms-using-oadp.adoc#oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. +* Restore the Backup CR by creating a Restore CR. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc#oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. include::modules/oadp-about-backup-snapshot-locations-secrets.adoc[leveloffset=+1] From ec52fb86436a24ae01e80483ea284e075dcf94e3 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Mon, 8 Apr 2024 17:47:19 +0100 Subject: [PATCH 08/22] Update backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc --- .../installing/backing-up-vms-using-oadp.adoc | 1 + 1 file changed, 1 insertion(+) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc index 2ce37caef641..0af6fbef8a83 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -1,5 +1,6 @@ :_mod-docs-content-type: ASSEMBLY include::_attributes/common-attributes.adoc[] +include::_attributes/attributes-openshift-dedicated.adoc[] [id="backing-up-vms-using-oadp"] = Backing up virtual machines using OADP :context: oadp-backing-up-vms From ab7d4fba48aada6d800336f6d48d059345a34a36 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Mon, 8 Apr 2024 18:05:40 +0100 Subject: [PATCH 09/22] Update backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc --- .../installing/backing-up-vms-using-oadp.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc index 0af6fbef8a83..f64f40efda5b 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -18,7 +18,7 @@ toc::[] * Install the Data Protection Application with the kubevirt and openshift plugins. For more details, see xref:oadp-installing-dpa-1-3_oadp-backing-up-vms[Installing the Data Protection Application] with the xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[`kubevirt` and `openshift` plugins] -* Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:oadp-creating-backup-cr.adoc_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. +* Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. * Restore the Backup CR by creating a Restore CR. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc#oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. From 2040aadcc630bdc2afd8fb8440aa4c08dcbd1d50 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Mon, 8 Apr 2024 18:32:04 +0100 Subject: [PATCH 10/22] Update backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc --- .../installing/backing-up-vms-using-oadp.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc index f64f40efda5b..93a1c4074aa7 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -18,7 +18,7 @@ toc::[] * Install the Data Protection Application with the kubevirt and openshift plugins. For more details, see xref:oadp-installing-dpa-1-3_oadp-backing-up-vms[Installing the Data Protection Application] with the xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[`kubevirt` and `openshift` plugins] -* Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. +* Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:oadp-creating-backup-cr_backing-up-vms-using-oadp[Creating a `Backup` custom resource (CR)]. * Restore the Backup CR by creating a Restore CR. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc#oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. From 247904cd34afb37d6dad17aa33c61ebbd5854847 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Mon, 8 Apr 2024 18:43:40 +0100 Subject: [PATCH 11/22] Update backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc --- .../installing/backing-up-vms-using-oadp.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc index 93a1c4074aa7..a6a0c3eac1ef 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -18,7 +18,7 @@ toc::[] * Install the Data Protection Application with the kubevirt and openshift plugins. For more details, see xref:oadp-installing-dpa-1-3_oadp-backing-up-vms[Installing the Data Protection Application] with the xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[`kubevirt` and `openshift` plugins] -* Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:oadp-creating-backup-cr_backing-up-vms-using-oadp[Creating a `Backup` custom resource (CR)]. +* Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. * Restore the Backup CR by creating a Restore CR. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc#oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. From 673a1efe8ce2de78b3ba344527c93a1076937deb Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Mon, 8 Apr 2024 18:47:50 +0100 Subject: [PATCH 12/22] Update backing-up-restoring-vms-using-oadp.adoc --- .../backing-up-restoring-vms-using-oadp.adoc | 58 +++++++++---------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc index 76a3e329d787..33b50d50c84a 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc @@ -16,7 +16,7 @@ The following is an example of backing up and restoring a Fedora virtual machine .Prerequisites -. OADP operator installed on {OCP} (OCP) cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator]. +. {oadp-short} operator installed on {OCP} (OCP) cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator]. . An available object storage for the backup location . A file consisting of cloud credentials . {VirtProductName} Operator installed @@ -101,7 +101,7 @@ velero-5d6cbbc5d-gqpls 1/1 Runnin $ oc get po/node-agent-p4j6c -o yaml ---- + -Output: +.Example output + [source,terminal] ---- @@ -165,7 +165,7 @@ spec: $ oc get pvc/ocp-kubevirt-df735757-6c10-11ee-9572-0c9a3c9340c2-z5hv -o jsonpath='{.spec.volumeMode}' ---- + -Output: +.Example output + [source,terminal] ---- @@ -178,7 +178,7 @@ Block $ oc get backup test-backup -n openshift-adp -o jsonpath='{.status.phase}' ---- + -Output: +.Example output + [source,terminal] ---- @@ -192,7 +192,7 @@ Completed $ oc get dataupload ---- + -Output: +.Example output + [source,terminal] ---- @@ -200,28 +200,28 @@ NAME STATUS STARTED BYTES DONE TOTAL BYTES STORAGE LO test-backup4 Completed 105s 50223065 50223065 ts-dpa-1 105s oadp-51230-56rtw-worker ---- -. Verify that there are no VolumeSnapshots resources remaining in the OADP namespace: +. Verify that there are no VolumeSnapshots resources remaining in the {oadp-short} namespace: + [source,terminal] ---- $ oc get vs -n openshift-adp ---- + -Output: +.Example output + [source,terminal] ---- No resources found in openshift-adp namespace. ---- -. Verify that there are no persistent volume claims (PVCs) remaining in the OADP namespace `openshift-adp`: +. Verify that there are no persistent volume claims (PVCs) remaining in the {oadp-short} namespace `openshift-adp`: + [source,terminal] ---- $ oc get pvc -n openshift-adp ---- + -Output: +.Example output + [source,terminal] ---- @@ -242,7 +242,7 @@ $ appm remove ocp-kubevirt $ oc get project ocp-kubevirt ---- + -Output: +.Example output + [source,terminal] ---- @@ -278,7 +278,7 @@ spec: $ oc get pvc/ -o jsonpath='{.spec.volumeMode}'ocp-kubevirt-df735757-6c10-11ee-9572-0c9a3c9340c2-z5hvf ---- + -Output: +.Example output + [source,terminal] ---- @@ -292,7 +292,7 @@ Block $ oc get restore test-restore1 -n openshift-adp -o jsonpath='{.status.phase}' ---- + -Output: +.Example output + [source,terminal] ---- @@ -306,7 +306,7 @@ Completed $ oc get datadownload ---- + -Output: +.Example output + [source,terminal] ---- @@ -320,7 +320,7 @@ test-restore3-nv4n2 Completed 55s 50223065 50223065 ts-dpa-1 ---- $ oc get pvc ---- -Output: +.Example output + [source,terminal] ---- @@ -334,7 +334,7 @@ No resources were found in openshift-adp namespace. $ appm validate ocp-kubevirt && echo ok! ---- + -Output: +.Example output + [source,terminal] ---- @@ -360,7 +360,7 @@ ok! <1> $ oc get pvc/test-vm-dv -o jsonpath='{.spec.volumeMode}' ---- + -Output: +.Example output + [source,terminal] ---- @@ -374,7 +374,7 @@ Block $ oc get pvc/test-vm-dv -o jsonpath='{.status.phase}' ---- + -Output: +.Example output + [source,terminal] ---- @@ -388,7 +388,7 @@ Bound $ sha256sum /tmp/random_data-from-v.bin ---- + -Output: +.Example output + [source,terminal] ---- @@ -403,9 +403,9 @@ The following is an example of backing up and restoring a Windows virtual machin .Prerequisites -. OADP operator installed on OCP cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator] +. {oadp-short} operator installed on OCP cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator] . An available object storage for the backup location. -. A file consisting of cloud credentials keys. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[OADP Operator] +. A file consisting of cloud credentials keys. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator] . {VirtProductName} Operator installed . Container Storage Interface (CSI) Storage Provisioner supporting block volumes @@ -465,7 +465,7 @@ $ oc get pod -n openshift-adp ---- + -Output: +.Example output + [source,terminal] ---- @@ -484,7 +484,7 @@ velero-5d6cbbc5d-gqpls 1/1 Runnin $ oc get po/node-agent-p4j6c -o yaml ---- + -Output: +.Example output + [source,terminal] ---- @@ -679,7 +679,7 @@ spec: $ oc get pvc/test-vm-dv -o jsonpath='{.spec.volumeMode}' ---- -. Output: +. .Example output + [source,terminal] ---- @@ -693,7 +693,7 @@ Block $ oc get pvc/test-vm-dv -o jsonpath='{.status.phase}' ---- -. Output: +. .Example output + [source,terminal] ---- @@ -707,7 +707,7 @@ Bound $ dd if=/dev/urandom of=/tmp/random_data.bin bs=1M count=1000 ---- -. Output: +. .Example output + [source,terminal] ---- @@ -723,7 +723,7 @@ $ dd if=/dev/urandom of=/tmp/random_data.bin bs=1M count=1000 $ sha256sum /tmp/random_data.bin ---- -. Output: +. .Example output + [source,terminal] ---- @@ -737,7 +737,7 @@ $ sha256sum /tmp/random_data.bin $ virtctl -nocp-kubevirt scp /tmp/random_data.bin administrator@test-vm:\c:\random_data.bin ---- -. Output: +. .Example output + [source,terminal] ---- @@ -752,7 +752,7 @@ random_data.bin $ virtctl -nocp-kubevirt scp administrator@test-vm:\c:\random_data.bin /tmp/random_data-from-vm-after-restore.bin ---- -. Output: +. .Example output + [source,terminal] ---- @@ -768,7 +768,7 @@ random_data.bin 100% 64MB 838.1KB/s 03:56 $ sha256sum /tmp/random_data-from-v.bin ---- -. Output: +. .Example output + [source,terminal] ---- From c5b4840f3479bf2b136991c9ef627fa25aff8c3b Mon Sep 17 00:00:00 2001 From: "A.Arnold" Date: Mon, 8 Apr 2024 22:38:30 +0100 Subject: [PATCH 13/22] Updating Signed-off-by: A.Arnold --- .../installing/backing-up-vms-using-oadp.adoc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc index a6a0c3eac1ef..2224e394fa6e 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -16,10 +16,12 @@ toc::[] * Install the OADP Operator according to the instructions for your storage provider. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[installing the {oadp-first} Operator] -* Install the Data Protection Application with the kubevirt and openshift plugins. For more details, see xref:oadp-installing-dpa-1-3_oadp-backing-up-vms[Installing the Data Protection Application] with the xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[`kubevirt` and `openshift` plugins] +* Install the Data Protection Application with the kubevirt and openshift plugins. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-installing-dpa-1-3_oadp-backing-up-vms[Installing the Data Protection Application] with the xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[`kubevirt` and `openshift` plugins] * Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. + + * Restore the Backup CR by creating a Restore CR. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc#oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. From bdf03707e9b0fab02949cbf34e7d8f4a98764f11 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Mon, 8 Apr 2024 23:01:11 +0100 Subject: [PATCH 14/22] Update backing-up-vms-using-oadp.adoc --- .../installing/backing-up-vms-using-oadp.adoc | 1 - 1 file changed, 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc index 2224e394fa6e..ffdfe785bedd 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -21,7 +21,6 @@ toc::[] * Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. - * Restore the Backup CR by creating a Restore CR. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc#oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. From eb9643d1fa9852e13682acd58debdcbd0d0887b7 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Mon, 8 Apr 2024 23:17:27 +0100 Subject: [PATCH 15/22] Update backing-up-vms-using-oadp.adoc --- .../installing/backing-up-vms-using-oadp.adoc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc index ffdfe785bedd..6b49e1f50bd9 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -18,7 +18,8 @@ toc::[] * Install the Data Protection Application with the kubevirt and openshift plugins. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-installing-dpa-1-3_oadp-backing-up-vms[Installing the Data Protection Application] with the xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[`kubevirt` and `openshift` plugins] -* Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. +* Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:#oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. +// ../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. * Restore the Backup CR by creating a Restore CR. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc#oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. From b390a41ebaba493407a81a8d28e527dd01154825 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Tue, 9 Apr 2024 10:04:49 +0100 Subject: [PATCH 16/22] Update backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc --- .../installing/backing-up-vms-using-oadp.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc index 6b49e1f50bd9..b07a24abb653 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc @@ -18,7 +18,7 @@ toc::[] * Install the Data Protection Application with the kubevirt and openshift plugins. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-installing-dpa-1-3_oadp-backing-up-vms[Installing the Data Protection Application] with the xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[`kubevirt` and `openshift` plugins] -* Back up virtual machines by creating a Backup custom resource (CR). For more details, see xref:#oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. +* Back up virtual machines by creating a Backup custom resource (CR). // ../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. From dab6e252c3114461230a340df1f1e886bdb30892 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Tue, 9 Apr 2024 10:17:46 +0100 Subject: [PATCH 17/22] Update backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc --- .../installing/backing-up-restoring-vms-using-oadp.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc index 33b50d50c84a..5596b159ed1c 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc @@ -16,7 +16,7 @@ The following is an example of backing up and restoring a Fedora virtual machine .Prerequisites -. {oadp-short} operator installed on {OCP} (OCP) cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator]. +. {oadp-short} operator installed on an {OCP} cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator]. . An available object storage for the backup location . A file consisting of cloud credentials . {VirtProductName} Operator installed From f9d39f52c82d093c45803af9572289a8c2aafbc4 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Tue, 9 Apr 2024 10:19:07 +0100 Subject: [PATCH 18/22] Update backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc --- .../installing/backing-up-restoring-vms-using-oadp.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc index 5596b159ed1c..c902e6f15ab1 100644 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc +++ b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc @@ -403,7 +403,7 @@ The following is an example of backing up and restoring a Windows virtual machin .Prerequisites -. {oadp-short} operator installed on OCP cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator] +. {oadp-short} operator installed on an {OCP} cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator] . An available object storage for the backup location. . A file consisting of cloud credentials keys. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator] . {VirtProductName} Operator installed From a67d3d6fc10b362d4619a68836d00aa100556bae Mon Sep 17 00:00:00 2001 From: "A.Arnold" Date: Mon, 22 Apr 2024 18:27:21 +0100 Subject: [PATCH 19/22] Updating Signed-off-by: A.Arnold --- _topic_maps/_topic_map.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml index aaa3bf42d116..f370437bf10c 100644 --- a/_topic_maps/_topic_map.yml +++ b/_topic_maps/_topic_map.yml @@ -4170,14 +4170,14 @@ Topics: Topics: - Name: Backup and restore by using VM snapshots File: virt-backup-restore-snapshots - - Name: Installing and configuring OADP - File: virt-installing-configuring-oadp +# - Name: Installing and configuring OADP +# File: virt-installing-configuring-oadp - Name: Backing up and restoring virtual machines File: virt-backup-restore-overview - - Name: Backing up virtual machines - File: virt-backing-up-vms - - Name: Restoring virtual machines - File: virt-restoring-vms +# - Name: Backing up virtual machines +# File: virt-backing-up-vms +# - Name: Restoring virtual machines +# File: virt-restoring-vms - Name: Disaster recovery File: virt-disaster-recovery # - Name: Collecting OKD Virtualization data for community report From ed5a9c26c7d25d76a3b3e4314aef198e3d87921a Mon Sep 17 00:00:00 2001 From: "A.Arnold" Date: Mon, 22 Apr 2024 18:38:25 +0100 Subject: [PATCH 20/22] Updating Signed-off-by: A.Arnold --- _topic_maps/_topic_map.yml | 9 - _topic_maps/_topic_map_osd.yml | 12 +- _topic_maps/_topic_map_rosa.yml | 12 +- .../backing-up-restoring-vms-using-oadp.adoc | 778 ------------------ .../installing/backing-up-vms-using-oadp.adoc | 75 -- .../installing/restoring-vms-using-oadp.adoc | 21 - virt/backup_restore/virt-backing-up-vms.adoc | 65 -- virt/backup_restore/virt-restoring-vms.adoc | 14 - 8 files changed, 12 insertions(+), 974 deletions(-) delete mode 100644 backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc delete mode 100644 backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc delete mode 100644 backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc delete mode 100644 virt/backup_restore/virt-backing-up-vms.adoc delete mode 100644 virt/backup_restore/virt-restoring-vms.adoc diff --git a/_topic_maps/_topic_map.yml b/_topic_maps/_topic_map.yml index f370437bf10c..75cb584a7c4c 100644 --- a/_topic_maps/_topic_map.yml +++ b/_topic_maps/_topic_map.yml @@ -3110,15 +3110,6 @@ Topics: File: about-oadp-1-3-data-mover - Name: Backing up and restoring volumes by using CSI snapshots File: oadp-backup-restore-csi-snapshots - - Name: Backing up and restoring virtual machines using OADP - Dir: installing - Topics: - - Name: Backing up virtual machines using OADP - File: backing-up-vms-using-oadp - - Name: Restoring virtual machines using OADP - File: restoring-vms-using-oadp - - Name: Backing up and restoring virtual machines with OADP examples - File: backing-up-restoring-vms-using-oadp - Name: Troubleshooting File: troubleshooting - Name: OADP API diff --git a/_topic_maps/_topic_map_osd.yml b/_topic_maps/_topic_map_osd.yml index 350d9277cba9..b5afe6c16330 100644 --- a/_topic_maps/_topic_map_osd.yml +++ b/_topic_maps/_topic_map_osd.yml @@ -1631,14 +1631,14 @@ Topics: Topics: - Name: Backup and restore by using VM snapshots File: virt-backup-restore-snapshots - - Name: Installing and configuring OADP - File: virt-installing-configuring-oadp +# - Name: Installing and configuring OADP +# File: virt-installing-configuring-oadp - Name: Backing up and restoring virtual machines File: virt-backup-restore-overview - - Name: Backing up virtual machines - File: virt-backing-up-vms - - Name: Restoring virtual machines - File: virt-restoring-vms +# - Name: Backing up virtual machines +# File: virt-backing-up-vms +# - Name: Restoring virtual machines +# File: virt-restoring-vms # - Name: Collecting OKD Virtualization data for community report # File: virt-collecting-virt-data # Distros: openshift-origin diff --git a/_topic_maps/_topic_map_rosa.yml b/_topic_maps/_topic_map_rosa.yml index 08e702d8d955..8eccc9b868dd 100644 --- a/_topic_maps/_topic_map_rosa.yml +++ b/_topic_maps/_topic_map_rosa.yml @@ -1873,14 +1873,14 @@ Topics: Topics: - Name: Backup and restore by using VM snapshots File: virt-backup-restore-snapshots - - Name: Installing and configuring OADP - File: virt-installing-configuring-oadp +# - Name: Installing and configuring OADP +# File: virt-installing-configuring-oadp - Name: Backing up and restoring virtual machines File: virt-backup-restore-overview - - Name: Backing up virtual machines - File: virt-backing-up-vms - - Name: Restoring virtual machines - File: virt-restoring-vms +# - Name: Backing up virtual machines +# File: virt-backing-up-vms +# - Name: Restoring virtual machines +# File: virt-restoring-vms # - Name: Collecting OKD Virtualization data for community report # File: virt-collecting-virt-data # Distros: openshift-origin diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc deleted file mode 100644 index c902e6f15ab1..000000000000 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-restoring-vms-using-oadp.adoc +++ /dev/null @@ -1,778 +0,0 @@ -:_mod-docs-content-type: ASSEMBLY -include::_attributes/common-attributes.adoc[] -include::_attributes/attributes-openshift-dedicated.adoc[] -[id="backing-up-restoring-vms-using-oadp"] -= Backing up and restoring up virtual machines using OADP examples -:context: oadp-backing-up-vms -:installing-oadp-kubevirt: - -toc::[] - -// add a couple of examples from the test cases -[id="backing-up-restoring-fedora-vm-block-pv"] -== Backup and restore a Fedora Virtual Machine with native data mover - -The following is an example of backing up and restoring a Fedora virtual machine (VM) deployed with large file over block Persistent Volume (PV) using {oadp-first}. - -.Prerequisites - -. {oadp-short} operator installed on an {OCP} cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator]. -. An available object storage for the backup location -. A file consisting of cloud credentials -. {VirtProductName} Operator installed -. Container Storage Interface (CSI) Storage Provisioner supporting Block volumes - - -.Procedure - -. Create a DPA instance with CSI and Node Agent enabled: - -+ -[source,terminal] ----- -cat < -n openshift-adp --from-file cloud= ----- - -+ -[NOTE] -==== -The Data Protection Application (DPA) configuration can be different for each bucket. -==== - -. Verify that the DataProtectionApplication (DPA) is reconciled. - -. Verify the Velero and Node agents pods are created and running: -+ -[source,terminal] ----- -$ oc get pod -n openshift-adp ----- -+ -Output -+ -[source,terminal] ----- -NAME READY STATUS RESTARTS AGE -node-agent-p4j6c 1/1 Running 0 13m -openshift-adp-controller-manager-54877df7c4-sw6zj 1/1 Running 0 162m -velero-5d6cbbc5d-gqpls 1/1 Running 0 13m ----- - -. Verify the node agent is running in `privilege` mode, outputting in YAML: - -+ -[source,terminal] ----- -$ oc get po/node-agent-p4j6c -o yaml ----- -+ -.Example output -+ -[source,terminal] ----- - containers: - - args: - - node-agent - - server - command: - - /velero - env: - - name: NODE_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: spec.nodeName - - name: VELERO_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: VELERO_SCRATCH_DIR - value: /scratch - image: registry.redhat.io/oadp/oadp-velero-rhel9@sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx - imagePullPolicy: Always - name: node-agent - resources: - requests: - cpu: 100m - memory: 64Mi - securityContext: - privileged: true <1> ----- -+ -<1> Node agent is running in `privilege` mode. - -. Perform a backup: -+ -[source,terminal] ----- -$ oc create -f backup.yml -apiVersion: velero.io/v1 -kind: Backup -metadata: - name: test-backup - labels: - velero.io/storage-location: default - namespace: openshift-adp -spec: - hooks: {} - includedNamespaces: - - test-vm - snapshotMoveData: true - storageLocation: ts-dpa-1 - ttl: 720h0m0s ----- - -. Verify the clone PVC volumeMode: -+ -[source,terminal] ----- -$ oc get pvc/ocp-kubevirt-df735757-6c10-11ee-9572-0c9a3c9340c2-z5hv -o jsonpath='{.spec.volumeMode}' ----- -+ -.Example output -+ -[source,terminal] ----- -Block ----- -. Wait until the backups is completed successfully: -+ -[source,terminal] ----- -$ oc get backup test-backup -n openshift-adp -o jsonpath='{.status.phase}' ----- -+ -.Example output -+ -[source,terminal] ----- -Completed ----- - -. Verify the dataupload CR's status is completed -+ -[source,terminal] ----- -$ oc get dataupload ----- -+ -.Example output -+ -[source,terminal] ----- -NAME STATUS STARTED BYTES DONE TOTAL BYTES STORAGE LOCATION AGE NODE -test-backup4 Completed 105s 50223065 50223065 ts-dpa-1 105s oadp-51230-56rtw-worker ----- - -. Verify that there are no VolumeSnapshots resources remaining in the {oadp-short} namespace: -+ -[source,terminal] ----- -$ oc get vs -n openshift-adp ----- -+ -.Example output -+ -[source,terminal] ----- -No resources found in openshift-adp namespace. ----- - -. Verify that there are no persistent volume claims (PVCs) remaining in the {oadp-short} namespace `openshift-adp`: -+ -[source,terminal] ----- -$ oc get pvc -n openshift-adp ----- -+ -.Example output -+ -[source,terminal] ----- -No resources found in openshift-adp namespace. ----- - -. Delete the application namespace: -+ -[source,terminal] ----- -$ appm remove ocp-kubevirt ----- - -. Check that the application has been deleted: -+ -[source,terminal] ----- -$ oc get project ocp-kubevirt ----- -+ -.Example output -+ -[source,terminal] ----- -Error from server (NotFound): namespaces "ocp-kubevirt" not found ----- - -. Perform a restore: -+ -[source,terminal] ----- -$ oc create -f restore.yml -apiVersion: velero.io/v1 -kind: Restore -metadata: - name: test-restore1 - namespace: openshift-adp -spec: - backupName: test-backup - excludedResources: - - nodes - - events - - events.events.k8s.io - - backups.velero.io - - restores.velero.io - - resticrepositories.velero.io - restorePVs: true ----- - -. Verify the clone PVC volumeMode is present in the namespace `openshift-adp ns`: -+ -[source,terminal] ----- -$ oc get pvc/ -o jsonpath='{.spec.volumeMode}'ocp-kubevirt-df735757-6c10-11ee-9572-0c9a3c9340c2-z5hvf ----- -+ -.Example output -+ -[source,terminal] ----- -Block ----- - -. Wait until the restore finishes successfully: -+ -[source,terminal] ----- -$ oc get restore test-restore1 -n openshift-adp -o jsonpath='{.status.phase}' ----- -+ -.Example output -+ -[source,terminal] ----- -Completed ----- - -. Verify the datadownload CR is completed successfully: -+ -[source,terminal] ----- -$ oc get datadownload ----- -+ -.Example output -+ -[source,terminal] ----- -NAME STATUS STARTED BYTES DONE TOTAL BYTES STORAGE LOCATION AGE NODE -test-restore3-nv4n2 Completed 55s 50223065 50223065 ts-dpa-1 55s oadp-51230-56rtw-worker ----- - -. Verify that there are no PVCs left on the namespace `openshift-adp ns`: -+ -[source,terminal] ----- -$ oc get pvc ----- -.Example output -+ -[source,terminal] ----- -No resources were found in openshift-adp namespace. ----- - -. Verify the VM is running: -+ -[source,terminal] ----- -$ appm validate ocp-kubevirt && echo ok! ----- -+ -.Example output -+ -[source,terminal] ----- -... -2024-02-14 18:22:02,711.711 - INFO: TASK [ocp-kubevirt : Wait for VM to be Running & Ready] -2024-02-14 18:22:02,711.711 - INFO: ok: [localhost] -2024-02-14 18:22:03,924.924 - INFO: -2024-02-14 18:22:03,925.925 - INFO: TASK [ocp-kubevirt : Wait for VM to have AgentConnected status True indicating the guest agent is running] *** -2024-02-14 18:22:03,925.925 - INFO: ok: [localhost] -2024-02-14 18:22:03,951.951 - INFO: -2024-02-14 18:22:03,951.951 - INFO: PLAY RECAP -2024-02-14 18:22:03,951.951 - INFO: localhost : ok=5 changed=1 unreachable=0 failed=0 skipped=4 rescued=0 ignored=0 -2024-02-14 18:22:04,115.115 - DEBUG: Removed private data directory: /tmp/tmpic2dgato -ok! <1> ----- -+ -<1> `ok!` is echoed, showing the VM is running. - -. Verify the PVC holding the VM is provided with `Block` mode PV: -+ -[source,terminal] ----- -$ oc get pvc/test-vm-dv -o jsonpath='{.spec.volumeMode}' ----- -+ -.Example output -+ -[source,terminal] ----- -Block ----- - -. Verify the PVC is mounted properly to the `virt-launcher` pod -+ -[source,terminal] ----- -$ oc get pvc/test-vm-dv -o jsonpath='{.status.phase}' ----- -+ -.Example output -+ -[source,terminal] ----- -Bound ----- - -. Verify VM file content Secure Hash Algorithms (SHA) digest: -+ -[source,terminal] ----- -$ sha256sum /tmp/random_data-from-v.bin ----- -+ -.Example output -+ -[source,terminal] ----- -XXXXXXXXXXXXXXXXXXX6c8d3b2488af14e116292a21dd15fbedb724014673 /tmp/random_data-from-vm-after-restore.bin ----- - - -[id="backing-up-restoring-windows-vm-block-pv"] -== Backup and restore a Windows Virtual Machine with native data mover - -The following is an example of backing up and restoring a Windows virtual machine (VM) deployed with large file over block Persistent Volume (PV) using {oadp-first}. - -.Prerequisites - -. {oadp-short} operator installed on an {OCP} cluster. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator] -. An available object storage for the backup location. -. A file consisting of cloud credentials keys. For more information, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[{oadp-short} Operator] -. {VirtProductName} Operator installed -. Container Storage Interface (CSI) Storage Provisioner supporting block volumes - - -.Procedure - -. Create a DPA instance with CSI and Node Agent enabled: - -+ -[source,terminal] ----- -cat < -n openshift-adp --from-file cloud= ----- - -. Verify DPA is `reconciled` successfully and there are no errors. - -. Verify the Velero and Node agents pods are created and running. -+ -[source,terminal] ----- -$ oc get pod -n openshift-adp ----- - -+ -.Example output -+ -[source,terminal] ----- -NAME READY STATUS RESTARTS AGE -node-agent-p4j6c 1/1 Running 0 13m -node-agent-pd546 1/1 Running 0 13m -node-agent-wn4xr 1/1 Running 0 13m -openshift-adp-controller-manager-54877df7c4-sw6zj 1/1 Running 0 162m -velero-5d6cbbc5d-gqpls 1/1 Running 0 13m ----- - -. Verify the node agents are running in `privilege` mode: -+ -[source,terminal] ----- -$ oc get po/node-agent-p4j6c -o yaml ----- -+ -.Example output -+ -[source,terminal] ----- - containers: - - args: - - node-agent - - server - command: - - /velero - env: - - name: NODE_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: spec.nodeName - - name: VELERO_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: VELERO_SCRATCH_DIR - value: /scratch - image: registry.redhat.io/oadp/oadp-velero-rhel9@sha256:a703c7c9bd75a8072004bf9c968b8aefbfb35fa7121b46700875a7b4c3f208fc - imagePullPolicy: Always - name: node-agent - resources: - requests: - cpu: 100m - memory: 64Mi - securityContext: - privileged: true ----- - - - -. Deploy a Virtual Machine with a data volume template, for example: -+ -[source,terminal] ----- -apiVersion: kubevirt.io/v1 -kind: VirtualMachine -metadata: - annotations: - kubemacpool.io/transaction-timestamp: '2024-02-02T11:25:23.989536538Z' - vm.kubevirt.io/validations: | - [ - { - "name": "minimal-required-memory", - "path": "jsonpath::.spec.domain.memory.guest", - "rule": "integer", - "message": "This VM requires more memory.", - "min": 2147483648 - }, { - "name": "windows-virtio-bus", - "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", - "valid": "jsonpath::.spec.domain.devices.disks[*].disk.bus", - "rule": "enum", - "message": "virtio disk bus type has better performance, install virtio drivers in VM and change bus type", - "values": ["virtio"], - "justWarning": true - }, { - "name": "windows-disk-bus", - "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", - "valid": "jsonpath::.spec.domain.devices.disks[*].disk.bus", - "rule": "enum", - "message": "disk bus has to be either virtio or sata or scsi", - "values": ["virtio", "sata", "scsi"] - }, { - "name": "windows-cd-bus", - "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", - "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", - "rule": "enum", - "message": "cd bus has to be sata", - "values": ["sata"] - } - ] - labels: - app: win10-orange-barnacle-28 - vm.kubevirt.io/template: windows10-desktop-medium - vm.kubevirt.io/template.namespace: openshift - vm.kubevirt.io/template.revision: '1' - vm.kubevirt.io/template.version: v0.27.0 - name: win10-orange-barnacle-28 - namespace: test-vm - uid: 73699269-5b1d-4127-a7af-41f6320b3669 -spec: - dataVolumeTemplates: - - apiVersion: cdi.kubevirt.io/v1beta1 - kind: DataVolume - metadata: - creationTimestamp: null - name: win10-orange-barnacle-28 - spec: - pvc: - volumeMode: Block - accessModes: - - ReadWriteOnce - resources: - requests: - storage: 120Gi - storageClassName: ocs-storagecluster-ceph-rbd-virtualization - source: - http: - url: 'http://cnv-qe-server.rhos-psi.cnv-qe.rhood.us/files/cnv-tests/windows-images/win_10.qcow2' - running: false - template: - metadata: - annotations: - vm.kubevirt.io/flavor: medium - vm.kubevirt.io/os: windows10 - vm.kubevirt.io/workload: desktop - creationTimestamp: null - labels: - kubevirt.io/domain: win10-orange-barnacle-28 - kubevirt.io/size: medium - spec: - architecture: amd64 - domain: - clock: - timer: - hpet: - present: false - hyperv: {} - pit: - tickPolicy: delay - rtc: - tickPolicy: catchup - utc: {} - cpu: - cores: 1 - sockets: 1 - threads: 1 - devices: - disks: - - disk: - bus: sata - name: rootdisk - - cdrom: - bus: sata - name: windows-drivers-disk - inputs: - - bus: usb - name: tablet - type: tablet - interfaces: - - macAddress: '02:04:b9:00:00:08' - masquerade: {} - model: e1000e - name: default - features: - acpi: {} - apic: {} - hyperv: - frequencies: {} - ipi: {} - reenlightenment: {} - relaxed: {} - reset: {} - runtime: {} - spinlocks: - spinlocks: 8191 - synic: {} - synictimer: - direct: {} - tlbflush: {} - vapic: {} - vpindex: {} - machine: - type: pc-q35-rhel9.2.0 - memory: - guest: 4Gi - resources: {} - networks: - - name: default - pod: {} - terminationGracePeriodSeconds: 3600 - volumes: - - dataVolume: - name: win10-orange-barnacle-28 - name: rootdisk - - containerDisk: - image: 'oE55y-ApqAP-WMw2Z-FjwEZ' - name: windows-drivers-disk ----- - -. Verify the status of the VM. - -. Verify the PVC holding the VM is provided with Block mode PV; -+ -[source,terminal] ----- - $ oc get pvc/test-vm-dv -o jsonpath='{.spec.volumeMode}' ----- - -. .Example output -+ -[source,terminal] ----- -Block ----- - -. Verify the PVC holding the VM is mounted Properly to the virt-launcher pod; -+ -[source,terminal] ----- -$ oc get pvc/test-vm-dv -o jsonpath='{.status.phase}' ----- - -. .Example output -+ -[source,terminal] ----- -Bound ----- - -. Create a file with timestamp and copy the file to the vm, making a note of the value: -+ -[source,terminal] ----- -$ dd if=/dev/urandom of=/tmp/random_data.bin bs=1M count=1000 ----- - -. .Example output -+ -[source,terminal] ----- -1000+0 records in -1000+0 records out -1048576000 bytes (1.0 GB, 1000 MiB) copied, 2.773 s, 378 MB/s ----- - -. Write the Secure Hash Algorithms (SHA) to `/tmp/random_data.bin` -+ -[source,terminal] ----- -$ sha256sum /tmp/random_data.bin ----- - -. .Example output -+ -[source,terminal] ----- -9999b9ba878615968a49976c8d3b2488af14e116292a21dd15fbedb724014673 /tmp/random_data.bin ----- - -. -+ -[source,terminal] ----- -$ virtctl -nocp-kubevirt scp /tmp/random_data.bin administrator@test-vm:\c:\random_data.bin ----- - -. .Example output -+ -[source,terminal] ----- -fedora@test-vm.ocp-kubevirt's password: administrator -random_data.bin 100% 1000MB 4.2MB/s 03:56 ----- - -. Verify the VM file content with the Secure Hash Algorithms (SHA) digest: -+ -[source,terminal] ----- -$ virtctl -nocp-kubevirt scp administrator@test-vm:\c:\random_data.bin /tmp/random_data-from-vm-after-restore.bin ----- - -. .Example output -+ -[source,terminal] ----- -administrator@test-vm.ocp-kubevirt's password: - -random_data.bin 100% 64MB 838.1KB/s 03:56 ----- - -.. Issue -+ -[source,terminal] ----- -$ sha256sum /tmp/random_data-from-v.bin ----- - -. .Example output -+ -[source,terminal] ----- -9999b9ba878615968a49976c8d3b2488af14e116292a21dd15fbedb724014673 /tmp/random_data-from-vm-after-restore.bin ----- - - diff --git a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc deleted file mode 100644 index b07a24abb653..000000000000 --- a/backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc +++ /dev/null @@ -1,75 +0,0 @@ -:_mod-docs-content-type: ASSEMBLY -include::_attributes/common-attributes.adoc[] -include::_attributes/attributes-openshift-dedicated.adoc[] -[id="backing-up-vms-using-oadp"] -= Backing up virtual machines using OADP -:context: oadp-backing-up-vms -:installing-oadp-kubevirt: - -toc::[] - -.Prerequisites - -* Access to the cluster as a user with the `cluster-admin` role. - -.Procedure - -* Install the OADP Operator according to the instructions for your storage provider. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc#about-installing-oadp[installing the {oadp-first} Operator] - -* Install the Data Protection Application with the kubevirt and openshift plugins. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-installing-dpa-1-3_oadp-backing-up-vms[Installing the Data Protection Application] with the xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-plugins_oadp-features-plugins[`kubevirt` and `openshift` plugins] - -* Back up virtual machines by creating a Backup custom resource (CR). -// ../../../backup_and_restore/application_backup_and_restore/installing/backing-up-vms-using-oadp.adoc#oadp-creating-backup-cr_oadp-backing-up-vms[Creating a `Backup` custom resource (CR)]. - - -* Restore the Backup CR by creating a Restore CR. For more details, see xref:../../../backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc#oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. - - -include::modules/oadp-about-backup-snapshot-locations-secrets.adoc[leveloffset=+1] - -include::modules/oadp-creating-default-secret.adoc[leveloffset=+2] - -include::modules/oadp-secrets-for-different-credentials.adoc[leveloffset=+2] - - -[id="configuring-dpa-kubevirt"] -== Configuring the Data Protection Application - -You can configure the Data Protection Application by setting Velero resource allocations or enabling self-signed CA certificates. - - -include::modules/oadp-kubevirt-setting-resource-limits-and-requests.adoc[leveloffset=+2] - -include::modules/oadp-self-signed-certificate.adoc[leveloffset=+2] - -include::modules/oadp-installing-dpa-1-3.adoc[leveloffset=+1] - -[IMPORTANT] -.OADP 1.2 -==== -Red Hat only supports the combination of OADP versions 1.3.0 and later, and {VirtProductName} versions 4.14 and later. -OADP versions before 1.3.0 are not supported for back up and restore of {VirtProductName}. -==== - -include::modules/oadp-backing-up-pvs-csi.adoc[leveloffset=+2] - -[WARNING] -==== -Red Hat support is limited to only the following options: -* CSI backups -* CSI backups with DataMover. For more information, see xref:../../../backing-up-restoring-vms-using-oadp.adoc#backing-up-restoring-fedora-vm-block-pv[Backup and restore a running Virtual Machine, with native DataMover]. -==== - -include::modules/oadp-creating-backup-cr.adoc[leveloffset=+2] - - -[role="_additional-resources"] -[id="additional-resources_virt-backup-restore-overview"] -== Additional resources - -* xref:../../../backup_and_restore/application_backup_and_restore/oadp-features-plugins.adoc#oadp-features-plugins[OADP features and plugins] -* xref:../../../virt/backup_restore/virt-backing-up-vms.adoc#oadp-backing-up-pvs-csi_virt-backing-up-vms[Container Storage Interface (CSI) snapshots] on CSI-enabled cloud storage, such as Ceph RBD or Ceph FS. -* xref:../../../backup_and_restore/application_backup_and_restore/troubleshooting.adoc#troubleshooting[Troubleshooting] -* xref:../../../backing-up-restoring-vms-using-oadp.adoc#backing-up-restoring-fedora-vm-block-pv[Backup and restore a running Virtual Machine, with native DataMover] - -:!installing-oadp-kubevirt: diff --git a/backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc b/backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc deleted file mode 100644 index 13d46a0bbfc1..000000000000 --- a/backup_and_restore/application_backup_and_restore/installing/restoring-vms-using-oadp.adoc +++ /dev/null @@ -1,21 +0,0 @@ -:_mod-docs-content-type: ASSEMBLY -include::_attributes/common-attributes.adoc[] -[id="restoring-vms-using-oadp"] -= Restoring up virtual machines using OADP -:context: restoring-vms-using-oadp -:installing-oadp-kubevirt: - -toc::[] - -Restore application backups by creating a `Restore` custom resource (CR). See xref:oadp-creating-restore-cr_restoring-vms-using-oadp[Creating a Restore CR]. - - -Create restore hooks to run commands in init containers, before the application container starts, or in the application container itself, by editing the `Restore` CR. See xref:oadp-creating-restore-hooks_restoring-vms-using-oadp[Creating restore hooks]. - -include::modules/oadp-creating-restore-cr.adoc[leveloffset=+1] - -include::modules/oadp-creating-restore-hooks.adoc[leveloffset=+2] - - - -:!installing-oadp-kubevirt: diff --git a/virt/backup_restore/virt-backing-up-vms.adoc b/virt/backup_restore/virt-backing-up-vms.adoc deleted file mode 100644 index 682f8ae093e2..000000000000 --- a/virt/backup_restore/virt-backing-up-vms.adoc +++ /dev/null @@ -1,65 +0,0 @@ -:_mod-docs-content-type: ASSEMBLY -include::_attributes/common-attributes.adoc[] -[id="virt-backing-up-vms"] -= Backing up virtual machines -:context: virt-backing-up-vms - -toc::[] - -You back up virtual machines (VMs) by creating an OpenShift API for Data Protection (OADP) xref:../../virt/backup_restore/virt-backing-up-vms.adoc#oadp-creating-backup-cr_virt-backing-up-vms[`Backup` custom resource (CR)]. - -The `Backup` CR performs the following actions: - -// Hiding MOG from ROSA/OSD as not supported -ifndef::openshift-rosa,openshift-dedicated[] -* Backs up {VirtProductName} resources by creating an archive file on S3-compatible object storage, such as xref:../../backup_and_restore/application_backup_and_restore/installing/installing-oadp-mcg.adoc#installing-oadp-mcg[Multicloud Object Gateway], Noobaa, or Minio. -endif::openshift-rosa,openshift-dedicated[] -ifdef::openshift-rosa,openshift-dedicated[] -* Backs up {VirtProductName} resources by creating an archive file on S3-compatible object storage, such as Noobaa or Minio. -endif::openshift-rosa,openshift-dedicated[] - -// Hiding Backup/Restore link until 68901 is merged -ifndef::openshift-rosa,openshift-dedicated[] -* Backs up VM disks by using one of the following options: - -** xref:../../virt/backup_restore/virt-backing-up-vms.adoc#oadp-backing-up-pvs-csi_virt-backing-up-vms[Container Storage Interface (CSI) snapshots] on CSI-enabled cloud storage, such as Ceph RBD or Ceph FS. -** xref:../../backup_and_restore/application_backup_and_restore/backing_up_and_restoring/oadp-backing-up-applications-restic-doc.adoc#backing-up-applications[Backing up applications with File System Backup: Kopia or Restic] on object storage. -endif::openshift-rosa,openshift-dedicated[] -ifdef::openshift-rosa,openshift-dedicated[] -* Backs up VM disks by using one of the following options: - -** xref:../../virt/backup_restore/virt-backing-up-vms.adoc#oadp-backing-up-pvs-csi_virt-backing-up-vms[Container Storage Interface (CSI) snapshots] on CSI-enabled cloud storage, such as Ceph RBD or Ceph FS. -** Backing up applications with File System Backup: Kopia or Restic on object storage. -endif::openshift-rosa,openshift-dedicated[] - -[NOTE] -==== -OADP provides backup hooks to freeze the VM file system before the backup operation and unfreeze it when the backup is complete. - -The `kubevirt-controller` creates the `virt-launcher` pods with annotations that enable Velero to run the `virt-freezer` binary before and after the backup operation. - -The `freeze` and `unfreeze` APIs are subresources of the VM snapshot API. See xref:../../virt/backup_restore/virt-backup-restore-snapshots.adoc#virt-about-vm-snapshots_virt-backup-restore-snapshots[About virtual machine snapshots] for details. -==== - -ifndef::openshift-rosa,openshift-dedicated[] -You can add xref:../../backup_and_restore/application_backup_and_restore/backing_up_and_restoring/oadp-creating-backup-hooks-doc.adoc#backing-up-applications[hooks] to the `Backup` CR to run commands on specific VMs before or after the backup operation. - -You schedule a backup by creating a xref:../../backup_and_restore/application_backup_and_restore/backing_up_and_restoring/oadp-scheduling-backups-doc.adoc#backing-up-applications[`Schedule` CR] instead of a `Backup` CR. -endif::openshift-rosa,openshift-dedicated[] -ifdef::openshift-rosa,openshift-dedicated[] -You can add hooks to the `Backup` CR to run commands on specific VMs before or after the backup operation. - -You schedule a backup by creating a `Schedule` CR instead of a `Backup` CR. -endif::openshift-rosa,openshift-dedicated[] - -include::modules/oadp-creating-backup-cr.adoc[leveloffset=+1] -include::modules/oadp-backing-up-pvs-csi.adoc[leveloffset=+2] -include::modules/oadp-backing-up-applications-restic.adoc[leveloffset=+2] -include::modules/oadp-creating-backup-hooks.adoc[leveloffset=+2] - -ifndef::openshift-rosa,openshift-dedicated[] -[id="additional-resources_virt-backing-up-vms"] -== Additional resources - -* xref:../../storage/container_storage_interface/persistent-storage-csi-snapshots.adoc#persistent-storage-csi-snapshots-overview_persistent-storage-csi-snapshots[Overview of CSI volume snapshots] -endif::openshift-rosa,openshift-dedicated[] diff --git a/virt/backup_restore/virt-restoring-vms.adoc b/virt/backup_restore/virt-restoring-vms.adoc deleted file mode 100644 index fdac38112e7b..000000000000 --- a/virt/backup_restore/virt-restoring-vms.adoc +++ /dev/null @@ -1,14 +0,0 @@ -:_mod-docs-content-type: ASSEMBLY -include::_attributes/common-attributes.adoc[] -[id="virt-restoring-vms"] -= Restoring virtual machines -:context: virt-restoring-vms - -toc::[] - -You restore an OpenShift API for Data Protection (OADP) `Backup` custom resource (CR) by creating a xref:../../virt/backup_restore/virt-restoring-vms.adoc#oadp-creating-restore-cr_virt-restoring-vms[`Restore` CR]. - -You can add xref:../../virt/backup_restore/virt-restoring-vms.adoc#oadp-creating-restore-hooks_virt-restoring-vms[hooks] to the `Restore` CR to run commands in init containers, before the application container starts, or in the application container itself. - -include::modules/oadp-creating-restore-cr.adoc[leveloffset=+1] -include::modules/oadp-creating-restore-hooks.adoc[leveloffset=+2] From da8b7fdd2d8ad1535871bdceeea0b0c86b5edaa0 Mon Sep 17 00:00:00 2001 From: Andy Arnold Date: Mon, 22 Apr 2024 18:39:45 +0100 Subject: [PATCH 21/22] Update modules/oadp-installing-dpa-1-3.adoc --- modules/oadp-installing-dpa-1-3.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/oadp-installing-dpa-1-3.adoc b/modules/oadp-installing-dpa-1-3.adoc index 0e4d2d7036f0..40036ee985f2 100644 --- a/modules/oadp-installing-dpa-1-3.adoc +++ b/modules/oadp-installing-dpa-1-3.adoc @@ -19,7 +19,7 @@ You install the Data Protection Application (DPA) by creating an instance of the * You must configure object storage as a backup location. * If you use snapshots to back up PVs, your cloud provider must support either a native snapshot API or Container Storage Interface (CSI) snapshots. * If the backup and snapshot locations use the same credentials, you must create a `Secret` with the default name, `{credentials}`. -ifdef::installing-oadp-azure,installing-oadp-gcp,installing-oadp-mcg,installing-oadp-ocs,installing-oadp-kubevirt,virt-installing-configuring-oadp[] +ifdef::installing-oadp-azure,installing-oadp-gcp,installing-oadp-mcg,installing-oadp-ocs,virt-installing-configuring-oadp[] * If the backup and snapshot locations use different credentials, you must create two `Secrets`: ** `Secret` with a custom name for the backup location. You add this `Secret` to the `DataProtectionApplication` CR. From 7ef29f78b83981700ba6d3d775b0c10e2a2517cf Mon Sep 17 00:00:00 2001 From: "A.Arnold" Date: Mon, 22 Apr 2024 18:50:11 +0100 Subject: [PATCH 22/22] Revert "Update modules/oadp-installing-dpa-1-3.adoc" This reverts commit da8b7fdd2d8ad1535871bdceeea0b0c86b5edaa0. --- modules/oadp-installing-dpa-1-3.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/oadp-installing-dpa-1-3.adoc b/modules/oadp-installing-dpa-1-3.adoc index 40036ee985f2..0e4d2d7036f0 100644 --- a/modules/oadp-installing-dpa-1-3.adoc +++ b/modules/oadp-installing-dpa-1-3.adoc @@ -19,7 +19,7 @@ You install the Data Protection Application (DPA) by creating an instance of the * You must configure object storage as a backup location. * If you use snapshots to back up PVs, your cloud provider must support either a native snapshot API or Container Storage Interface (CSI) snapshots. * If the backup and snapshot locations use the same credentials, you must create a `Secret` with the default name, `{credentials}`. -ifdef::installing-oadp-azure,installing-oadp-gcp,installing-oadp-mcg,installing-oadp-ocs,virt-installing-configuring-oadp[] +ifdef::installing-oadp-azure,installing-oadp-gcp,installing-oadp-mcg,installing-oadp-ocs,installing-oadp-kubevirt,virt-installing-configuring-oadp[] * If the backup and snapshot locations use different credentials, you must create two `Secrets`: ** `Secret` with a custom name for the backup location. You add this `Secret` to the `DataProtectionApplication` CR.