|
この文書は自動機械翻訳技術を使用して翻訳されています。 正確な翻訳を提供するように努めておりますが、翻訳された内容の完全性、正確性、信頼性については一切保証いたしません。 相違がある場合は、元の英語版 英語 が優先され、正式なテキストとなります。 |
|
これは未公開の文書です SUSE® Storage 1.12 (Dev). |
SUSE® Storageスナップショットに関連付けられたCSIボリュームスナップショット
Longhornのスナップショットは、特定の瞬間におけるLonghornボリュームの内容を表すオブジェクトです。それはクラスター内に保存されます。
プログラムでLonghornスナップショットを作成するには、一般的なKubernetes CSIボリュームスナップショットメカニズムを使用できます。CSIボリュームスナップショットメカニズムの詳細については、 こちらをクリックしてください。
*前提条件:*CSIスナップショットサポートは、クラスターで有効にする必要があります。 kubernetesディストリビューションがkubernetesスナップショットコントローラーおよびスナップショット関連のカスタムリソース定義を提供しない場合は、それらを手動でデプロイする必要があります。 詳細については、CSIスナップショットサポートを有効にするを参照してください。
Longhornスナップショットに関連付けられたCSIボリュームスナップショットを作成する
Longhornスナップショットに関連付けられたCSIボリュームスナップショットを作成するには、まず`VolumeSnapshotClass`オブジェクトを作成し、パラメータ`type`を`snap`に設定する必要があります。
kind: VolumeSnapshotClass
apiVersion: snapshot.storage.k8s.io/v1
metadata:
name: longhorn-snapshot-vsc
driver: driver.longhorn.io
deletionPolicy: Delete
parameters:
type: snap
`VolumeSnapshotClass`に関する詳細は、 ボリュームスナップショットクラスのKubernetesドキュメントを参照してください。
その後、Kubernetesの`VolumeSnapshot`オブジェクトを作成し、volumeSnapshotClassName`が`VolumeSnapshotClass(longhorn-snapshot-vsc)の名前を指し、`source`がLonghornボリュームのPVCを指すようにします。
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshot
metadata:
name: test-csi-volume-snapshot-longhorn-snapshot
spec:
volumeSnapshotClassName: longhorn-snapshot-vsc
source:
persistentVolumeClaimName: test-vol
結果: Longhornスナップショットが作成されます。`VolumeSnapshot`オブジェクトの作成は、`VolumeSnapshotContent`Kubernetesオブジェクトの作成につながります。 `VolumeSnapshotContent`は、名前`snap://volume-name/snapshot-name`の`VolumeSnapshotContent.snapshotHandle`フィールドにおけるLonghornスナップショットを参照します。
Longhornスナップショットの表示
スナップショットを見るには、上部のナビゲーションバーで*ボリューム*をクリックし、`VolumeSnapshotContent.snapshotHandle`に記載されているボリュームをクリックします。すべてのボリュームスナップショットのリストを見るには、下にスクロールします。
このシナリオにおけるCSIメカニズムの動作
VolumeSnapshotオブジェクトがkubectlで作成されると、`VolumeSnapshot.uuid`フィールドがLonghornスナップショットと関連する`VolumeSnapshotContent`オブジェクトを識別するために使用されます。
これにより、`snapshot-uuid`という名前の新しいLonghornスナップショットが作成され、CSIリクエストが返されます。
その後、`snapcontent-uuid`という名前の`VolumeSnapshotContent`オブジェクトが作成され、`VolumeSnapshotContent.readyToUse`フラグが*true*に設定されます。
Longhornスナップショットに関連付けられたCSIボリュームスナップショットからPVCを復元します。
`PersistentVolumeClaim`オブジェクトを作成し、`dataSource`フィールドがLonghornスナップショットに関連付けられた既存の`VolumeSnapshot`オブジェクトを指すようにします。
csi-provisionerはこれを受け取り、Longhorn CSIドライバーに、関連付けられたLonghornスナップショットのデータを使って新しいボリュームをプロビジョニングするよう指示します。
以下は`PersistentVolumeClaim`の例です。`dataSource`フィールドは既存の`VolumeSnapshot`オブジェクトを指す必要があります。
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: test-restore-pvc
spec:
storageClassName: longhorn
dataSource:
name: test-csi-volume-snapshot-longhorn-snapshot
kind: VolumeSnapshot
apiGroup: snapshot.storage.k8s.io
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
詳細については、V2ボリュームクローンサポートのドキュメントを参照してください。 |