0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OADPでPersistent VolumeのデータをONTAP S3へBackupする

0
Last updated at Posted at 2026-07-29

はじめに

本記事では、NetApp ONTAP を Persistent Volume(PV)として利用する OpenShift 環境において、OADP(OpenShift API for Data Protection)を用いたBackup/Restoreについて記載します。

コンテナ環境では、アプリケーションだけでなく永続データの保護も重要な運用課題となりますが、本稿では、OADPとS3環境を使用して、CSI Snapshotを使ったBackupの実施やS3へのBackupデータの転送及びBackupデータからのRestoreに関する内容について記載します。

008.png

何をしたい?できる?

  • OpenShiftのPersistent Volume(PV)用をONTAP上に作成
  • 作成したPVのBackupの実施(Snapshot作成)
  • PVのデータをONTAP S3へ転送
  • 取得したBackupからのRestoreの実施

OpenShift API for Data Protection (OADP) とは

OpenShift API for Data Protection(OADP)は、OpenShiftクラスタ上のアプリケーションやデータをBackup/Restore するためのVeleroをベースとした機能になります。
OADPでは、アプリ本体だけでなく、**PersistentVolumeのデータも保護する事ができ、その際によく使われるのがCSI(Container Storage Interface Snapshot)**になります。

CSI対応ストレージであれば、VolumeのSnapshotを高速に取得でき、大容量データのBackupを効率化できます。

また、Backupデータの保存先としてはS3互換ストレージが利用され、S3 API互換のストレージも利用可能です。OADPはバックアップしたリソース情報やメタデータをS3へ保存し、必要時にそこから復元します。

記事における環境情報

本記事では、以下の環境で実施した内容となります。
OSやモジュールは以下の構成としています。

  • ONTAP 9.18.1
  • NetApp Trident 26.02
  • Windows Server 2025 Hyper-V環境
  • Red Hat Enterprise Linux 9.8
  • OpenShift 4.20.29 (Single Nodeで作成)

環境のイメージとしては以下の通りです。
qiita-square

設定手順

設定の流れとしては以下のような形になります。

1. S3環境の用意
2. OADP用のVolumeSnapshotClassの設定
3. OADPの導入+設定
4. Backupの実施
5. BackupデータからのRestore

1. S3環境の用意

1-1. ONTAP S3環境の作成

ONTAP S3構成手順については、過去の記事を参考にして頂ければと思います。
過去記事ではhttpsで疎通できるような内容になってますが、本記事では手順を簡略化したい為、S3へはHTTPのみ有効化しています。

最新版のAWS CLIも踏み台サーバへ導入しています。
AWS CLIの最新バージョンのインストールまたは更新

# ONTAP S3の状態確認

> object-store-server bucket show -vserver s3_1000 -bucket bk003
  (vserver object-store-server bucket show)

Vserver: s3_1000
  Bucket                               :bk003
  Type                                 :s3
  Versioning                           :disabled
  Uuid                                 :1e8e8ccb-8576-11f1-a075-d039ead56d1d
  Volume                               :fg_oss_1784687768
  Size                                 :100GB
(中略)


> object-store-server bucket policy statement show -vserver s3_1000 -bucket bk003
  (vserver object-store-server bucket policy statement show)
Vserver     Bucket     Index Effect Action       Principal       Resource
----------- ---------- ----- ------ ------------ --------------- --------------
s3_1000
            bk003          1 allow  GetObject,   -               bk003, bk003/*
                                    PutObject,
                                    DeleteObject
                                    , ListBucket

2. OADP用のVolumeSnapshotClassの設定

Tridentの導入とVolumeSnapshotClassの作成を実施します。

2-1. Tridentの導入

ONTAPと連携してSnapshotを取得する為にTridentの導入を実施します。
実施手順は過去の記事を参考にしていただければと思います。

2-2. ONTAP用のVolumeSnapshotClassの設定

Velero がVolumeSnapshot を使ってBackupを行う際に、velero.io/csi-volumesnapshot-class: "true" といった対象VolumeSnapshotClassをデフォルトとして使うことを示すアノテーションを指定します。
(PVCのSnapshot作成時に適切なVolumeSnapshotClassを自動選択できるようにする)

また、障害時にNamespaceが不意に削除された場合でも、ONTAP上のSnapshotが即座に連鎖削除されるのを防ぐため、deletionPolicyにはRetainを設定します。

# マニフェスト
> cat odap-snap-class.yaml
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
  name: odap-snapclass
  labels:
    velero.io/csi-volumesnapshot-class: "true"
driver: csi.trident.netapp.io
deletionPolicy: Retain


# 作成したファイルの適用
> oc apply -f odap-snap-class.yaml
volumesnapshotclass.snapshot.storage.k8s.io/odap-snapclass created


# 作成後の確認
> oc get vsclass
NAME             DRIVER                  DELETIONPOLICY   AGE
odap-snapclass   csi.trident.netapp.io   Retain           23s

3. OADPの導入+設定

3-1. OADPの導入

OpenShiftのGUI画面にアクセスし、左側の[エコシステム]から[ソフトウェアカタログ]をクリック後に表示された画面でOADPと入力し、表示される[OADP]をクリックします。
(Red Hatの方を利用)

qiita-square

表示された画面で[インストール]をクリックします。

qiita-square

表示された画面で値を変更することなく[インストール]をクリックします。
本記事では何度か削除とインストールを繰り返しているので、namespace openshift-adpが存在している環境へのInstallとなってます。

qiita-square

インストールが完了するのを待ちます。

qiita-square

インストール後、openshift-adpというnamespaecにPodが作成されているのが確認できます。

> oc get pods -n openshift-adp
NAME                                                READY   STATUS    RESTARTS   AGE
openshift-adp-controller-manager-54bb95ff58-6kczd   1/1     Running   0          7m4s

3-2. OADPの設定

BackupデータのUpload先となるONTAP S3への認証Secretの作成を実施します。
(キーはONTAP S3の作成時に確認できたものを使用します)

# マニフェスト
> cat credentials-velero
[default]
aws_access_key_id = 1234567890ABCDEF
aws_secret_access_key = ACDEF1234567890GHIJKLMN


# 作成したファイルの適用
> oc create secret generic ontap-s3-credentials -n openshift-adp --from-file cloud=./credentials-velero
secret/ontap-s3-credentials created

DataProtectionApplication (DPA) の構成を実施します。
DPAは、OADPのプラグイン、Data Moverのアップローダー設定、およびS3の接続先バケットを統合的に管理するカスタムリソースとなります。

ONTAP S3互換ストレージをバックアップ先に使い、CSIスナップショット+Kopiaベースのデータ移送を有効化した OADP 構成についての記載を実施します。

# マニフェスト
> $ cat oadp-dpa.yaml
apiVersion: oadp.openshift.io/v1alpha1
kind: DataProtectionApplication
metadata:
  name: oadp-s3-dpa
  namespace: openshift-adp
spec:
  backupImages: false
  backupLocations:
    - velero:
        default: true
        provider: aws
        config:
          region: ontapS3
          profile: default
          s3ForcePathStyle: "true"
          s3Url: "http://10.11.100.124"
        credential:
          name: ontap-s3-credentials
          key: cloud
        objectStorage:
          bucket: bk003
          prefix: velero

  configuration:
    velero:
      featureFlags:
        - EnableCSI
      defaultPlugins:
        - aws
        - openshift
        - csi
      defaultSnapshotMoveData: true
      defaultVolumesToFSBackup: false

    nodeAgent:
      enable: true
      uploaderType: kopia

作成したファイルを適用し、状態の確認を実施します。

# 作成したファイルの適用
> oc apply -f oadp-dpa.yaml
dataprotectionapplication.oadp.openshift.io/oadp-s3-dpa created


# 作成後の確認
> oc get dpa -n openshift-adp
NAME          RECONCILED   AGE
oadp-s3-dpa   True         79s


# Conditionsにおいて "Type: Reconciled, Status: True" であることを確認
> oc get dpa oadp-s3-dpa -n openshift-adp -o jsonpath='{.status}'
{"conditions":[{"lastTransitionTime":"2026-07-27T08:28:04Z","message":"Reconcile complete","reason":"Complete","status":"True","type":"Reconciled"}]}


# PHASEが "Available" と表示されることを確認
> oc get backupstoragelocations.velero.io -n openshift-adp
NAME            PHASE       LAST VALIDATED   AGE    DEFAULT
oadp-s3-dpa-1   Available   46s              3m4s   true


# Podの確認(Veleroやnode-agentが増える)
> oc get pods -n openshift-adp
NAME                                                READY   STATUS    RESTARTS   AGE
node-agent-jz9qx                                    1/1     Running   0          3m48s
openshift-adp-controller-manager-54bb95ff58-6kczd   1/1     Running   0          43m
velero-7f888c755b-hjqbf                             1/1     Running   0          3m48s

3-3. Velero CLIの導入

Veleroを操作するCLIを踏み台環境にインストールします。
(Backupの状況が分かり易いので)

# veleroの取得
> curl -L -o /tmp/velero.tar.gz https://github.com/vmware-tanzu/velero/releases/download/v1.18.2/velero-v1.18.2-linux-amd64.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 54.9M  100 54.9M    0     0  22.3M      0  0:00:02  0:00:02 --:--:-- 26.4M


# 展開
> tar -C /tmp -xvf /tmp/velero.tar.gz
velero-v1.18.2-linux-amd64/LICENSE
velero-v1.18.2-linux-amd64/examples/minio/00-minio-deployment.yaml
velero-v1.18.2-linux-amd64/examples/nginx-app/README.md
velero-v1.18.2-linux-amd64/examples/nginx-app/base.yaml
velero-v1.18.2-linux-amd64/examples/nginx-app/with-pv.yaml
velero-v1.18.2-linux-amd64/velero


> sudo mv /tmp/velero-v1.18.2-linux-amd64/velero /usr/local/bin/velero

> chmod +x /usr/local/bin/velero

> velero version
Client:
        Version: v1.18.2
(中略)

4. Backupの実施

作成済のPodのBackupを行いますが、本記事では、以下のBackupの取得を実施します。
OndemandでPVのSnapshotのみ作成(ONTAP S3へのデータ転送は無し)
OndemandでPVのSnapshotを作成し、PVのデータをONTAP S3へ転送

4-1. Backup対象の確認(Podの状態確認)

# Backup対象PodとPVの確認
> oc get pods -n testspace01
NAME          READY   STATUS    RESTARTS   AGE
ubuntu-test   1/1     Running   0          4d3h

> oc get pv
NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM                 STORAGECLASS      VOLUMEATTRIBUTESCLASS   REASON   AGE
pvc-0c5f9c4c-6e32-4948-b173-b6ce5b8692a0   5Gi        RWX            Delete           Bound    testspace01/pvc-nas   ontap-nas-class   <unset>                          4d4h


# Pod内に接続されたPV上のデータを確認
> oc exec -n testspace01 --stdin --tty ubuntu-test -- /bin/bash

> df -h
Filesystem                                                       Size  Used Avail Use% Mounted on
overlay                                                          200G   61G  140G  31% /
tmpfs                                                             64M     0   64M   0% /dev
shm                                                               64M     0   64M   0% /dev/shm
tmpfs                                                            3.2G  128M  3.0G   4% /proc/acpi
10.11.100.40:/trident_pvc_0c5f9c4c_6e32_4948_b173_b6ce5b8692a0  5.0G 1015M  4.1G  20% /mnt/storage
/dev/sda4                                                        200G   61G  140G  31% /etc/hosts
tmpfs                                                             15G   20K   15G   1% /run/secrets/kubernetes.io/serviceaccount


>  ls -lh /mnt/storage
total 1.1G
-rw-r--r--. 1 root daemon 1008M Jul 23 05:17 AlmaLinux-10.2-x86_64-boot.iso
-rw-r--r--. 1 1000   1000   99M Jul 27 08:48 Wireshark-4.6.6-x64.exe

4-2. Snapshotのみ作成するOndemand Backupの実施

Backup CR定義を実施します。
S3へPV上のデータ転送を実施しない為、snapshotMoveDataについてはfalseを指定します。
Backupのざっくりイメージとしては以下の通りです。

qiita-square
>  cat backup-ondemand-pvs02.yaml
apiVersion: velero.io/v1
kind: Backup
metadata:
  name: ondemand-app-volume-backup2
  namespace: openshift-adp
spec:
  includedNamespaces:
    - testspace01

  # PV Snapshot 
  snapshotVolumes: true
  snapshotMoveData: false

  # Retention 3 Hours
  ttl: 3h0m0s

作成したファイルを適用し、状態を確認します。
velero get backupsで状態を確認すると、InProgress=>Finalizing=>Completedのように状態遷移が確認できるかと思います。

>  oc apply -f backup-ondemand-pvs02.yaml


>  velero get backups -n openshift-adp
NAME                          STATUS      ERRORS   WARNINGS   CREATED                         EXPIRES   STORAGE LOCATION   QUEUE POSITION   SELECTOR
ondemand-app-volume-backup2   Completed   0        0          2026-07-27 18:15:40 +0900 JST   2h        oadp-s3-dpa-1                       <none>

ONTAP側でもSnapshotが作成されている事を確認します。

>  snapshot show -vserver nfs500 -volume trident* -fields create-time
vserver volume                                           snapshot                                      create-time     
------- ------------------------------------------------ --------------------------------------------- ------------------------
nfs500  trident_pvc_0c5f9c4c_6e32_4948_b173_b6ce5b8692a0 snapshot-8dfb8097-0808-4b40-86a5-4504ef0a00d3 Mon Jul 27 18:15:47 2026

ONTAP S3へはメタデータのみ転送されている事を確認します。
(PVのデータが転送されるとkopiaというフォルダ配下にデータが転送される)

# メタデータの転送確認
> aws --endpoint-url http://10.11.100.124/ s3 ls  s3://bk003/velero/backups/ondemand-app-volume-backup2/
2026-07-27 18:15:49        488 ondemand-app-volume-backup2-csi-volumesnapshotclasses.json.gz
2026-07-27 18:15:49        726 ondemand-app-volume-backup2-csi-volumesnapshotcontents.json.gz
2026-07-27 18:15:49        717 ondemand-app-volume-backup2-csi-volumesnapshots.json.gz
2026-07-27 18:15:49        362 ondemand-app-volume-backup2-itemoperations.json.gz
2026-07-27 18:15:49      11603 ondemand-app-volume-backup2-logs.gz
2026-07-27 18:15:49         29 ondemand-app-volume-backup2-podvolumebackups.json.gz
2026-07-27 18:15:49        498 ondemand-app-volume-backup2-resource-list.json.gz
2026-07-27 18:15:49         49 ondemand-app-volume-backup2-results.gz
2026-07-27 18:15:50        395 ondemand-app-volume-backup2-volumeinfo.json.gz
2026-07-27 18:15:49         29 ondemand-app-volume-backup2-volumesnapshots.json.gz
2026-07-27 18:15:50     170062 ondemand-app-volume-backup2.tar.gz
2026-07-27 18:15:50       3843 velero-backup.json


# PVのデータ転送確認
> aws --endpoint-url http://10.11.100.124/ s3 ls --human-readable s3://bk003/velero/kopia/testspace01/

4-3. Snapshot作成及びS3へデータ転送をするOndemand Backupの実施

Backup CR定義を実施します。
S3転送を実施する為、snapshotMoveDataについてはtrueを指定します。
Backupのざっくりイメージとしては以下の通りです。

qiita-square
>  cat backup-ondemand-pvs03.yaml
apiVersion: velero.io/v1
kind: Backup
metadata:
  name: ondemand-app-volume-backup3
  namespace: openshift-adp
spec:
  includedNamespaces:
    - testspace01

  # PV Snapshot + S3 Send
  snapshotVolumes: true
  snapshotMoveData: true

  # Retention 3 Hours
  ttl: 3h0m0

作成したファイルを適用し、状態を確認します。

>  oc apply -f backup-ondemand-pvs03.yaml


> $ velero get backups -n openshift-adp
NAME                          STATUS       ERRORS   WARNINGS   CREATED                         EXPIRES   STORAGE LOCATION   QUEUE POSITION   SELECTOR
ondemand-app-volume-backup2   Completed    0        0          2026-07-27 18:15:40 +0900 JST   2h        oadp-s3-dpa-1                       <none>
ondemand-app-volume-backup3   InProgress   0        0          2026-07-27 18:32:17 +0900 JST   2h        oadp-s3-dpa-1                       <none>

S3への転送中は,ONTAP側では作成されたSnapshotからClone Volumeが作成されており、S3転送用に利用されます。

# 別のVolume名で同じSnapshot名を持つものが確認できる
> snapshot show -vserver nfs500 -volume trident* -fields create-time
vserver volume                                           snapshot                                      create-time
------- ------------------------------------------------ --------------------------------------------- ------------------------
nfs500  trident_pvc_0c5f9c4c_6e32_4948_b173_b6ce5b8692a0 snapshot-8dfb8097-0808-4b40-86a5-4504ef0a00d3 Mon Jul 27 18:15:47 2026
nfs500  trident_pvc_0c5f9c4c_6e32_4948_b173_b6ce5b8692a0 snapshot-43579ae1-5da7-46a1-adc8-d9d02c536795 Mon Jul 27 18:32:20 2026
nfs500  trident_pvc_56eca950_5b30_4b27_b9d1_2d8e83521965 snapshot-43579ae1-5da7-46a1-adc8-d9d02c536795 Mon Jul 27 18:32:20 2026
3 entries were displayed.


# CloneVolumeの状態
> volume clone show
                      Parent  Parent        Parent
Vserver FlexClone     Vserver Volume        Snapshot             State     Type
------- ------------- ------- ------------- -------------------- --------- ----
nfs500  trident_pvc_56eca950_5b30_4b27_b9d1_2d8e83521965 nfs500 trident_pvc_0c5f9c4c_6e32_4948_b173_b6ce5b8692a0 snapshot-43579ae1-5da7-46a1-adc8-d9d02c536795 online RW

Backupの処理が完了するとONTAP上のClone Volumeが削除され、PVにSnapshotが作成された形が残ります。

> velero get backups -n openshift-adp
NAME                          STATUS      ERRORS   WARNINGS   CREATED                         EXPIRES   STORAGE LOCATION   QUEUE POSITION   SELECTOR
ondemand-app-volume-backup2   Completed   0        0          2026-07-27 18:15:40 +0900 JST   2h        oadp-s3-dpa-1                       <none>
ondemand-app-volume-backup3   Completed   0        0          2026-07-27 18:32:17 +0900 JST   2h        oadp-s3-dpa-1                       <none>

ONTAP側でもVolumeが減っている事が確認できます。

> snapsho show -vserver nfs500 -volume trident* -fields create-time
  (snapshot)
vserver volume                                           snapshot                                      create-time
------- ------------------------------------------------ --------------------------------------------- ------------------------
nfs500  trident_pvc_0c5f9c4c_6e32_4948_b173_b6ce5b8692a0 snapshot-8dfb8097-0808-4b40-86a5-4504ef0a00d3 Mon Jul 27 18:15:47 2026
nfs500  trident_pvc_0c5f9c4c_6e32_4948_b173_b6ce5b8692a0 snapshot-43579ae1-5da7-46a1-adc8-d9d02c536795 Mon Jul 27 18:32:20 2026
2 entries were displayed.

ONTAP S3へは実データも転送されている事が確認できます。
(PVのデータが転送されるとkopiaというフォルダ配下にデータが転送される)

# メタデータの転送確認
> aws --endpoint-url http://10.11.100.124/ s3 ls  s3://bk003/velero/backups/ondemand-app-volume-backup2/
2026-07-27 18:15:49        488 ondemand-app-volume-backup2-csi-volumesnapshotclasses.json.gz
2026-07-27 18:15:49        726 ondemand-app-volume-backup2-csi-volumesnapshotcontents.json.gz
2026-07-27 18:15:49        717 ondemand-app-volume-backup2-csi-volumesnapshots.json.gz
2026-07-27 18:15:49        362 ondemand-app-volume-backup2-itemoperations.json.gz
2026-07-27 18:15:49      11603 ondemand-app-volume-backup2-logs.gz
2026-07-27 18:15:49         29 ondemand-app-volume-backup2-podvolumebackups.json.gz
2026-07-27 18:15:49        498 ondemand-app-volume-backup2-resource-list.json.gz
2026-07-27 18:15:49         49 ondemand-app-volume-backup2-results.gz
2026-07-27 18:15:50        395 ondemand-app-volume-backup2-volumeinfo.json.gz
2026-07-27 18:15:49         29 ondemand-app-volume-backup2-volumesnapshots.json.gz
2026-07-27 18:15:50     170062 ondemand-app-volume-backup2.tar.gz
2026-07-27 18:15:50       3843 velero-backup.json


# PVのデータ転送確認
> aws --endpoint-url http://10.11.100.124/ s3 ls --human-readable s3://bk003/velero/kopia/testspace01/
026-07-27 18:32:59  750 Bytes _log_20260727093259_2e05_1785144779_1785144779_1_3eec1c34fc92f6c96584c072f2999604
2026-07-27 18:33:21   13.8 KiB _log_20260727093300_c312_1785144780_1785144801_1_86050707b4b01a5ad25447fa3576cd20
2026-07-27 18:32:58   30 Bytes kopia.blobcfg
2026-07-27 18:32:58    1.0 KiB kopia.repository
2026-07-27 18:33:18   20.1 MiB p031d5ba8238b376b805b8bed60bd584c-s6e962f3162443622143
2026-07-27 18:33:05   26.4 MiB p040316013ddf0ea7e3d1236ad6a9b3f4-s6e962f3162443622143
(中略)
2026-07-27 18:33:16   27.4 MiB pfdc156284fcb39c19f5123967aad20da-s6e962f3162443622143
2026-07-27 18:33:19   12.3 KiB q9d0b18bf0edc0f9eb6992bc9c9580de9-s6e962f3162443622143
2026-07-27 18:32:59    4.2 KiB qab052bd6825a404961da9e5de5aa707c-s4a36a6e7da8e4290143
2026-07-27 18:33:00    4.2 KiB qe893cfffce368314bfa5168978fcefc5-s0efbed6530ed8537143
2026-07-27 18:33:00  143 Bytes xn0_3a981b98d579ae478f62995495d48d7a-s0efbed6530ed8537143-c1
2026-07-27 18:32:59  143 Bytes xn0_818c907262c80bfeca49b2570973626c-s4a36a6e7da8e4290143-c1
2026-07-27 18:33:19   11.4 KiB xn0_92f4ae83026a94edf277e62f1df910d0-s6e962f3162443622143-c1

5. Restoreの実施

作成したBackupからのRestoreを実施します。
基本的にはBackup対象への上書きでは無く、別Podの作成や別のPVを作成する形になります。

本記事においては、差分が発生する事を確認する為、Backup対象のPodのPVにあるファイルを1つ削除しておきます。

# Podに接続
> oc exec -n testspace01 --stdin --tty ubuntu-test -- /bin/bash


# PVのファイル確認
> ls -lh /mnt/storage
total 1.1G
-rw-r--r--. 1 root daemon 1008M Jul 23 05:17 AlmaLinux-10.2-x86_64-boot.iso
-rw-r--r--. 1 1000   1000   99M Jul 27 08:48 Wireshark-4.6.6-x64.exe


# ファイル削除
> rm /mnt/storage/AlmaLinux-10.2-x86_64-boot.iso
rm: remove write-protected regular file '/mnt/storage/AlmaLinux-10.2-x86_64-boot.iso'? y


# 削除後の状態確認
> ls -lh /mnt/storage
total 99M
-rw-r--r--. 1 1000 1000 99M Jul 27 08:48 Wireshark-4.6.6-x64.exe

5-1. 別のNameSpaceへのPodを含めたRestore

リストア用のCRを作成します。
本記事では、一部のファイル削除のみ実施で、Backup対象のPod自体は残しているので
PVだけでなくPodも別NameSoaceへRestore
します。

# リストアに使用するBackup名の確認
>  velero get backups -n openshift-adp
NAME                          STATUS      ERRORS   WARNINGS   CREATED                         EXPIRES   STORAGE LOCATION   QUEUE POSITION   SELECTOR
ondemand-app-volume-backup2   Completed   0        0          2026-07-27 18:15:40 +0900 JST   2h        oadp-s3-dpa-1                       <none>
ondemand-app-volume-backup3   Completed   0        0          2026-07-27 18:32:17 +0900 JST   2h        oadp-s3-dpa-1                       <none>


# Restore用ファイルの確認
> cat restore-pod-and-pv.yaml
apiVersion: velero.io/v1
kind: Restore
metadata:
  name: restore-pod-and-pv
  namespace: openshift-adp
spec:
  backupName: ondemand-app-volume-backup3

  includedNamespaces:
    - testspace01

  # 別 Namespace に復元
  namespaceMapping:
    testspace01: testspace01-restore

  includedResources:
    - pods
    - persistentvolumeclaims
    - persistentvolumes

  restorePVs: true

  existingResourcePolicy: none

作成したファイルを適用し、状態を確認します。

>  oc apply -f restore-pod-and-pv.yaml
restore.velero.io/restore-pod-and-pv created


> oc get pods -n testspace01-restore
NAME          READY   STATUS    RESTARTS   AGE
ubuntu-test   1/1     Running   0          79s

RestoreされたPodに接続して、PVの中もRestoreされている事を確認します。
(Backup時の状態になっている事の確認)

# Podに接続
> oc exec -n testspace01-restore --stdin --tty ubuntu-test -- /bin/bash


# PVのファイル確認
> ls -lh /mnt/storage
total 1.1G
-rw-r--r--. 1 root daemon 1008M Jul 23 05:17 AlmaLinux-10.2-x86_64-boot.iso
-rw-r--r--. 1 1000   1000   99M Jul 27 08:48 Wireshark-4.6.6-x64.exe

参考及びリンク

AWS CLIの最新バージョンのインストールまたは更新

OpenShiftコンテナ環境でTrident + ONTAP利用②【ONTAP Storage+Trident設定】

Container Storage Interface Snapshot Support in Velero

Data protection for Container Apps in OpenShift Container Platform using OpenShift API for Data Protection (OADP)

【今から覚えるONTAPの操作】オブジェクトストレージ 用のSVMを作成する

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?