ネットワーク型ストレージ環境を構築するSANやNASを使えば,ストレージ装置を複数サーバーで共有できるようになる。そうすることで,ストレージ管理を軽減できるメリットがある。「SAN」,「NAS」,そしてIPネットワークを利用するSANである「iSCSI」。この三つの技術を解説する。

 サーバー内蔵のハードディスクやサーバー直接接続の外付けRAID装置を利用していると,サーバーの台数が増えるにつれ,バックアップや空き容量の監視といったストレージ管理の負荷がどんどん高まる(図1)。ディスクの利用率もサーバーごとにばらつきがあり,システム全体で見たときの利用率は意外に低い。 こうした問題を解決する手段として,ネットワーク型ストレージ環境を提供するSAN(Storage Area Network)やNAS(Network Attached Storage)が登場した。各サーバーに分散したストレージを統合して共有すれば,ストレージ関連の管理を大幅に軽減できる。低コストでSANを構築できる「iSCSI」という技術もある。ここでは,ネットワーク型ストレージの基礎をひも解きながら,SANやNAS,iSCSIのメリットやデメリットを解説する。

図1●サーバーに直接つなげるストレージの問題点
図1●サーバーに直接つなげるストレージの問題点
サーバーの台数が増えると,ディスク装置の平均的な利用率が低くなりやすく,ストレージ管理も非効率的になる

◆SAN(Storage Area Network)

 クライアントPCとサーバーをつなぐイーサネットLANとは別に,サーバーとストレージを専用ネットワークで接続した環境を「SAN」と呼ぶ。一般に,ストレージ専用ネットワークとそれに接続した各種のストレージ装置を総称して呼ぶことが多い。

 SANにはいくつかの種類があるが,広帯域幅でデータ転送効率が高い「ファイバ・チャネル」をデータ経路として利用するのが「FC-SAN」である。ファイバ・チャネルのケーブルには銅線か光ファイバが使えるが,一般には速度と長距離接続で有利な光ファイバが利用されている。

独自のアドレスでSAN上のノードを識別

 まずはSANの基礎的なポイントを押さえておこう。FC-SANでは,そこに接続するサーバーやストレージ装置はそれぞれ「ノード」と呼ばれている。ノード間の通信には,「ノード名」や「ポート・アドレス」といった識別子を使っている。

 各ノードのファイバ・チャネル用アダプタには,「ノード名」という64ビットのアドレスが割り当てられている。これはネットワーク・カードのMACアドレスのように,アダプタ(あるいはストレージ装置)のメーカーが世界で一つしかない固有のノード名を付与している。

 アダプタには,1つ以上の通信用ポートがある。FC-SANのポートには,電気的な論理信号を光ファイバに適した信号に変換して送り出す電子回路「トランスミッタ」と,光ファイバの信号を電気的な論理信号に変換して取り込む電子回路「レシーバ」がペアで備えられている。

 各ポートには,64ビットの「ポート名」がメーカーにより割り当てられている。ただし,FC-SANの通信で使用するあて先や送信元のアドレスは24ビットである。そのため,実際にはSANにノードを接続した際,ファイバ・チャネル・スイッチなどにより24ビットの「ポート・アドレス」が動的に割り振られる。これはDHCPによってIPアドレスが割り振られる仕組みに似ている。

 ファイバ・チャネルの通信は全二重で,送信と受信を並行処理できる。データ転送速度については,1Gビット/秒,2Gビット/秒,4Gビット/秒,8Gビット/秒などの規格がある。

耐障害性の高いネットワーク形態も選択可能

 SANのネットワーク形態は主に三つある(図2)。最も基本的な「ポイント・ツー・ポイント」は,各ノードのポート間を1対1で接続する形態である。各ノードが備える複数のポートを使って,サーバーやストレージ装置を網状につなぎ,小規模なSANを構成することもある。

図2●SANの3つの接続形態<br>ファイバ・チャネルの物理インタフェースには,データを送信する「トランスミッタ」とデータを受信する「レシーバ」をペアで持つポートが用意されている。このポートを使って3通りの形態で接続可能
図2●SANの3つの接続形態
ファイバ・チャネルの物理インタフェースには,データを送信する「トランスミッタ」とデータを受信する「レシーバ」をペアで持つポートが用意されている。このポートを使って3通りの形態で接続可能
[画像のクリックで拡大表示]

 「アービトレイテッド・ループ」という接続形態は,ノード間をループ状につないでいくのが特徴である。あるノードの一つのポートを隣のノードのポートへ次々と接続してループを形成する。比較的高価なファイバ・チャネル・スイッチがなくても複数ノードを接続できるため,経済的にSANを構築できる。最大接続ノード数は126(パブリック・ループ構成では127)となる。この接続形態では,全ノードが1つのループを共有するため,ノード数が増えると性能が低下する。

 FC-SANで最も多く利用されているのは「ファブリック」型だ。ファイバ・チャネル・スイッチと各ノードをスター状に接続する。各ノードが帯域幅を占有できるため,ノード数にかかわらず高速なデータ転送を実現できる。

 ファブリック型は,一部のノードに接続障害が発生しても他の接続に影響を与えず,可用性が高い。複数のスイッチをカスケード接続することで,大規模なSANにも対応する。最大接続ノード数は,論理的には約1678万となっている。

 このファブリック型の応用として,「デュアルファブリック」という耐障害性の高い接続形態もある。図3のようにデータ・アクセス経路を二重化し,片側のファイバ・チャネル・スイッチやケーブルに障害が発生しても,自動的にもう片方の経路に切り替えられる仕組みだ。ファイバ・チャネル・スイッチの保守作業などを実施する際にも,デュアルファブリック構成ならサーバーからストレージ装置へのアクセスを止めずに済む。

図3●SANの耐障害性を高めるデュアルファブリック構成
図3●SANの耐障害性を高めるデュアルファブリック構成
SANストレージへのアクセス経路を冗長化して,耐障害性を高めることが可能

サーバーごとに利用範囲を分けるゾーニング

 複数のサーバーがストレージ装置を共有するSAN環境では,「ゾーニング」と呼ぶ方法でサーバーとストレージ間のアクセス制御をしている(図4)。特定のサーバーからは特定のディスク・システム(またはディスク領域)しか見えないようにしたり,別のディスク装置へのアクセスを読み出しのみに制限したりできる。ストレージ全体のバックアップを実行しやすいように,バックアップ・サーバーに全ディスク装置へのアクセスを許可するような設定もできる。

図4●SANのゾーニング
図4●SANのゾーニング
特定のサーバーから特定のディスク領域にしかアクセスできないように制御できる。異種OSのサーバーが同じディスク領域にアクセスすると,ファイル・システムを壊す恐れがある

 ゾーニングは,OSの異なるサーバーが同じディスク装置を共有する場合に,相互干渉を防止するためにも利用される。もし異なるOSのサーバーが同じディスク領域を共有した場合,これらのサーバーが当該領域のファイル・システムを破壊してしまう恐れがあるためだ。