8.2. クラスターへの OADP のデプロイ
OADP の namespace を作成します。
$ oc create namespace openshift-adp
認証情報のシークレットを作成します。
$ cat <<EOF > ${SCRATCH}/credentials [default] role_arn = ${ROLE_ARN} web_identity_token_file = /var/run/secrets/openshift/serviceaccount/token EOF $ oc -n openshift-adp create secret generic cloud-credentials \ --from-file=${SCRATCH}/credentials
OADP Operator をデプロイします。
注記現在、Operator のバージョン 1.1 では、バックアップが
PartiallyFailed
ステータスになるという問題があります。これはバックアップと復元のプロセスには影響しないと思われますが、それに関連する問題があるため注意が必要です。$ cat << EOF | oc create -f - apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: generateName: openshift-adp- namespace: openshift-adp name: oadp spec: targetNamespaces: - openshift-adp --- apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: redhat-oadp-operator namespace: openshift-adp spec: channel: stable-1.2 installPlanApproval: Automatic name: redhat-oadp-operator source: redhat-operators sourceNamespace: openshift-marketplace EOF
Operator の準備が整うまで待ちます。
$ watch oc -n openshift-adp get pods
出力例
NAME READY STATUS RESTARTS AGE openshift-adp-controller-manager-546684844f-qqjhn 1/1 Running 0 22s
クラウドストレージを作成します。
$ cat << EOF | oc create -f - apiVersion: oadp.openshift.io/v1alpha1 kind: CloudStorage metadata: name: ${CLUSTER_NAME}-oadp namespace: openshift-adp spec: creationSecret: key: credentials name: cloud-credentials enableSharedConfig: true name: ${CLUSTER_NAME}-oadp provider: aws region: $REGION EOF
アプリケーションのストレージのデフォルトのストレージクラスを確認します。
$ oc get pvc -n <namespace> 1
- 1
- アプリケーションの namespace を入力します。
出力例
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE applog Bound pvc-351791ae-b6ab-4e8b-88a4-30f73caf5ef8 1Gi RWO gp3-csi 4d19h mysql Bound pvc-16b8e009-a20a-4379-accc-bc81fedd0621 1Gi RWO gp3-csi 4d19h
$ oc get storageclass
出力例
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE gp2 kubernetes.io/aws-ebs Delete WaitForFirstConsumer true 4d21h gp2-csi ebs.csi.aws.com Delete WaitForFirstConsumer true 4d21h gp3 ebs.csi.aws.com Delete WaitForFirstConsumer true 4d21h gp3-csi (default) ebs.csi.aws.com Delete WaitForFirstConsumer true 4d21h
gp3-csi、gp2-csi、gp3、または gp2 のいずれかを使用すると機能します。バックアップ対象のアプリケーションがすべて CSI を使用した PV を使用している場合は、OADP の DPA 設定に CSI プラグインを含めます。
CSI のみ: Data Protection Application をデプロイします。
$ cat << EOF | oc create -f - apiVersion: oadp.openshift.io/v1alpha1 kind: DataProtectionApplication metadata: name: ${CLUSTER_NAME}-dpa namespace: openshift-adp spec: backupImages: true features: dataMover: enable: false backupLocations: - bucket: cloudStorageRef: name: ${CLUSTER_NAME}-oadp credential: key: credentials name: cloud-credentials prefix: velero default: true config: region: ${REGION} configuration: velero: defaultPlugins: - openshift - aws - csi restic: enable: false EOF
注記CSI ボリュームに対してこのコマンドを実行する場合は、次のステップをスキップできます。
非 CSI ボリューム: Data Protection Application をデプロイします。
$ cat << EOF | oc create -f - apiVersion: oadp.openshift.io/v1alpha1 kind: DataProtectionApplication metadata: name: ${CLUSTER_NAME}-dpa namespace: openshift-adp spec: backupImages: true features: dataMover: enable: false backupLocations: - bucket: cloudStorageRef: name: ${CLUSTER_NAME}-oadp credential: key: credentials name: cloud-credentials prefix: velero default: true config: region: ${REGION} configuration: velero: defaultPlugins: - openshift - aws restic: enable: false snapshotLocations: - velero: config: credentialsFile: /tmp/credentials/openshift-adp/cloud-credentials-credentials enableSharedConfig: 'true' profile: default region: ${REGION} provider: aws EOF
-
OADP 1.1.x ROSA STS 環境では、コンテナーイメージのバックアップと復元 (
spec.backupImages
) の値はサポートされていないため、false
に設定する必要があります。 -
Restic 機能 (
restic.enable=false
) は、ROSA STS 環境では無効になっており、サポートされていません。 -
DataMover 機能 (
dataMover.enable=false
) は、ROSA STS 環境では無効になっており、サポートされていません。