Release of ZFSonLinux 0.8.0

It took developers of ZFS on Linux (ZoL) nearly two years and 5 RC releases to deliver a highly significant release — ZFS-0.8.0.

New features:

  • Native encryption for both file systems and volumes. The aes-256-ccm algorithm is used by default. Keys for the dataset are managed using the 'zfs load-key' command and related subcommands.
  • Encryption with zfs send/receive. Allows backups to be stored on untrusted services without the risk of compromise.
  • Removing a device from the pool using the 'zpool remove' command. All data is copied in the background to the remaining top-level devices, thereby reducing the pool's capacity accordingly.
  • The 'zpool checkpoint' subcommand allows you to save the entire pool state and optionally return to that exact state. This can be viewed as an extended snapshot of the pool. It is useful when performing complex administrative actions that would otherwise be irreversible (e.g., enabling a new feature, destroying a dataset, and so on).
  • TRIM for pool devices. Allows for more effective use of solid-state drives and prevents the degradation of their performance and/or lifespan. TRIM can be performed both as a separate command 'zpool trim' and by enabling the discard option — the new pool property 'autotrim'.
  • Pool initialization. The 'zpool initialize' subcommand writes its pattern to all unallocated space. This eliminates the initial performance degradation that may exist in some virtualized storage solutions (e.g., VMware VMDK).
  • Support for project accounting and quotas. This feature adds accounting for project usage and quotas to existing space accounting and quotas. Project quotas add an additional dimension to traditional user/group quotas. The 'zfs project' and 'zfs projectspace' subcommands have been added for managing projects, setting quota limits, and usage reporting.
  • Channel programs. The 'zpool program' subcommand allows scripts in LUA to be used for administrative actions. The scripts run in a 'sandbox' with limits on time and memory.
  • Pyzfs. A new Python library ensuring a stable interface for ZFS administrative programming. This wrapper offers a one-to-one mapping for the libzfs_core API functions, but the signatures and types are more natural for Python dialect.
  • Compatibility with Python3. The utilities 'arcstat', 'arcsummary', and 'dbufstat' have been updated for compatibility with Python3
  • Direct IO. Added support for using direct output (O_DIRECT).

Subcommands scrub/resilver/list/get have also been accelerated, enabling metadata to be output to a separate device (e.g., a high-performance small-capacity SSD), improving ZIL performance through caching and optimization, and adding support for hardware acceleration of SHA256 checksums and AES encryption using Intel QAT (Quick Assist Technology).

Supported Linux kernels: 2.6.32 — 5.1 (SIMD acceleration is not yet supported on kernels 5.0 and above)

Full changelog

The default parameter values for the modules have been chosen to ensure optimal load for most workloads and configurations. For a complete list of options — man 5 zfs-module-parameters

Source: linux.org.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster