NetApp ONTAP 9.7環境にてNFS4.1を有効にして、vSphere ESXi 6.7のNFSデータストアにしてみた。
NetApp ONTAP9側
NFS 4.1有効化
ONTAP 9.7管理画面でNFSを有効にした場合、NFS v3.0のみが有効化されている。
プロトコルの「NFS」から編集を選ぶと以下の様に設定変更ができる。
とりあえず「バージョン4のサポートを有効にする」と「バージョン4.1のサポートを有効にする」にチェックを入れると下記のようになる。
「pNFS」にもチェックが入っている状態になるが、このまま設定する。
設定後のプロトコル表示は下記の様になる。
通常のNFSと同じくエクスポートルールの設定などはちゃんと行うこと。
「ONTAPでNFS経由のVAAIを許可するエクスポート ポリシーの設定」
NFS vStorage Support有効化
NetAppのStorage VM(SVM)に対してNFS vStorage Support(VAAI連携)を有効化する。
現在値の確認は「vserver nfs show -ins」で「NFS vStorage Support」の値を確認する。
ontap-select-cluster::> vserver nfs show -ins
Vserver: svm0
General NFS Access: true
NFS v3: enabled
NFS v4.0: enabled
UDP Protocol: enabled
TCP Protocol: enabled
Default Windows User: -
NFSv4.0 ACL Support: disabled
NFSv4.0 Read Delegation Support: disabled
NFSv4.0 Write Delegation Support: disabled
NFSv4 ID Mapping Domain: defaultv4iddomain.com
NFSv4 Grace Timeout Value (in secs): 45
Preserves and Modifies NFSv4 ACL (and NTFS File Permissions in Unified Security Style): enabled
NFSv4.1 Minor Version Support: enabled
Rquota Enable: disabled
NFSv4.1 Parallel NFS Support: enabled
NFSv4.1 ACL Support: disabled
NFS vStorage Support: disabled
NFSv4 Support for Numeric Owner IDs: enabled
Default Windows Group: -
NFSv4.1 Read Delegation Support: disabled
NFSv4.1 Write Delegation Support: disabled
NFS Mount Root Only: enabled
NFS Root Only: disabled
Permitted Kerberos Encryption Types: des, des3, aes-128, aes-256
Showmount Enabled: enabled
Set the Protocol Used for Name Services Lookups for Exports: udp
NFSv3 MS-DOS Client Support: disabled
Idle Connection Timeout Value (in seconds): 360
Are Idle NFS Connections Supported: disabled
Hide Snapshot Directory under NFSv3 Mount Point: disabled
Provide Root Path as Showmount State: disabled
ontap-select-cluster::>
vStorage Supportの項目だけ確認する場合は「vserver nfs show -fields vstorage」でも良い。
ontap-select-cluster::> vserver nfs show -fields vstorage
vserver vstorage
------- --------
svm0 disabled
ontap-select-cluster::>
有効にする場合は「vserver nfs modify -vserver SVM名 -vstorage enabled」を実行する。
ontap-select-cluster::> vserver nfs modify -vserver svm0 -vstorage enabled
ontap-select-cluster::> vserver nfs show
変更後は以下のような出力結果となる。
ontap-select-cluster::> vserver nfs show -ins
Vserver: svm0
General NFS Access: true
NFS v3: enabled
NFS v4.0: enabled
UDP Protocol: enabled
TCP Protocol: enabled
Default Windows User: -
NFSv4.0 ACL Support: disabled
NFSv4.0 Read Delegation Support: disabled
NFSv4.0 Write Delegation Support: disabled
NFSv4 ID Mapping Domain: defaultv4iddomain.com
NFSv4 Grace Timeout Value (in secs): 45
Preserves and Modifies NFSv4 ACL (and NTFS File Permissions in Unified Security Style): enabled
NFSv4.1 Minor Version Support: enabled
Rquota Enable: disabled
NFSv4.1 Parallel NFS Support: enabled
NFSv4.1 ACL Support: disabled
NFS vStorage Support: enabled
NFSv4 Support for Numeric Owner IDs: enabled
Default Windows Group: -
NFSv4.1 Read Delegation Support: disabled
NFSv4.1 Write Delegation Support: disabled
NFS Mount Root Only: enabled
NFS Root Only: disabled
Permitted Kerberos Encryption Types: des, des3, aes-128, aes-256
Showmount Enabled: enabled
Set the Protocol Used for Name Services Lookups for Exports: udp
NFSv3 MS-DOS Client Support: disabled
Idle Connection Timeout Value (in seconds): 360
Are Idle NFS Connections Supported: disabled
Hide Snapshot Directory under NFSv3 Mount Point: disabled
Provide Root Path as Showmount State: disabled
ontap-select-cluster::> vserver nfs show -fields vstorage
vserver vstorage
------- --------
svm0 enabled
ontap-select-cluster::>
vSphere側
データストアの追加から「NFS」の「NFS 4.1」を追加する
VAAIプラグインを追加
ESXiに「NetApp NFS Plug-in for VMware VAAI」をインストールすることで、VAAI機能が有効になる。
すでにNFSマウントされているデータストアがVAAIでアクセスされているか確認するにはESXi shellでコマンドを実行する。
[root@esxiserver:~] esxcli storage nfs41 list
Volume Name Host(s) Share Accessible Mounted Read-Only Security isPE Hardware Acceleration
----------- ------------- -------- ---------- ------- --------- -------- ----- ---------------------
nfsv4test 172.17.44.108 /testvol true true false AUTH_SYS false Not Supported
[root@esxiserver:~]
「Hardware Acceleration」が「Not Supported」となっている場合、VAAIが有効な状態ではない。
また「vmkfstools -Ph /vmfs/volumes/<データストア名>」を実行した結果内の「NAS VAAI Supported」でも確認できる。
[root@esxiserver:~] vmkfstools -Ph /vmfs/volumes/nfsv4test
NFS41-4.01 (Raw Major Version: 0) file system spanning 1 partitions.
File system label (if any): nfsv4test
Mode: public
Capacity 50 GB, 48.0 GB available, file block size 4 KB, max supported file size 16.0 TB
Disk Block Size: 512/512/0
UUID: a135f63e-34806068-0000-000000000000
Partitions spanned (on "notDCS"):
NFS41:a135f63e-34806068-0000-000000000000
NAS VAAI Supported: NO
Is Native Snapshot Capable: NO
[root@esxiserver:~]
ESXi shellからVAAIプラグインをインストールする。
[root@esxiserver:~] esxcli software vib install -d /vmfs/volumes/software/netapp
/nfs_plugin_VAAI/1.1.2/NetAppNasPlugin.v23.zip
Installation Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed: NetApp_bootbank_NetAppNasPlugin_1.1.2-3
VIBs Removed:
VIBs Skipped:
[root@esxiserver:~]
「Reboot Required: true」と再起動が要求されたので、ESXiを再起動します。
再起動後、「esxcli storage nfs41 list」で確認すると「Hardware Acceleration Supported」。
[root@esxiserver:~] esxcli storage nfs41 list
Volume Name Host(s) Share Accessible Mounted Read-Only Security isPE Hardware Acceleration
----------- ------------- -------- ---------- ------- --------- -------- ----- ---------------------
nfsv4test 172.17.44.108 /testvol true true false AUTH_SYS false Supported
[root@esxiserver:~]
「vmkfstools -Ph /vmfs/volumes/<データストア名>」は「NAS VAAI Supported: YES」に変わります。
[root@esxiserver:~] vmkfstools -Ph /vmfs/volumes/nfsv4test
NFS41-4.01 (Raw Major Version: 0) file system spanning 1 partitions.
File system label (if any): nfsv4test
Mode: public
Capacity 50 GB, 48.0 GB available, file block size 4 KB, max supported file size 16.0 TB
Disk Block Size: 512/512/0
UUID: a135f63e-34806068-0000-000000000000
Partitions spanned (on "notDCS"):
NFS41:a135f63e-34806068-0000-000000000000
NAS VAAI Supported: YES
Is Native Snapshot Capable: YES
[root@esxiserver:~]
2020/08/04追記
export policy関連設定
svmのrootボリュームのexport policyをread onlyの0.0.0.0/0にして、vSphere用NFS共有のexport policyをread/write 0.0.0.0/0にしておいたところ、ESXi 7.0からのNFS4.1データストア登録に失敗。
svmのrootボリュームへの書き込み権限も必要だった。