5.19.3. OADP Self-Service namespace admin のユースケース
名前空間管理者として OADP セルフサービスを使用すると、承認済み名前空間のバックアップ保存場所の作成、バックアップおよび復元操作の実行、操作ログの確認を行うことができます。これにより、クラスター管理者権限がなくても、データ保護を独自に管理できるようになります。
5.19.3.1. NonAdminBackupStorageLocation CR の作成 リンクのコピーリンクがクリップボードにコピーされました!
承認済みネームスペース内のバックアップストレージの場所を定義するには、NonAdminBackupStorageLocation (NABSL) カスタムリソース (CR) を作成します。この機能を使用すると、アプリケーションの要件を満たすクラウドストレージにバックアップを保存できます。
前提条件
- namespace admin ユーザーとしてクラスターにログインしている。
- クラスター管理者が OADP Operator をインストールしている。
-
クラスター管理者が
DataProtectionApplication(DPA) CR を設定して OADP Self-Service を有効化している。 - クラスター管理者が namespace を作成し、その namespace からの操作を許可されている。
手順
クラウドプロバイダーのクラウド認証情報ファイルの内容を使用して
SecretCR を作成します。以下のコマンドを実行します。$ oc create secret generic cloud-credentials -n test-nac-ns --from-file <cloud_key_name>=<cloud_credentials_file>ここでは、以下のようになります。
< クラウドキー名 >-
クラウドプロバイダーのキー名を指定します。この例では、
Secret名はcloud-credentialsで、認可された namespace 名はtest-nac-nsです。 <cloud_credentials_file>- クラウド認証情報ファイル名を指定します。
NonAdminBackupStorageLocationCR を作成するには、以下の設定で YAML マニフェストファイルを作成します。NonAdminBackupStorageLocationCR の例apiVersion: oadp.openshift.io/v1alpha1 kind: NonAdminBackupStorageLocation metadata: name: test-nabsl namespace: test-nac-ns spec: backupStorageLocationSpec: config: profile: default region: <region_name> credential: key: cloud name: cloud-credentials objectStorage: bucket: <bucket_name> prefix: velero provider: awsここでは、以下のようになります。
namespace-
操作を許可されている名前空間を指定します。たとえば、
test-nac-nsなどです。 < 地域名 >- クラウドプロバイダーのリージョン名を指定します。
<bucket_name>- バックアップを保存するバケット名を指定します。
NABSL CR 設定を適用するには、次のコマンドを実行します。
$ oc apply -f <nabsl_cr_filename><nabsl_cr_filename>は、NABSL CR 設定を含むファイル名に置き換えます。
検証
NABSL CR が
Newフェーズにあり、管理者承認が保留であることを確認するには、次のコマンドを実行します。$ oc get nabsl test-nabsl -o yaml出力例
apiVersion: oadp.openshift.io/v1alpha1 kind: NonAdminBackupStorageLocation ... status: conditions: - lastTransitionTime: "2025-02-26T09:07:15Z" message: NonAdminBackupStorageLocation spec validation successful reason: BslSpecValidation status: "True" type: Accepted - lastTransitionTime: "2025-02-26T09:07:15Z" message: NonAdminBackupStorageLocationRequest approval pending reason: BslSpecApprovalPending status: "False" type: ClusterAdminApproved phase: New veleroBackupStorageLocation: nacuuid: test-nac-test-bsl-c...d4389a1930 name: test-nac-test-bsl-cd....1930 namespace: openshift-adpここでは、以下のようになります。
message-
NonAdminBackupStorageLocationRequest の承認保留メッセージが含まれています。 phase-
フェーズの状態を指定します。この例では、フェーズは
新規です。
クラスター管理者が
NonAdminBackupStorageLocationRequestCR 要求を承認した後、次のコマンドを実行して、NABSL CR が正常に作成されたことを確認します。$ oc get nabsl test-nabsl -o yaml出力例
apiVersion: oadp.openshift.io/v1alpha1 kind: NonAdminBackupStorageLocation metadata: creationTimestamp: "2025-02-19T09:30:34Z" finalizers: - nonadminbackupstoragelocation.oadp.openshift.io/finalizer generation: 1 name: test-nabsl namespace: test-nac-ns resourceVersion: "159973" uid: 4a..80-3260-4ef9-a3..5a-00...d1922 spec: backupStorageLocationSpec: credential: key: cloud name: cloud-credentials objectStorage: bucket: oadp...51rrdqj prefix: velero provider: aws status: conditions: - lastTransitionTime: "2025-02-19T09:30:34Z" message: NonAdminBackupStorageLocation spec validation successful reason: BslSpecValidation status: "True" type: Accepted - lastTransitionTime: "2025-02-19T09:30:34Z" message: Secret successfully created in the OADP namespace reason: SecretCreated status: "True" type: SecretSynced - lastTransitionTime: "2025-02-19T09:30:34Z" message: BackupStorageLocation successfully created in the OADP namespace reason: BackupStorageLocationCreated status: "True" type: BackupStorageLocationSynced phase: Created veleroBackupStorageLocation: nacuuid: test-nac-..f933a-4ec1-4f6a-8099-ee...b8b26 name: test-nac-test-nabsl-36...11ab8b26 namespace: openshift-adp status: lastSyncedTime: "2025-02-19T11:47:10Z" lastValidationTime: "2025-02-19T11:47:31Z" phase: Availableここでは、以下のようになります。
メッセージ: NonAdminBackupStorageLocation 仕様の検証に成功しました-
NABSL
仕様がクラスター管理者によって検証および承認されていることを指定します。 メッセージ: OADP 名前空間にシークレットが正常に作成されました-
シークレットオブジェクトがopenshift-adp名前空間に正常に作成されたことを示します。 メッセージ: OADP 名前空間に BackupStorageLocation が正常に作成されました-
関連付けられた
VeleroBackupStorageLocation がopenshift-adp名前空間に正常に作成されたことを指定します。 ナキュイド- NABSL CR をオーケストレーションする NAC を指定します。
name-
関連付けられている
Veleroバックアップストレージの場所オブジェクトの名前を指定します。 フェーズ: 利用可能- NABSL が使用可能であることを示します。