データ保護とディザスタ リカバリ
Tridentを使用して作成されたTridentおよびボリュームの保護とリカバリのオプションについて説明します。永続性を必要とするアプリケーションごとに、データ保護およびリカバリ戦略を用意する必要があります。
Tridentのレプリケーションとリカバリ
災害が発生した場合に備えて、Tridentを復元するためのバックアップを作成できます。
Tridentレプリケーション
Trident は Kubernetes CRD を使用して独自の状態を保存および管理し、Kubernetes クラスター etcd を使用してメタデータを保存します。
-
"Kubernetes:etcdクラスタのバックアップ"を使用してKubernetesクラスタetcdをバックアップします。
-
バックアップアーティファクトをFlexVolボリュームに配置する
NetAppでは、FlexVolが存在するSVMをSnapMirror関係で別のSVMに保護することを推奨しています。
Tridentリカバリ
Kubernetes CRDとKubernetesクラスタetcdスナップショットを使用すると、Tridentをリカバリできます。
-
デスティネーション SVM から、Kubernetes etcd データファイルと証明書を含むボリュームを、マスターノードとしてセットアップされるホストにマウントします。
-
Kubernetesクラスタに関連する必要な証明書をすべて `/etc/kubernetes/pki`にコピーし、etcdメンバーファイルを `/var/lib/etcd`にコピーします。
-
"Kubernetes:etcdクラスタのリストア"を使用して、etcdバックアップからKubernetesクラスタを復元します。
-
実行 `kubectl get crd`すべてのTridentカスタムリソースが起動したことを確認し、Tridentオブジェクトを取得してすべてのデータが利用可能であることを確認します。
SVMのレプリケーションとリカバリ
Tridentはレプリケーション関係を構成することはできませんが、ストレージ管理者は "ONTAP SnapMirror"を使用してSVMをレプリケートできます。
災害が発生した場合は、SnapMirrorデスティネーションSVMをアクティブ化してデータの提供を開始できます。システムが復元されたら、プライマリに切り替えることができます。
SnapMirror SVM レプリケーション機能を使用する際は、以下の点にご留意ください:
-
SVM-DR が有効になっている各 SVM ごとに個別のバックエンドを作成する必要があります。
-
レプリケーションを必要としないボリュームがSVM-DRをサポートするバックエンドにプロビジョニングされることを回避するために、必要な場合にのみレプリケートされたバックエンドを選択するようにストレージクラスを構成します。
-
アプリケーション管理者は、レプリケーションに関連する追加コストと複雑さを理解し、このプロセスを開始する前にリカバリ計画を慎重に検討する必要があります。
SVMレプリケーション
"ONTAP:SnapMirror SVMレプリケーション"を使用してSVMレプリケーション関係を作成できます。
SnapMirrorでは、複製する内容を制御するオプションを設定できます。Tridentを使用したSVMリカバリを実行する際に選択したオプションを把握しておく必要があります。
-
"-identity-preserve true"SVM設定全体をレプリケートします。
-
"-discard-configs network"LIFおよび関連するネットワーク設定は除外されます。
-
"-identity-preserve false"ボリュームとセキュリティ設定のみをレプリケートします。
Tridentを使用したSVMリカバリ
TridentはSVMの障害を自動的に検出しません。災害が発生した場合、管理者は手動でTridentフェイルオーバーを新しいSVMに開始できます。
-
スケジュール済みおよび実行中のSnapMirror転送をキャンセルし、レプリケーション関係を解除し、ソースSVMを停止してから、SnapMirrorデスティネーションSVMをアクティブ化します。
-
SVMレプリケーションの設定時に `-identity-preserve false`または `-discard-config network`を指定した場合は、Tridentバックエンド定義ファイル内の `managementLIF`および `dataLIF`を更新します。
-
`storagePrefix`がTridentバックエンド定義ファイルに存在することを確認します。このパラメータは変更できません。 `storagePrefix`を省略すると、バックエンドの更新が失敗します。
-
次のコマンドを使用して、新しいデスティネーションSVM名を反映するように必要なすべてのバックエンドを更新します:
./tridentctl update backend <backend-name> -f <backend-json-file> -n <namespace>
-
`-identity-preserve false`または `discard-config network`を指定した場合は、すべてのアプリケーションポッドをバウンスする必要があります。
`-identity-preserve true`を指定した場合、Tridentによってプロビジョニングされたすべてのボリュームは、デスティネーションSVMがアクティブ化されたときにデータの提供を開始します。
ボリュームのレプリケーションとリカバリ
TridentではSnapMirrorレプリケーション関係を設定できませんが、ストレージ管理者は"ONTAP SnapMirrorレプリケーションとリカバリ"を使用してTridentで作成されたボリュームをレプリケートできます。
その後、復元したボリュームを"tridentctl volume import"を使用してTridentにインポートできます。
|
|
ontap-nas-economy、 ontap-san-economy、または `ontap-flexgroup-economy`ドライバではインポートはサポートされていません。
|
Snapshotデータ保護
以下を使用してデータを保護および復元できます:
-
永続ボリューム(PV)のKubernetesボリュームスナップショットを作成するための外部スナップショットコントローラーとCRD。
-
ONTAPスナップショットを使用して、ボリュームの内容全体を復元したり、個々のファイルまたはLUNをリカバリしたりできます。