第13章 VolumeSnapshotContent [snapshot.storage.k8s.io/v1]
- 説明
- VolumeSnapshotContent は、基盤となるストレージシステム内の実際の "ディスク上" のスナップショットオブジェクトを表します
- タイプ
-
object
- 必須
-
spec
-
13.1. 仕様
プロパティー | タイプ | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できることがあります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
| 標準オブジェクトのメタデータ。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。 | |
|
| spec は、基盤となるストレージシステムによって作成された VolumeSnapshotContent のプロパティーを定義します。必須。 |
|
| status は、スナップショットの現在の情報を表します。 |
13.1.1. .spec
- 説明
- spec は、基盤となるストレージシステムによって作成された VolumeSnapshotContent のプロパティーを定義します。必須。
- タイプ
-
object
- 必須
-
deletionPolicy
-
driver
-
source
-
volumeSnapshotRef
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| deletionPolicy は、バインドされた VolumeSnapshot が削除されたときに、基盤となるストレージシステム上にあるこの VolumeSnapshotContent とその物理スナップショットを削除するかどうかを決定します。サポートされる値は、"Retain" および "Delete" です。"Retain" は、VolumeSnapshotContent とそのストレージシステム上の物理的なスナップショットが保持されることを意味すします。"Delete" は、基礎となるストレージシステム上の VolumeSnapshotContent およびその物理スナップショットが削除されることを意味します。動的にプロビジョニングされたスナップショットの場合、このフィールドは、対応する VolumeSnapshotClass で定義された "DeletionPolicy" フィールドを使用して CSI スナップショットサイドカーによって自動的に入力されます。既存のスナップショットの場合、ユーザーは VolumeSnapshotContent オブジェクトを作成するときにこのフィールドを指定する必要があります。必須。 |
|
| driver は、基盤となるストレージシステムに物理スナップショットを作成するのに使用される CSI ドライバーの名前です。これは、そのドライバーの CSI GetPluginName() 呼び出しによって返される名前と同じである必要があります。必須。 |
|
| source は、スナップショットが動的にプロビジョニングされる (または存在する必要がある) か、すでに存在するかを指定し、Kubernetes オブジェクト表現のみを必要とします。このフィールドは、作成後は不変です。必須。 |
|
| SourceVolumeMode は、スナップショットが作成されるボリュームのモードです。 “Filesystem” または “Block” のいずれかを指定できます。指定しない場合は、ソースボリュームのモードが不明であることを示します。このフィールドは不変です。このフィールドはアルファフィールドです。 |
|
| このスナップショットが作成された (または作成される) VolumeSnapshotClass の名前。プロビジョニング後、VolumeSnapshotClass は削除されるか、異なる値のセットで再作成される可能性があるため、スナップショットの作成後に参照しないでください。 |
|
| volumeSnapshotRef は、この VolumeSnapshotContent オブジェクトがバインドされている VolumeSnapshot オブジェクトを指定します。VolumeSnapshot.Spec.VolumeSnapshotContentName フィールドは、双方向バインディングを有効にするために、この VolumeSnapshotContent の名前を参照する必要があります。既存の VolumeSnapshotContent オブジェクトの場合にバインディングを実行するには、VolumeSnapshot オブジェクトの名前および namespace を指定する必要があります。このフィールドは、作成後は不変です。必須。 |
13.1.2. .spec.source
- 説明
- source は、スナップショットが動的にプロビジョニングされる (または存在する必要がある) か、すでに存在するかを指定し、Kubernetes オブジェクト表現のみを必要とします。このフィールドは、作成後は不変です。必須。
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| snapshotHandle は、Kubernetes オブジェクト表現が作成された (または作成されるべき) 基盤となるストレージシステム上の既存のスナップショットの CSI "snapshot_id" を指定します。このフィールドは不変です。 |
|
| volumeHandle は、スナップショットを動的に取得するボリュームの CSI "volume_id" を指定します。このフィールドは不変です。 |
13.1.3. .spec.volumeSnapshotRef
- 説明
- volumeSnapshotRef は、この VolumeSnapshotContent オブジェクトがバインドされている VolumeSnapshot オブジェクトを指定します。VolumeSnapshot.Spec.VolumeSnapshotContentName フィールドは、双方向バインディングを有効にするために、この VolumeSnapshotContent の名前を参照する必要があります。既存の VolumeSnapshotContent オブジェクトの場合にバインディングを実行するには、VolumeSnapshot オブジェクトの名前および namespace を指定する必要があります。このフィールドは、作成後は不変です。必須。
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| 参照先の API バージョン。 |
|
| オブジェクト全体ではなく一部を参照する場合に、この文字列には、desiredState.manifest.containers[2] など、有効な JSON/Go フィールドアクセスステートメントを含める必要があります。たとえば、オブジェクトの参照先が Pod 内のコンテナーの場合には、"spec.containers{name}" などの値に設定されます ("name" はイベントをトリガーしたコンテナー名に置き換えます)。またはコンテナー名が指定されていない場合には、"spec.containers[2]" の値に設定されます (この Pod 内でインデックスが 2 のコンテナー)。この構文が選択された唯一の理由は、オブジェクトの一部の参照を明確に定義するためです。TODO: この設計は最終版ではないので今後このフィールドは変更される可能性があります。 |
|
| 参照先の種類。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
|
| 参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
| 参照先の namespace。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
|
| この参照が作成される特定の resourceVersion (ある場合)。詳細: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency |
|
| 参照先の UID。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids |
13.1.4. .status
- 説明
- status は、スナップショットの現在の情報を表します。
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
|
creationTime は、基盤となるストレージシステムによってポイントインタイムスナップショットが取得されたときのタイムスタンプです。動的スナップショットが作成された場合、このフィールドには、CSI "CreateSnapshot" gRPC 呼び出しから返された "creation_time" 値が CSI スナップショットサイドカーによって入力されます。既存のスナップショットで、ドライバーがサポートしている場合、このフィールドには CSI "ListSnapshots" gRPC 呼び出しから返される "creation_time" 値が入力されます。指定しない場合は、作成時刻が不明であることを示します。このフィールドの形式は、int64 としてエンコードされた Unix ナノ秒の時間です。Unix では、コマンド |
|
| error は、スナップショットの作成中に最後に観察されたエラーです (存在する場合)。再試行後に成功すると、このエラーフィールドは削除されます。 |
|
| readyToUse は、スナップショットを使用してボリュームを復元する準備ができているかどうかを示します。動的スナップショット作成の場合、このフィールドには、CSI "CreateSnapshot" gRPC 呼び出しから返された "ready_to_use" 値が CSI snapshotter サイドカーによって入力されます。既存のスナップショットの場合、ドライバーがサポートしている場合、このフィールドには CSI "ListSnapshots" gRPC 呼び出しから返される "ready_to_use" 値が入力されます。サポートされていない場合、このフィールドは "True" に設定されます。指定しない場合は、スナップショットの準備状態が不明であることを意味します。 |
|
| restoreSize は、スナップショットの完全なサイズをバイト単位で表します。動的スナップショット作成の場合、このフィールドには、CSI "CreateSnapshot" gRPC 呼び出しから返された "size_bytes" 値が CSI snapshotter サイドカーによって入力されます。既存のスナップショットで、ドライバーがサポートしている場合、このフィールドには CSI "ListSnapshots" gRPC 呼び出しから返される "size_bytes" 値が入力されます。このスナップショットからボリュームを復元する場合、ボリュームのサイズは、指定されている場合は restoreSize より小さくしてはなりません。小さくしないと、復元が失敗します。指定しない場合は、サイズが不明であることを示します。 |
|
| snapshotHandle は、基盤となるストレージシステム上のスナップショットの CSI "snapshot_id" です。指定しない場合は、動的スナップショットの作成が失敗したか、まだ進行中であることを示します。 |
13.1.5. .status.error
- 説明
- error は、スナップショットの作成中に最後に観察されたエラーです (存在する場合)。再試行後に成功すると、このエラーフィールドは削除されます。
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| message は、指定されている場合、スナップショットの作成中に発生したエラーの詳細を示す文字列です。注: メッセージはログに記録される可能性があり、機密情報を含めることはできません。 |
|
| time は、エラーが発生したときのタイムスタンプです。 |