2021年3月14日日曜日

XPEnology

ここ10年程で幾つかのSOHO向けのNASを使ってきたが、SynologyとQNAPの2大巨頭は今のところ揺るぎない感じがする。
どちらもストレージサーバーとしては十分なスペックを備えていて、中小企業程度のトラフィックであれば、十分に対応できている。
また、ストレージ用途としてだけではなく、様々なアプリケーションをインストールして、機能が増やせるのも素晴らしい点だろう。
最初に購入したアプリケーションをインストールできるNASがSynologyだったからなのか、個人的にはQNAPよりもSynologyの方がアプリに関しては扱いやすい。

ただ、ネットワーク系のサービス程度であれば、SOHO向けNAS程度のスペックであっても問題無いが、DockerやWordPress、MariaDBやPostgreSQL、Node.jsやPython、その他諸々の重たい処理を走らせる事ができるアプリを動かすとなると、流石にSOHO向けではCPUやメモリーが辛くなってくる。かといって、予算的に高価な大企業向けの機種を買う事もできない。

Linuxでサーバーを組めば何でもできるのだけれど、各種サービスのメンテナンスといった日常的な作業までが属人化してしまう。
中小企業では少し他よりもネットワークやコンピューターについて明るいだけで、この手の仕事を振られてしまうので、自分が居なくなった時にでもマニュアルを読めばなんとかなる程度までハードルを下げておく必要がある。
そうなってくると9割以上GUI操作のWindowsサーバーという選択肢も出てくるのだけれど、近年のWindowsServerはCALのライセンス管理が非常に面倒くさい上に高い。アクティブディレクトリとかクラスタリングとかWSUSとか、そういった用途が必要無いのであれば、できるだけ使いたくない。
Windows認証だけならSynology Direcory Serverというユーティリティが使える。Linuxならsamba-ad。
重要なのはコンソール画面ではなくGUIで操作できる事。LinuxでもADの操作だけならクライアント機にRSATを入れてサーバーにアクセスすれば良いだけなのだれど、サーバーそのものの設定を弄るとなると、結局SSHでコンソールを叩く必要に迫られる。

話が逸れた…
古くなって使わなくなったPCをNASとして使おうという試みは昔からされていた。今は上にも書いた通り市販のNASが十分高速で快適に動くことから、それをPCで動かせないかという試みまで行われている。
その中で、SynologyのDSMをPCで動かす為のツールとしてXPEnologyというものが存在する。
そこでCPUがCore i3、メモリーが十分に積まれていていて、ストレージがSSDのSynologyNASなら快適なのか?という実験。

動かす方法としてはNASのBootシステムをUSBメモリーに書き込み、USBからブートしてPC上のストレージをNASのストレージとして使用する方法。
もう一つはVMWareの仮想HDDにBootシステムを書き込んで、別の仮想HDDをNASのストレージとして動かす方法だ。
詳しくは、書かないが「XPEnology」とか「XPEnology ESXi」とかで検索すれば先人の知恵が垣間見えるので、それをヒントに試してみると良い。

備忘録として、幾つか記しておく。
・必要なファイルは、「synoboot.vmdk」とNASの機種に準ずる「synoboot.img」。現時点での最新は「Jun’s Loader v1.04b」でDS918plus…だと思う。

・「synoboot.vmdk」は仮想HDDの定義ファイルで、全機種共通。

XPEnology New Serial Generatorで該当機種のシリアル番号を生成

・OSFMountを使って「synoboot.img」の「partition 0」を仮想HDDにマウントし、中にある「grub.cfg」をテキストエディタで書き換える。

・grub.cfgの書き換え場所はUSBメモリーからBootする場合はUSBメモリーのvidとpid、Serial Generatorで作ったシリアルナンバー、PCのmacアドレス。 ESXiで動かす場合は仮想マシンのmacアドレスと、Serial Generatorで作ったシリアルナンバー。 いずれの場合もtimeoutは5程度に増やしておくと良いかも。

・grub.cfgを保存後、OSFMountでDismount。USBから起動する場合はbalenaEtcherとかRufusでUSBメモリーに書き込む。

・インターネットでovaファイルからXPEnologyをインストールする方法が書かれている場合があるが、私の環境ではできなかったので、別の方法を採用した。

こちらのページを参考にESXiは6.5u2を採用。今回はSATAのSSDで1台のみでのテストなので、ESXiのバージョンの影響は無いかもしれないけれど、念のため。

・ESXiのデータストアブラウザを使って、synoboot.vmdkと設定書換済みのsynoboot.imgを既に作っている仮想マシンのディレクトリにアップロードする。

・仮想マシンのデバイスの内、既存のHDD、SCSIコントローラー0、CD-ROMドライブを削除。その他デバイスの追加でSATAコントローラー0、SATAコントローラー1を追加。

・ハードディスクの追加で既存のディスクを選び、先ほどアップロードしたsynoboot.vmdkを選択。仮想デバイスノードはSATAコントローラー0 0:0とする。

・ハードディスクの追加で新規ハードディスクを選択、必要な容量を設定し、シンプロビジョニングを選択、仮想デバイスノードはSATAコントローラー1 1:0とする。

・新規ハードディスクをシックプロビジョニングで作成すると、NAS起動後のファームウェア書き込み時に、フォーマットできずエラーになる。

・仮想マシンを起動するとXPEnologyの起動画面が表示されるが、その際にメニュの一番下のESXi動作モードを選択する。上記「grub.cfg」内の下の方にメニュー表示部分が書かれているので、予めUSBブートの部分をコメントアウトしておいても良いかもしれない。2度目以降の起動時には最後に選択した起動方法が自動的に選択されるようになっている。

さて、動くまで色々と勉強することになったが、最終的にはUSB bootもESXiもどちらも問題なく動作した。
動作速度は流石にAtomやCeleronを使っているNASとは比べ物にならないぐらい速い。ストレージサーバーを主として作られたNASと比べるのもどうかと思うが、アプリケーションサーバーとして使うには都合が良いと思った。試しに数週間Dockerを動かしてzabbixを稼働させてみたが、頗る安定して動作している。RaspberryPiで組んだzabbixよりも快適で安定しているのは間違いない。
ただ、どう考えても完全に非正規品なので、ファームウェアが新しくなった途端に動かなくなる可能性は多いに有り得るし、安定性も保証されないので業務用途では使えないか。
運用次第では色々と使い道はあるけれど、実験の域は出ない感じかなぁ。

何にしてもSynologyのDSMは素人にも優しい良いOSだと思う。ASUSTORとかQNAPに浮気したりしたけど、次に買うのはSynologyかな。 それまでにはSOHO向けでも10GbpsのLANポートを標準で付けてくれると嬉しい。

追記(2021.3.15)
ESXi6.7で動かしてみた。問題無く動作したが、注意点としては仮想マシンの起動モードをUEFIからBIOSに切り替える必要がある。

今回参考にさせて頂いた素晴らしいページは以下の通り。
みずき庵 XPenology覚え書き
YNET Weblog ESXi6.5でSynologyなXPEnologyを使う
xenappblog.com Running Synology on ESXi
Labo-Tech Comment installer Xpenology (DSM) sur une VM ESXi ?
気まぐれブログ 普通のPCをSynology NAS化しちゃうXPEnologyの導入方法

 

 



0 件のコメント:

コメントを投稿