ファイルサーバ構築余話

今、私は部門で使うファイルサーバを構築しようとしている。ファイルサーバといえば近年は NAS (Network Attached Storage)が流行しているが、さまざまな要件を考えると、NAS に頼るのも一長一短ある。今回は最近のファイルサーバ事情を紹介しながら、技術者の振るまいについて考えよう。

大容量、高速アクセス、高機能、コスト制約…

現在筆者は、300人程度の利用を想定している社内ファイルサーバの構築を手がけている。現在は数十人規模の社内ファイルサーバを運用しているので、その経験を生かしてより良い環境を提供できないものかといろいろと考えを巡らせているところだ。

ファイルサーバに求められる要件としては、大容量、高速アクセス、高機能に加えて、コストの制約も現実問題としては出てくる。例えば、300人が日常業務で頻繁にファイルサーバに直接アクセスして使うことを想定すると、テラバイトクラスの容量と、ある程度の同時アクセスに耐えられるだけの高速性は欲しくなる。また、ファイルのアクセス方法にしても、Windows からのアクセス(SMB, Server Message Block)だけではなく、Unix からのアクセス(NFS, Network File System)も必要になるし、また不特定多数への公開のために Web から読み取り専用でアクセスできる機能も欲しくなる。

要するに、コストをできるだけ抑えつつ、さまざまなユーザのニーズに応えるべく努力しているわけだが、これといった決定的なソリューションが見つからずに苦労している。そこには、コストを抑えようという経費的な目的だけではなく、技術者として新しい技術も導入してみたいという色気と、それでいてなるべく運用を楽にしたいという怠け心も見え隠れしている。

NAS がベストソリューションとはならない悩み

さまざまな観点から、NAS はかなり優れたソリューションだと言える。最近は10万円くらいでもテラバイトクラスの NAS が手にはいるので、思わずそれですませてしまいたくなる。しかし、そのように廉価な NAS では、ユーザ認証の機能が中途半端だったり、NFS への対応が不十分か全くサポートされていなかったりする。もう少し予算を足して100万円以内で NAS を探してみると、機能的には十分なものが見つかるが、よく聞いてみると CPU のパワーが足りなくて、大勢での同時利用には耐えられないことが分かる。

また、NAS の場合にはバックアップソリューションにも頭を悩ますことが多い。RAID 構成を取れるので耐障害性はかなり高いものの、やはりバックアップは欲しくなる。できればバックアップは NAS 本体とは異なるサイト(異なるビルなど)に置きたくなる。しかし、バックアップ機能をつけようとした途端に、そのソフトウェアがコストを上昇させる結果となり、NAS ソリューションのコストパフォーマンスが悪化してしまう。

SAN, iSCSI, WebDAV…

NAS に代わるソリューションを考える場合、やはりフロントエンドの機能(SMBやNFSを提供する)とストレージは独立させた方が、モジュール性が高まり、障害時の対応が容易になると考える。その目的で SAN (Storage Area Network) を構築することも視野に入れてはいるが、FC (Fibre Channel) のネットワークを別途作るのはなかなか気の重い話だ。それならば既存の IP ネットワークが使える iSCSI (SCSI を TCP/IP 上に乗せたもの)などを使った方が利便性が高まるし、インフラコストも安くすむ。しかしこちらを選ぼうとすると、今度はiSCSIが新しい規格であるが故に、対応機器が少ないことなどの弊害が浮かび上がってくる。また対応機器が満足できるコストで入手できたとしても、やはり新しい技術はエージング(長期間使って安定稼働性を確認すること)の期間を十分に取らないと安心して使えない。

このようにいろいろと考えていると、いっそのこと現在運用しているファイルサーバと同じように、普通の PC サーバに Linux などをインストールして、ストレージは SCSI でつなぐという旧来の方法をとろうかとも考える。確かにこれは導入コストが安い割に機能追加などに自由度があり、バックアップに関しても追加の商用ソフトウェア無しに問題を解消できる。しかし、これでは新しい試みが一つも無くて、技術者として面白くない。何か新しいことはできないかと考え、SMB も NFS もやめて、WebDAV (Distributed Authoring and Versioning protocol for the WWW) のみのサービスにしたらどうか、とも考えてしまう。しかしそうすると、SMB や NFS と比べてアクセス速度が遅くなるだけなので、エンドユーザの立場からすると受け入れられない選択肢なのだろう。

技術者は悩んで一歩前進する

いろいろと悩ましい話をしてきたが、実は技術者としての著者はこの悩ましい状況を楽しんでいる節がある。ベストソリューションが見つからないから日々情報収集に勤しみ、ジグソーパズルの欠けたピースを探し出そうとしている。このような振る舞いは、本来技術者が皆もっている気質ではないだろうか。

昨今はソリューションばやりでいろいろなことがパッケージングされて提供されているため、技術者が悩む部分が少なくなってきてしまっている気がしている。しかし、技術者の進歩は日々の悩みを解消するところにあると信じている筆者からは、常に自分なりのベストソリューションを探求し、悩み続けることを世の技術者の皆さんにお勧めしたい。