次の例は、zfs リソースタイプを使用して Puppet マニフェスト内で ZFS ファイルシステム構成を定義する方法を示しています。
使用例 5 Puppet を使用した ZFS ファイルシステムの構成最初に、zfs リソースタイプに対して宣言できるすべての属性のリストを次のように表示します。
# puppet describe zfs zfs === Manage zfs. Create destroy and set properties on zfs instances. **Autorequires:** If Puppet is managing the zpool at the root of this zfs instance, the zfs resource will autorequire it. If Puppet is managing any parent zfs instances, the zfs resource will autorequire them. Parameters ---------- - **aclinherit** The aclinherit property. Valid values are `discard`, `noallow`, `restricted`, `passthrough`, `passthrough-x`. - **aclmode** The aclmode property. Valid values are `discard`, `groupmask`, `passthrough`. - **atime** The atime property. Valid values are `on`, `off`. - **canmount** The canmount property. Valid values are `on`, `off`, `noauto`. - **checksum** The checksum property. Valid values are `on`, `off`, `fletcher2`, `fletcher4`, `sha256`. - **compression** The compression property. Valid values are `on`, `off`, `lzjb`, `gzip`, `gzip-[1-9]`, `zle`. - **copies** The copies property. Valid values are `1`, `2`, `3`. - **dedup** The dedup property. Valid values are `on`, `off`. - **devices** The devices property. Valid values are `on`, `off`. - **ensure** The basic property that the resource should be in. Valid values are `present`, `absent`. . . .
次に、マニフェスト内で、次のパラメータを使用して zfs リソースタイプを宣言します。readonly と呼ばれる属性が追加され、on に設定されています。
zfs { 'rpool/test': ensure => 'present', readonly => 'on', }
ノード上で次のコマンドを実行することによって構成を確認します。
# zfs list rpool/test NAME USED AVAIL REFER MOUNTPOINT rpool/test 31K 31.8G 31K /rpool/test # zfs get readonly rpool/test NAME PROPERTY VALUE SOURCE rpool/test readonly on local