vSphere Home Lab 向けの CentOS 7.x NFS Server


まとめ

  • 検証環境であることから、性能を少しでも稼ぐのとズボラな設定を良しとし Firewalld や iptables は Off にする
  • CentOS の NFS Server は、/etc/sysconfig/nfs の RPCNFSDARGS を “-N4 -N4.1 -V3” とすることで NFS バージョン を 3 とする

はじめに

検証用の Nested vSphere 向けのストレージとして、最近 CentOS 7.x の NFS をセットアップしたのでその備忘録になります。

エラー

ESXi のコマンドラインでも、vSphere Client でも、Web Client からでも良いのですが、CentOS 7.x の素の NFS サーバーをマウントしようとすると、以下のようなエラーがでます。

vSphere 6.0 から NFS バージョン 4.1 がサポートされましたが、CentOS 7.x のサーバー側が NFS バージョン 4.0 を返してしまうのか上記エラーとなります。

対応

これを修正するためには CentOS の NFS サーバーの設定を変更します。具体的には /etc/sysconfig/nfs の RPCNFSDARGS パラメーターに “-N4 -N4.1 -V3” を追加します。ここでは NFS バージョン 3 のみ有効としています。

サポート製品 > マニュアル > Red Hat Enterprise Linux > 7 >移行計画ガイド > 3.7. ネットワーク設定

(一部抜粋)

設定を変更した後は

などとして NFS サーバーを再起動させます。この後は esxcli でも Web Client でも、お好みのクライアントで NFS データストアを追加します。

ちなみに vSphere 6.0 の NFS 4.1 は、いくつかサポートされていない機能があります。VAAI-NAS、Virtual Volumes は NFS 4.1 と組み合わせて使うことが出来ません。また、pNFS (パラレル NFS) も利用することが出来ません。
参照: vSphere ストレージ > データストアでの作業 > ネットワーク ファイル システム データストアについて > NFS プロトコルと ESXi

その他のストレージ

Home Lab 向けのストレージとしては様々なモノが、ここでは私が触ったことがあるものをご紹介します。すみません、BSD 系は使うことがなかったので紹介していないです…。

QUADstor

QUADstor

オープンソースの SCSI ターゲット。FC でも iSCSI でも使えますが、仮想マシンとしたときは iSCSI ターゲットとして使うのが良いでしょう。シンプロビジョニング、圧縮、重複排除、さらには VAAI-Block に対応しています。Web UI から直感的に設定できます。以前は CentOS 7.x に対応していませんでしたが、着実にバージョンを重ね 現在は CentOS 7.x に対応しています。そのうちコチラを Home Lab の標準のデータストアにしたいところ。

昔の記事は こちら

LIO (Linux-IO Target)

LIO

現時点の Linux カーネル標準の SCSI ターゲット。targetcli コマンドで構成します。VAAI 対応とありますが、未だに VAAI Supported な状態で接続したことがありません。

Nexenta, Napp-IT

Nexenta
Napp-IT

いずれも OpenSolaris の後継の Illumos 由来のストレージになります。NexentaStor は、OS の NexentaCore からストレージスタック および ストレージ管理ソフトウェアまでを一括してリリースしています。Napp-IT はストレージ管理ソフトウェアのみを提供し、OmniOS、OpenIndiana などにインストールして利用します。いずれも COMSTAR を利用しているので VAAI-Block に対応し、Nexenta に至っては beta ながら VAAI-NAS モジュールも 入手できます (商用ならば Release Build があるのかしら ?)。

NetApp ONTAP Simulator

Simulator (要アカウントと権限)

NetApp のパートナー企業であれば、おそらくダウンロードできます。が、Nested vSphere 上の仮想マシンの I/O 性能は、その作り上かなり遅くなるので Lab 向けではないと思います。ディスクをファイルとして実装しているので、RAID の構成次第では、1 I/O が実際には 10 I/O にも 20 I/O にもふくれあがるのでかなり速度は遅くなります。SRM で SRA との挙動を調べるたり、クローンだけを行うのであればありかと。

昔の記事は こちら

もしかなうのならば…

NetApp WAFL や Solaris の ZFS を初め、最近のストレージ ベンダーのファイルシステムは基本的に COW (Copy On Write) です。COW は VM のクローンと非常に相性が良く、NetApp、Pure Storage、XtremeIO などでは、VAAI を経由するとデータの実体ではなくメタデータのみをコピーし、非常に高速にクローンを行います。Linux の Btrfs も COW であり、さらに cp コマンドに “–reflink” を付けるとファイルコピーでも COW を適用してくれます。Btrfs のガイドでは、仮想マシンにこれを適用するのは推奨していませんが、Btrfs でフォーマットされた NFS データストア向けの VAAI-NAS Plugin などでたら検証がさらに捗るな…と妄想するのです。

コメントを残す