--- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.2.8 creationTimestamp: null name: zfssnapshots.zfs.openebs.io spec: group: zfs.openebs.io names: kind: ZFSSnapshot listKind: ZFSSnapshotList plural: zfssnapshots shortNames: - zfssnap singular: zfssnapshot preserveUnknownFields: false scope: Namespaced validation: openAPIV3Schema: description: ZFSSnapshot represents a ZFS Snapshot of the zfsvolume properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources' type: string kind: description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' type: string metadata: type: object spec: description: VolumeInfo contains the volume related info for all types of volumes in ZFSVolume properties: capacity: description: Capacity of the volume minLength: 1 type: string compression: description: Controls the compression algorithm used for this dataset. Compression specifies if the it should enabled on the zvol. Setting compression to on indicates that the current default compression algorithm should be used. The current default compression algorithm is either lzjb or, if the lz4_compress feature is enabled, lz4. Changing this property affects only newly-written data. pattern: ^(on|off|lzjb|gzip|gzip-[1-9]|zle|lz4)$ type: string dedup: description: Deduplication is the process for removing redundant data at the block level, reducing the total amount of data stored. If a file system has the dedup property enabled, duplicate data blocks are removed synchronously. The result is that only unique data is stored and common components are shared among files. Deduplication can consume significant processing power (CPU) and memory as well as generate additional disk IO. Before creating a pool with deduplication enabled, ensure that you have planned your hardware requirements appropriately and implemented appropriate recovery practices, such as regular backups. As an alternative to deduplication consider using compression=lz4, as a less resource-intensive alternative. should be enabled on the zvol enum: - "on" - "off" type: string encryption: description: Enabling the encryption feature allows for the creation of encrypted filesystems and volumes. ZFS will encrypt file and zvol data, file attributes, ACLs, permission bits, directory listings, FUID mappings, and userused / groupused data. ZFS will not encrypt metadata related to the pool structure, including dataset and snapshot names, dataset hierarchy, properties, file size, file holes, and deduplication tables (though the deduplicated data itself is encrypted). pattern: ^(on|off|aes-128-[c,g]cm|aes-192-[c,g]cm|aes-256-[c,g]cm)$ type: string fsType: description: FsType specifies filesystem type for the zfs volume/dataset type: string keyformat: description: KeyFormat specifies format of the encryption key type: string keylocation: description: KeyLocation is the location of key for the encryption type: string ownerNodeID: minLength: 1 type: string poolName: description: poolName specifies the name of the pool where this volume should be created minLength: 1 type: string recordsize: description: RecordSize specifies the record size for the zfs dataset minLength: 1 type: string snapname: description: SnapName specifies the name of the snapshot where this volume should be cloned type: string thinProvision: description: Thinprovision specifies if we should thin provisioned the volume or not enum: - "Yes" - "no" type: string volblocksize: description: VolBlockSize specifies the block size for the zvol minLength: 1 type: string volumeType: description: volumeType determines whether the volume is of type "DATASET" or "ZVOL". if fsttype provided in the storageclass is "zfs", then it will create a volume of type "DATASET". If "ext4", "ext3", "ext2" or "xfs" is mentioned as fstype in the storageclass, it will create a volume of type "ZVOL" so that it can be further formatted with the fstype provided in the storageclass. enum: - ZVOL - DATASET type: string required: - capacity - ownerNodeID - poolName - volumeType type: object status: properties: state: type: string type: object required: - spec - status type: object version: v1alpha1 versions: - name: v1alpha1 served: true storage: true status: acceptedNames: kind: "" plural: "" conditions: [] storedVersions: []