Kubernetes Container Storage Interface (CSI) plug-in for Oracle ZFS Storage Appliance.
Go to file
2021-08-24 16:30:55 -06:00
cmd/zfssa-csi-driver Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
deploy Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
examples Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
pkg Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
release-tools Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
CONTRIBUTING.md Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
go.mod Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
INSTALLATION.md Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
LICENSE.txt Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
Makefile Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
README.md Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
SECURITY.md Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
TEST.md Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
THIRD_PARTY_LICENSES.txt Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00
VERSION Initial publication of ZFSSA CSI driver 2021-08-24 16:30:55 -06:00

About zfssa-cs-driver

This plugin supports Oracle ZFS Storage Appliance as a backend for block storage (iSCSI volumes) and file storage (NFS).

CSI Plugin Version Supported CSI Versions Supported Kubernetes Versions Persistence Supported Access Modes Dynamic Provisioning Raw Block Support
v0.5.x v1.0+ v1.17.X+ Persistent Read/Write Once (for Block) Yes Yes

Requirements

  • Kubernetes v1.17 or above.
  • A Container runtime implementing the Kubernetes Container Runtime Interface. This plugin was tested with CRI-O v1.17.
  • An Oracle ZFS Storage Appliance running Appliance Kit Version 8.8 or above. This plugin may work with previous versions but it is not tested with them. It is possible to use this driver with the Oracle ZFS Storage Simulator
  • Access to both a management path and a data path for the target Oracle ZFS Storage Appiance (or simulator). The management and data path can be the same address.
  • A suitable container image build environment. The Makefile currently uses docker but with minor updates to release-tools/build.make, podman should also be usable.

Unsupported Functionality

ZFS Storage Appliance CSI driver does not support the following functionality:

  • Volume Cloning

Building

Use and enhance the Makefile in the root directory and release-tools/build.make.

make

Installation

See INSTALLATION for details.

Testing

For information about testing the driver, see TEST.

Examples

Example usage of this driver can be found in the ./examples directory.

The examples below use the image container-registry.oracle.com/os/oraclelinux:7-slim when they create a container where a persistent volume(s) is attached and mounted.

This set uses dynamic volume creation.

  • NFS - illustrates NFS volume usage from a simple container.
  • Block - illustrates block volume usage from a simple container.
  • NFS multi deployment - illustrates the use of Helm to build several volumes and optionally build a pod to consume them.

This next set uses existing shares on the target appliance:

  • Existing NFS - illustrates NFS volume usage from a simple container of an existing NFS filesystem share.
  • Existing Block - illustrates block volume usage from a simple container of an existing iSCSI LUN.

This set exercises dynamic volume creation followed by expanding the volume capacity.

This set exercises dynamic volume creation (restoring from a volume snapshot) followed by creating a snapshot of the volume.

Help

Refer to the documentation links and examples for more information on this driver.

Contributing

See CONTRIBUTING for details.