zfs_facts – Gather facts about ZFS datasets

Synopsis

  • Gather facts from ZFS dataset properties.

Parameters

Parameter Choices/Defaults Comments
depth
-
Specifies recursion depth.
name
- / required
ZFS dataset name.

aliases: ds, dataset
parsable
boolean
    Choices:
  • no ←
  • yes
Specifies if property values should be displayed in machine friendly format.
properties
-
Default:
"all"
Specifies which dataset properties should be queried in comma-separated format. For more information about dataset properties, check zfs(1M) man page.

aliases: props
recurse
boolean
    Choices:
  • no ←
  • yes
Specifies if properties for any children should be recursively displayed.
type
-
    Choices:
  • all ←
  • filesystem
  • volume
  • snapshot
  • bookmark
Specifies which datasets types to display. Multiple values have to be provided in comma-separated form.

Examples

- name: Gather facts about ZFS dataset rpool/export/home
  zfs_facts:
    dataset: rpool/export/home

- name: Report space usage on ZFS filesystems under data/home
  zfs_facts:
    name: data/home
    recurse: yes
    type: filesystem

- debug:
    msg: 'ZFS dataset {{ item.name }} consumes {{ item.used }} of disk space.'
  with_items: '{{ ansible_zfs_datasets }}'

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
name
string
always
ZFS dataset name

Sample:
rpool/var/spool
parsable
boolean
if 'parsable' is set to True
if parsable output should be provided in machine friendly format.

Sample:
True
recurse
boolean
if 'recurse' is set to True
if we should recurse over ZFS dataset

Sample:
True
zfs_datasets
string
always
ZFS dataset facts

Sample:
{'aclinherit': 'restricted', 'aclmode': 'discard', 'atime': 'on', 'available': '43.8G', 'canmount': 'on', 'casesensitivity': 'sensitive', 'checksum': 'on', 'compression': 'off', 'compressratio': '1.00x', 'copies': '1', 'creation': 'Thu Jun 16 11:37 2016', 'dedup': 'off', 'devices': 'on', 'exec': 'on', 'filesystem_count': 'none', 'filesystem_limit': 'none', 'logbias': 'latency', 'logicalreferenced': '18.5K', 'logicalused': '3.45G', 'mlslabel': 'none', 'mounted': 'yes', 'mountpoint': '/rpool', 'name': 'rpool', 'nbmand': 'off', 'normalization': 'none', 'org.openindiana.caiman:install': 'ready', 'primarycache': 'all', 'quota': 'none', 'readonly': 'off', 'recordsize': '128K', 'redundant_metadata': 'all', 'refcompressratio': '1.00x', 'referenced': '29.5K', 'refquota': 'none', 'refreservation': 'none', 'reservation': 'none', 'secondarycache': 'all', 'setuid': 'on', 'sharenfs': 'off', 'sharesmb': 'off', 'snapdir': 'hidden', 'snapshot_count': 'none', 'snapshot_limit': 'none', 'sync': 'standard', 'type': 'filesystem', 'used': '4.41G', 'usedbychildren': '4.41G', 'usedbydataset': '29.5K', 'usedbyrefreservation': '0', 'usedbysnapshots': '0', 'utf8only': 'off', 'version': '5', 'vscan': 'off', 'written': '29.5K', 'xattr': 'on', 'zoned': 'off'}


Status

Authors

  • Adam Števko (@xen0l)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.