FreeNAS 8で手軽にNAS構築


NAS(Network Attached Storage)とは、ファイルサーバに特化したデバイスで、簡単に導入することができます。

ですが、市販のNAS製品は高価で多機能なものになると手が出せません…。

FreeNASを使うと、使われずに眠っているパソコンやサーバーを簡単にNASにすることができます。

主な機能は、

  • CIFS (Windows共有に似たもの)
  • iSCSI (ネットワークのストレージを内蔵ドライブのように扱える規格)
  • FTP (File Transfer Protocol)
  • AFP NFS etc…

など多機能で、WebGUIから設定して使うことができます。

ここでは、FreeNASを導入して、WindowsからCIFSとiSCSIを使う方法を紹介します。

※Windows側の設定はVistaで行なっています。Vista以外を使用している方は一部操作が異なる点があります。

目次:

  1. FreeNAS 8のインストール
  2. 基本設定
  3. ストレージの設定
  4. CIFSとiSCSIの比較
  5. CIFSの設定
  6. iSCSIの設定

※英語がスラスラ読める方は 公式のドキュメント の方が読みやすいかもしれません。

 

1.FreeNAS 8のインストール

http://www.freenas.org/

↑公式サイトからDownloadページ(SourceForge)に飛んで、適切なイメージファイルをダウンロードします。

 

FreeNAS 8は以前のバージョンの0.7.*から以下の点が変更されています。

  • インストール専用のデバイスが必要
  • 全ての設定をWebGUIから行える
  • その他、ファイルシステム・UI周りなど

ここで重要なのは、1番目です。

インストール先に指定したデバイスはパーティションを含む全てのデータが消去される仕様に変更されたため、ストレージとして使用出来なくなりました。

つまり、最低2つのデバイスが必要になります。

FreeNASのインストールには2GB必要です。(最小インストールデバイスサイズ)

100GBのハードディスクにインストールというのはもったいないので、USBメモリからブート可能な場合は、USBメモリにインストールすることをお勧めします。

 

インストールの方法には、イメージを直接書きこむ方法とインストールイメージを使う方法がありますが、ここでは後者の方法でインストールします。

インストールディスクから起動

起動オプションを選択する画面が表示されますが、defaultで続行します(3秒待ちます)

Console Setup

1のインストールを選択します。

Choose destination media

FreeNASをインストールするデバイスを選択します

Start FreeNAS installation

選択したデバイスで間違いない場合はYesを選択します

デバイスへイメージの書き込みが開始されます。

 

インストール完了

インストールが完了しました

Reboot System

システムを再起動してインストールディスクを取り出します

FreeNAS 起動

FreeNASが起動します

インストール作業はここまでです。

以前のバージョンと比べて非常に簡単になりました。

 

2.基本設定

次に、WebGUIからFreeNASの設定を行なっていきます。

画面に表示されているURL(ここでは、http://192.168.0.49/)をブラウザで開きます。

WebGUI

WebGUI

ネットワークの設定

インストール直後はDHCPで割り振られたIPアドレスを使っていますが、NASで使うIPアドレスが動的に変更されてしまうと、その度にクライアント側の設定を変更する必要があり不便なので、静的なIPアドレスを割り当てます。

上部のメニューから Network -> Interface -> Add Interface を選択します。

Network Settings

インターフェースを追加します

Interface Nameは任意の名前(例えばdefault)、IPv4 AddressとIPv4 Netmaskの項目を設定します。

IPv6を使う場合はその設定も。

OKをクリックすると設定が適用され、一度切断されます。

設定したアドレスに再接続してください。

 

アカウントの設定

WebGUIを開いてから、右上の赤い点滅が気になったと思いますが、これは適切な設定がされていない時や異常時に警告するアラート機能です。

WebGUIにログインするためのアカウントが設定されていないため、誰でもWebGUIにアクセスできてしまうと警告しています。

左側のツリーから Account -> My Account -> Change Password を選択します。

Change Password

新しいパスワードを入力します

Old Passwordは空欄で、Change root password as wellは選択された状態にしておきます。

Change Admin Passwordをクリックすると、Alertが緑色に変わり、次回以降WebGUIにアクセスする時にはログインが必要になります。

ユーザー名はデフォルトでadminです。

ストレージにアクセスする時は、ユーザー名をroot、パスワードはここで設定したものを指定します。

 

一般設定

Settingsタブを開きます。

General Settings

一般設定をします

  • Protocol: HTTPS
  • WebGUI Address: ネットワークの設定で指定したアドレスをドロップダウンリストから選択します
  • Language: Japanese
  • Timezone: Asia/Tokyo

日本語に対応している所がいいですね。(一部、翻訳されていない箇所があります)

Saveをクリックして設定を適用します。

ページが再読込されて(SSL証明書のエラーが表示されるので許可)日本語化されたインターフェースが表示されます。

 

3.ストレージの設定

ボリュームを作成して、ストレージをFreeNASで管理できるようにします。

上部のメニューから ストレージ -> ボリュームの作成 を選択します。

ボリュームの作成

ボリュームを作成します

ボリューム名には任意の名前を指定し、

メンバディスクから追加するストレージを選択(2つでRAID 0, 1、3つでRAID-Z、4つでRAID-Z2が可能)、

ファイルシステムはZFSを推奨します。

※RAID 10は確認していません(多分、出来ます)

ストレージ - アクティブなボリューム

ボリュームが追加されました

これで、あとはCIFSやiSCSIの設定をすることで使えるようになります。

 

ZFSの機能は、主に4つあります。

ZFSスナップショット

定期的なスナップショット

ある時点でのファイルとディレクトリの構造を保存しておいて、後からその時点に戻す(ロールバック)することができる機能です。

定期的なスナップショットタスクを設定することで、誤ってファイルを削除してしまったときに前の状態へ戻すことができます。

 

ZFSデータセット

ZFSデータセットの作成

作成したボリューム(poolと呼ばれる)上に複数のデータセットを作成して、個々に管理することができます。

例えば、データセット単位を圧縮することでボリューム上の一部だけを圧縮して使うことができます。

 

ZFSボリューム

pool上にZFSボリューム(ブロックデバイスを表すデータセット)を作成して仮想デバイス(HDDやCD)として扱うことができます。

主に、iSCSIを使うときに使用します。

 

ZFSリプリケーション

リプリケーションの追加

リモートのサーバと同期させるための機能です。

定期的にバックアップを取ることができます。

(使ったことが無いので詳しいことは書けません…)

 

4.CIFSとiSCSIの比較

次に、CIFSとiSCSIの設定を行いますが、CIFSとiSCSIのどちらが良いのか…

  • パフォーマンスはiSCSIの方が上です
  • CIFSはスマートフォンなどiSCSIに対応していない端末からもアクセスできます
  • CIFSの方が設定が簡単です
  • iSCSIの方が自由度が高いです

 

パフォーマンスの比較(CrystalDiskMark 3.0.1)

CrystalDiskMark - CIFS

CIFS

CrystalDiskMark - iSCSI

iSCSI

※パフォーマンスはNICの性能と数、回線速度、FreeNASがインストールされているサーバのスペックに左右されます。

※ESXi上にインストールしているため、ハードウェアに直接インストールするよりも若干遅い結果になっているかもしれません。

まとめると、

手軽にファイル共有がしたい → CIFS

ストレージデバイスを増やしたい、ストレージデバイスを複数のコンピュータで共有したい → iSCSI

ZFS pool上に簡単にデータセットやZFSボリュームを作成することができるので、実際に試してみると良いかと思います。

個人的には、ストレージ用にiSCSI、他のパソコンやスマートフォンとの共有用にCIFSを設定するのがお勧めです。

 

5.CIFSの設定

CIFSでWindowsとファイル共有をします。

 

FreeNAS側の設定

上部メニューから 共有 -> Windows -> Windowsファイル共有の追加 を選択します。

Windowsファイル共有の追加(CIFS)

ファイル共有を追加します

名前は共有時に表示されるものです。

パスはFreeNAS上の共有するストレージを選択します。

Browsable to Network Clientsを選択すると、共有画面に表示されます。選択を外すと、見えなくなります。アドレスを直接入力して接続します。

共有 - Windows

追加されました

 

次に、CIFS全般の設定をします。

上部のメニューから サービス -> CIFSの右側の工具のアイコン を選択します。

CIFSの設定

CIFSの基本設定をします

NetBIOS名はWindowsでネットワークに表示される名前です。既存のものと重複しないように指定します。

ワークグループはWindows側で設定してあるものと同じものにする必要があります。Windowsはデフォルトで”WORKGROUP”に設定されています。

サービス

CIFSをONにします

設定が終わったら、CIFSを起動します。

 

Windows側の設定

ネットワークを開いて指定したNetBIOS名を探します。

表示されない場合は時間を置いてから試すか、直接アドレスバーに”\\NetBIOS名”を打ち込みます。

ネットワーク - STORAGE

このように表示されます

コンピュータにマウントするには、 マウントするshareを右クリックしてコンテキストメニューからネットワーク ドライブの割り当てを選択します。

ネットワーク ドライブの割り当て

ドライブレターを割り当てます

STORAGE に接続

ユーザー名はroot、パスワードはアカウントの設定で指定したものを入力します

コンピュータ

shareがコンピュータにマウントされました

コンピュータ - share (\\STORAGE) (Z:)

share (\\STORAGE) (Z:) を開いたところ

ストレージの設定で、compressという名前でデータストアを作成し、lzjbで圧縮される設定にしたため、このように表示されています。

compressに放り込んだデータはlzjbで圧縮され、取り出すと解凍されます。

転送速度が落ちますが、バックアップファイルなど使用頻度が低いファイルを保存するには便利です。

 

6.iSCSIの設定

iSCSIを使うと、NAS上のボリュームをHDDなどのデバイスとして扱うことができます。

 

FreeNAS側の設定

エクステント (≒iSCSIでデータが保存される場所)はボリューム、ZFSボリューム、ファイルの内から選ぶことができます。

  • ボリューム: 未使用のボリュームを丸ごとiSCSIのエクステントに設定します。
  • ZFSボリューム: ZFSでフォーマットされたボリュームの一部をiSCSIのエクステントに設定します。
  • ファイル: ファイルシステム上にiSCSIのエクステントのファイルを作成します。ディスクイメージのような感覚です。

ここでは、エクステントをファイルで指定する方法で進めます。

上部のメニューから サービス -> iSCSIの右側の工具のアイコン を選択します。

iSCSI - Target Global Configuration

iSCSIタブが開きます

ポータル -> ポータルの追加 を開きます。

iSCSI - ポータル - ポータルの追加

FreeNASに割り当てられているIPアドレスを指定します

デフォルトの0.0.0.0:3260に設定すると、FreeNASに割り当てられている全てのIPアドレスで接続を受け付けます。

 

認証されたイニシエータ -> イニシエータの追加 を開きます。

iSCSI - 認証されたイニシエータ - イニシエータの追加

デフォルトのままでOK

iSCSIに接続するイニシエータとネットワークを制限することができます。

 

認証 -> iSCSIユーザの追加 を開きます。

iSCSI - 認証 - iSCSIユーザの追加

iSCSIユーザを追加します(アカウント設定とは別になります)

ユーザには任意の名前を指定します。

(CHAP)シークレットは12~16文字で指定しないと、後々困ります。(何故かここではエラーが出ません)

 

エクステント -> エクステントの追加 を開きます。

iSCSI - エクステント - エクステントの追加

エクステントを追加します

エクステント名: 任意の名前を指定します。

Path to the extent: ストレージの中に新しい任意のファイル名を指定します。

エクステントサイズ: ストレージに入りきるサイズで指定します。単位は[TB, GB, MB, KB]を使います。

 

ターゲット -> ターゲットの追加 を開きます。

iSCSI - ターゲット - ターゲットの追加

ターゲットを追加します

ターゲット名: 任意の名前を指定します。

タイプ: ここれはディスクを選択します。

ポータルグループID: ポータルの追加で設定したものと結びつけます。

イニシエータグループID: イニシエータの追加で設定したものと結びつけます。

 

Associated Targets -> ターゲットにエクステントを追加 を開きます。

iSCSI - Associated Targets - ターゲットにエクステントを追加

ターゲットにエクステントを追加します

ターゲット名とエクステント名を結びつけます。

 

設定に間違いがないことを確認できたら、サービスに戻っりiSCSIをONにします。

サービス 2

iSCSIを起動します

これでFreeNAS側の設定は終わりです。

CIFSの設定に比べて、無駄に長いような気がしました…。今後のアップデートでもう少しシンプルになることを期待します。

 

Windows側の設定

コントロールパネル -> システムとメンテナンス -> 管理ツール -> iSCSIイニシエータ を開きます。

Microsoft iSCSI イニシエータ サービス

はい を選択

Windows ファイアウォール

はい を選択

iSCSI イニシエータのプロパティ

iSCSI イニシエータの設定画面が開きます

iSCSI イニシエータのプロパティ - 探索

探索タブを開きます

ポータルの追加をクリックします。

ターゲット ポータルの追加

ポータルの追加で設定したIPアドレスを指定します

詳細設定をクリックします。

詳細設定

CHAP認証の設定をします

CHAP ログオン情報を選択して、

ユーザー名とターゲット シークレットに先ほど設定したものを入力します。

OKをクリックします。

ターゲット ポータルの追加の方もOKをクリックします。

iSCSI イニシエータのプロパティ - 探索 2

ポータルが追加されました

iSCSI イニシエータのプロパティ - ターゲット

ターゲットタブを開きます

何も表示されていない場合は、最新の情報に更新をクリックします。(それでも表示されない場合はポータルの設定が間違っています)

接続するターゲットを選択してログオンをクリックします。

ターゲットへのログオン

ターゲットへ接続します

iSCSI イニシエータのプロパティ - ターゲット 2

ターゲットへ接続しました

コントロールパネル -> システムとメンテナンス -> 管理ツール -> コンピュータの管理 を開きます。

左側のツリーから 記憶域 -> ディスクの管理 を開きます。

コンピュータの管理 - 記憶域 - ディスクの管理

ディスクが追加されていることを確認します

追加されたディスク *(ここではディスク 4)を右クリックして、コンテキストメニューからディスクの初期化を選択します。

ディスクの初期化

MBRかGPTを選びます(2TB以上の場合はGPT)

コンピュータの管理 - 記憶域 - ディスクの管理 2

ディスクが初期化されました

未割り当ての部分を右クリックして、コンテキストメニューから新しいシンプルボリュームを選択します。

新しいシンプル ボリューム ウィザード

新しいシンプルボリュームを作成します

新しいシンプル ボリューム ウィザード - ボリューム サイズの指定

ボリュームサイズはデフォルトのままで次へ

新しいシンプル ボリューム ウィザード - ドライブ文字またはパスの割り当て

ドライブ文字またはパスを割り当てます

新しいシンプル ボリューム ウィザード - パーティションのフォーマット

パーティションをフォーマットします

ファイル システム: NTFS

ボリューム ラベル: 任意の名前

クイックフォーマットを選択します。

新しいシンプル ボリューム ウィザード - 完了

設定を確認して完了をクリックします

コンピュータの管理 - 記憶域 - ディスクの管理 3

ディスクを使用する準備が整いました

これで、コンピュータからディスクにアクセスすることができます。

コンピュータ 2

ハードディスクドライブとして認識されました

 

タイトルに「手軽に」と書いてありますが… これが手軽といえるのかどうか…w

特にiSCSIの部分は設定項目が多いように感じました。

FreeBSDで自分で構築することを考えるととても手軽なのではないかと思います。

 

一気に書いたので、誤字脱字や内容に誤りがあるかもしれません。

見つけた場合はコメントから指摘していただけると幸いです。

また、わかりにくい点がありましたら同様にコメントからお願いします。

 

今回は(も?)長くなりましたが、以上です。