Synology DS1511+のHDDが二台同時に逝った時の復活記録

去る4月頃、2011年からWD GREEN 3TB x 5発で稼働していたRAID5(正確にはSynology Hybrid RAID)アレイがかなりのピンチを迎えました。もともとDisk3とDisk4でエラー警告が出てたんですよ。正確にはDisk4は一度出た切りでその後あまり出なくなり、Disk3だけが定期的にバッドセクターを吐いてました。で、とりあえず替えのWD RED 5TBを調達したものの、普通に使えてるし最悪RAID5なのでいきなりDisk3が完全に動かなくなってからでも遅くはないだろうとか、横着心が勝って放置してました。(ちなみに2014年頃にも一台のHDDが再起動というか一度止めてコンセント移設した後のブート時にクラッシュ。同じ3TBに交換してます)

春めいてきてサーバー周りの室温も上がってきたなぁ、という折り、DSMの自動更新が振ってきて再起動。そのままピーピー音が出て起動不能に。「あー、ついに逝ったか。しかしこんな時の為にスペアディスクは買ってあるぜ」とばかりにDisk3を交換。無事に起動しRAIDのリビルドを始めました。ところが今度はその過程でDisk4がエラーでRAIDアレイがクラッシュとの表示。リビルドはディスクに連続アクセスをするのでその負荷でもともと予兆のあったDisk4もいったんでしょうか。もしくはたまたま普段アクセスしないので顕在化してなかったバッドセクター領域に、リビルドだけにアクセスが及んで発現?ともあれRAID5なので1台までは死んでも復旧可能ですが、2台同時に死んだらアウトです。一応、以前にDS215jを実家に置いて遠隔バックアップはしているので、大事なデータは保全できるのですが、バックアップ対象にしていない領域もあるし、手間もあるし(遠隔リカバリは転送量が大変なことになるので、実家からDS215jを運んでこないとならない)、(ノ∀`)アチャーという感じ。

クラッシュ後にディスクをリマップする的なチェックボックスをONにして再起動すると、延々ディスクチェックというか修復は走ります。数時間放置しておくとまた起動してきてリビルドをするとこれまた数時間でピーピー鳴り出してRAIDクラッシュ。延々この繰り返しです。2,3日かけて数回位返した後、ラチがあかないってんでサポートに連絡。Synologyのサポートはなんとポート開放しておくと中の人が直接SSHでログインして診断してくれます。最悪、Disk4でバッドセクターでているところのファイルは復旧できなくてもそこだけDS215jから引っ張ってくるので、そこだけ回避してなんとかRAIDのリビルドを完遂させることはできないでしょうか?というお願いの仕方をしてみたんだけど、そこはあっさりスルーされて、「こりゃ治らないんで、HDDを市販のデュプリケーターツールで複製してそれを代わりに刺してみて」という至極一般的な結論を言い渡されました。

ただ、それをしようとすると3TBのディスクがもう一台必要に。まぁ、最終的にはそれもやむなしと思いつつ、もう少しなにかできないかとバッドセクターの復旧で検索してみると、HDD Regeneratorというオンラインソフトに行き当たりました。文字通りバッドセクターの回復ツールで60%の確率で直せると謳っています。いくつか日本語のレビュー記事もありさほど怪しそうでもないので導入。1セクタだけ修復できる試用版もありましたが、何度もやるうちにHDDが本当に死んだらその方が痛いので、最初から料金(当時のレートで1万円くらい)を支払ってフルバージョンで。Windows上でも実行可能ですが、USBメモリに専用ツールを焼いてブートして実行。ちなみにSATAモードをIDE互換モードにしておかないとパフォーマンスが大きく低下することがあると注意書きされていました。またリビルド同様HDDに連続的な負荷がかかるので発熱でとどめをささないよう、12cmファンの風をあてながらやりました。最初ファンを上においてたんですが「微振動がHDDに良くないんじゃね?」という指摘を受け適当な台を用意したり。

IMG_8039

結果として写真のように9時間半かけて305のセクターを修復。これをDS1511+に戻してリビルドしたところなんと完遂!もちろん継続利用はさすがに恐いので、もう一度、今度はあえてWD以外にしてみようということでHGSTのDeskstar NASの5TBをゲットして、再びDisk4を交換してリビルド。Synology Hybrid RAIDなので、2台で2TBずつ増えた分でRAID1を組んで全体のアレイを拡張するところまで自動でやってくれました。またおいおい残り3台も5TBかそれ以上のドライブにリプレイスしていこうと思います。

予算の関係で5TBを選びましたがプラッター的にハンパなのかどこもあまり在庫がなくちょっと困りました。もうちょっと奮発して6TBにしとけばよかったかな?

ともあれ1,2週間かかりましたがどうにか完全復旧できました。実は実家に寄るついでがあったのでDS215j持って来ちゃってたんですが結局使用せず。後日また愛知まで設置しに帰省したりで、HDD代も含めると結構な出費に…まぁ、でもまだまだ現役で働いてくれそうなので喜ばしい限りです。SynologyいいよSynology。オススメです。あとHDD Regeneratorも。救えるケースばかりとは限りませんが、体験版は試して見る価値あるかも知れません。

実はほぼ時を同じくしてWebやメールサーバーであるLinux機も10年以上つかってるHDDがついにダウンしてまた苦労した(してる)んですが、それはまた別記事で。室温があがってくるとなにかと不調になりやすいので皆様もバックアップや冷却にはくれぐれもお気を配りくださいませ。

 

M.2 SSDでUSBドライブを作るの巻

速いUSBフラッシュメモリが好きで新しい規格が出る度に買い換え続けているσ(^^)ですが、ついに飽き足らなくなり、SSDのUSB外付けドライブに手を出すことに。USBといえど3.0ならシーケンシャルリードが400Mbps台と聞き。現在もっとも速い部類のUSBフラッシュメモリでも200Mbps台だと思います。それが倍。一般的なUSBフラッシュメモリなんかだと数十Mbpsとか出ればマシなお方なので、下手すると10倍くらい出てることになります。それでどういう場面で嬉しいかとかはさておき、スペック厨的にはたまらないわけです。

で、SSDといっても2.5インチドライブ互換サイズのものではなく、今は小さな基板型のM.2という規格があります。これならマッチ箱くらいになるのでポータビリティもそんなに悪くないぞと。

で、M.2の中でも長さが何タイプがあって、PC内蔵用とかだと細長い2280サイズ(22 x 80mm)なんかが一般的なんですが、今回はなるべく小さく収めたいということで2242(同42mm)型をチョイス。Transcendのものが見付かりました。

Transcend SSD 256GB M.2 2242 SATA III 6Gb/s TS256GMTS400

Transcend SSD 256GB M.2 2242 SATA III 6Gb/s TS256GMTS400

29,941円(01/31 10:44時点)
Amazonの情報を掲載しています

ところがAmazonなどで探してみるとケースの選択肢があまりない。2280も入りまっせ、という細長い形状がほとんど。仕方ないので、eBayで探して注文しました。USB3.1対応で、ポートもType-Cというのがポイント高いです。C->Aケーブルの短いのがついてくるので、一般的な仕様には困らないでしょう。ゴールドなのはちょっと、、と思いつつそれしかなさげだったので妥協。

13332794_10209672676360555_7106800890546641875_n

ところが届いたのがこちら。写真では文字が読みづらいですがなんとM.2ではなくmSATAというやや古い規格のケース。出品の写真には同じところにしっかりM.2と書いてあるし、もちろんタイトルや仕様もM.2となっているにも関わらずです。速攻クレームいれるも「あなたはM.2を注文しています」とかトンチンカンな返事。「あぁそうだよ、M.2を注文したんだよ。でもあなたが送って来たのにはバッチリMSATAって書いてあるでしょ?」と出品写真と届いたものの写真を1枚にまとめて赤線でアンダーラインいれて返信。今度は「で、それは正常に動いてるかい?」と。「知らねーよ。M.2とMSATAはコネクタ自体があわないんだから動作確認自体無理だよ!」とハン切れ返信。ようやく「返金か交換します」と。「絶対に正しいの送る自信があるなら交換で、といったら「じゃぁ返金します」ってどんだけわかってないんだと…。今回は完全にハズレの出品者でした。しかも交換も返金もこちらから返送して届き次第処理、と。日本なら先に交換品送るとこじゃないですかね。一番到着が速いとこ選んだのになんとも無駄に日時を食われました。というかもう一週間以上たつけど、「届いたから返金処理するよ」的な連絡もなし。もう2,000円くらいだし半ば諦め気味。

で、同じものを別の業者から注文しても良かったんですが、また1,2週間待たされるのもイヤだったので、USB3.1->3.0にグレードダウンするものの国内でサクっと返るこちらの製品を中も。色もシルバーでいい感じ。実はこいつもパッケージにmSATAと書いてあって「またやられたっ!」と思ったんですが、中身はちゃんとM.2で無事刺さって使えました。速度もシーケンシャルRでバッチリ400Mbpsとか出てたはず。

13346677_10209696548797351_6611604635742937582_n

はず、というのは事情がかわって持ち歩き用にするのを止め、サーバーにぶらさげて仮想Linuxマシン置き場にしてしまったんですよね。フォーマットしなおした時にベンチデータも消えてしまい…そのサーバーが3.0までしか対応してないので3.1ケースを買い直すのも当面見送りに。

2016.06.21追記:ベンチ発掘できました。

13312903_10209696678240587_3047236668619773458_n

実のところこいつにWindowsToGo(USBブートでそのPCでも動くWindows。Enterprise版Windowsから作れる)なWindows10環境を構築して、実家とかネットカフェとかどこでも使えるマイ環境を作る目論みがあったんですが、ProやHomeのWindowsからでもナンチャッテToGoインストールができるという記事をみつけて買い揃えたんですが、結局のところライセンス認証がPro/Homeのままじゃ別マシンに差し替えた時に再認証になっちゃうんじゃね?と気付く(記事ではその辺一切触れておらず)。まぁ、本当にそうなるか試したわけじゃないんですが普通にダメだろうと。仕方なくWindows 10 Enterpriseを買おうとも思ったんですが、ボリュームライセンスのみの販売で最低3本からしか買えず、数万円の出費になるので断念。ポータブルWindows環境は後日別記事で紹介するスティックPCで実現する様に方針転換をはかったとさ。

ともあれもともと発熱がスゴいと言われるM.2を(多分)アルミのケースにいれてるので使ってるとかなり熱くなります(むしろ放熱できてるので良いことだとは思いますが)。それを除けば、まずまず小さくて外付けHDD並、というかUBS3.0の限界速度近くのスピードが出るので、高速な可搬ストレージが欲しい方にはオススメです。もちろんバスパワーで動きます。最近はSAMSUNGやBUFFALOなどからもUSB外付けSSDというカテゴリの商品は発売されていますが、それらはもう少し大きかったり高かったりするんですよね。それを思うと、ケースはタダみたいなものなので、M.2は狙いどこじゃないかと思います。

ついにWordPress移行を敢行

少し前にサーバーのHDDが逝ってしまわれて、MovableTypeで吐き出した静的HTMLを仮で置いてしのいできましたが、ようやく新サーバーにWordPressを入れてデータを移行しました。

OSX ServerのApacheは設定ファイルがややこしくて難儀したり、WordPressのMT importerが一定文字数以上のエントリをさくっとスルーして読み込まない仕様に時間くわれたししましたが、どうにか形になった気がします。レスポンシブなテーマをチョイスしたのでモバイル端末からの見やすさも向上したかなと思います。

一応すべての記事は移ってるはずですが、おそらくRSSは互換性がない気がするので、いるかどうかわかりませんがRSSリーダーなどに登録いただいている方がいらしたら、念のため再登録していただくのが吉かも知れません。あと、プログラミングやサーバー設定の話題は公共性などを考えてQiitaに書いていくことにしました。

WordPressの方がモダンなプラグインも多く、色々試せるかと楽しみです。執筆環境としてもついにWindows Live Writerから卒業できるかも。もうMacBookに仮想Windows入れておかなくてもいい?!

今後ともよろしくお願いいたします。

ブログがダウンしている間にゲットしたガジェットのレビューも貯まっているので精力的に書いていきたいと思います。

以下レビュー予定。

YAMAHAルーターでDS-Liteを試す

知人に相談されてDS-Liteについて調べてみたところ、自宅のRTX1210でも使えそうだったのでトライ。どこぞの携帯ゲーム機の話ではなく、IIJmioのNFようなIPv6 IPoEオプションを提供している回線で、IPv4通信もカプセル化してやっちゃおうという仕組み/サービスのこと。一般にフレッツで網内通信は速いのにプロバイダが遅い、というケースはIPv4通信行うPPPoEに関するISP側の設備がショボいせいと言われますが、それを経由しないでIPv4パケットをIPv6パケットで包んで高速なIPoEでインターネットまで届けてしまおうというシロモノです。

IIJmio/SF(固定IPプラン)とNF(IPoEが使えるプラン)を契約している我が家では、IPv4はSFでこんなもん(平日夕方)。

それが、

こんな感じに。もともとNFよりもSFの方がお高いプランなせいか速いことが多いんですが、それでも更に速くなりますね。(NFでも測れば良かったんだけど忘れてた…)

同日深夜追記:

東日本でも多少は遅くなる深夜付近で再計測してみました。PPPoEだとこれが、

DS-Liteだとこんなん!

10倍以上差がでました。

また、ポートを色々使うオンゲーはどうかなと思ったんですが、PS4でThe Division、WiiUでSplatoon試した限りでは問題なさげ。これは常用できそう。

2016.04.22追記:深夜帯にThe Divisionしたら全くログインできない現象発生。やはりグローバルIPアドレス共有してるので、混んでくるとポートが不足したりするんですかね。戻したらすぐつながりました。pingで差が出るなら使いたいところですが、やはりゲーム機は除外しておいた方がいいのかも。

 

■設定方法

IIJmioの動作確認端末にはYAMAHAルーターはないんですが、こちらにNVR500での設定例が出ています。ググるとRTX1200などのケースも出てきます。既にIPoEでIPv6通信ができてる状態からならほんの数行ですね。

追加したのは

tunnel select 100
  tunnel encapsulation ipip
  tunnel endpoint address 2404:8e00::feed:100
  tunnel enable 100

だけ。endpointアドレスはgw.transix.jpなんですが、YAMAHAルーターだとなぜかFQDNだとダメな模様(ダメでした)。将来的に変更される可能性もありますが仕方ないのでIPv4アドレスで直書きします。

ウチはVPN用でトンネル番号1を使っていたので100としました(1行目と4行目)。

後は、例にあるように

ip route default gateway tunnel 100

などとすれば全てのIPv4通信がDS-Lite(tunnel 100)経由になるわけですが、ウチではサーバー公開などでポート開放(IPマスカレイド)しているものも多数あるので、YAMAHAお得意のフィルター型ルーティングでLAN内端末のプライベートIPアドレスで振り分けるようにしました。例えば、192.168.0.6の端末だけDS-Lite経由にする例は、

ip filter 500005 pass 192.168.0.6 * * * *
ip route default gateway tunnel 100 filter 500005 gateway pp 1

てな感じ。1行目で500005(適当な空きフィルタ番号でOK)に対象のIPアドレスを書き、2行目でそれに見合うのはtunnel1へ、それ以外はpp 1 (通常のプロバイダへのPPPoE接続)へ、という指示を書きます。実際にはIPアドレスを範囲で指定したり、IPアドレス別ではなくプロトコル別などの指定も可能なので、用途に応じて設定してみてください。

実際には、セキュリティ的なフィルタリングも必要かも知れませんが、いまいちDS-Liteの仕様がわからず保留です。グローバルIPアドレスを他の人と共有してるはずですが、NATしてるし具体的にどういうリスクがあるんでしょうね。常用する際にはもう少し調べてみようと思います。

同日深夜追記:

深夜の速度も落ちにくいしということでサーバー系マシン以外はDS-Liteをデフォルトゲートウェイにしてやろうと思って、セキュリティ設定も追加しました。多分pp(PPPoE)にデフォルトでセットされるフィルタがこんなもんだと思うので、それを継承。なのでフィルタ作成は省略。

  ip tunnel mtu 1500
  ip tunnel secure filter in 201003 201020 201021 201022 201023 201024 201025 201030 201032
  ip tunnel secure filter out 201013 201020 201021 201022 201023 201024 201025 201026 201027 201099 dynamic 201080 201081 201082 201083 201084 201085 201098 201099

1行目はおまじないでMTU指定。2行目が受信方向、3行目が送信方向で静的に加え動的フィルターも基本的なものが含まれています。追加適用する際は、「tunnel select 100」をお忘れなく。

RTX/NVRでフィルター型ルーティングをした時のルーター自身のWAN接続

ねんがんのRTX1210をてにれたぞっ!

ってことで、NVR500からの移行作業をしています。RTX1210のレビューは追々別途ですが、やってる中でハマったところを忘れないうちにメモ。

我が家では自分用と同居人用でサブネットをVLANでわけて、それぞれのプロバイダも別個に割り当てています。YAMAHAルーターの場合、フィルター型ルーティングという方法を使って1台のルーターでそれを実現できます。

例えば、192.168.100.0/24と192.168.101.0/24というサブネットがVLANなりなんなりで構築してあるとします。192.168.100.*が私所属の端末、192.168.101.*が同居人の端末になるようにDHCPなりでIPアドレスが降ってあり、それぞれがインターネットにつなごうとすると、私のはプロバイダA(pp1)経由、同居人のはプロバイダB(pp2)経由にしたい場合、

ip filter 500001 pass 192.168.100.0/24 * * * *
ip filter 500002 pass 192.168.101.0/24 * * * *

というフィルターを作成し、

ip route default gateway pp 1 filter 500001 gateway pp 2 filter 500002

みたいにしてpp毎に紐付けてやればOK。フィルターの番号はなんでもいいんですが、フィルター型ルーティング用のは500000番台となんとなく決まってるようです。

さて、NVR500の頃からこれをしていたんですが、ファームウェアがリリースされても通知が来ないという問題が発生してました。不思議に思いつつWindows用アップデータを使って更新してたんですが、RTXでは.binファイルでの配布しかない。とりあえずUSBメモリ経由で更新はしたんですが今度はNTPで時刻合わせができないことが発覚。

どうもRTX自身がインターネット見えてないっぽい。RTXにtelnetしてpingを外にうってもつながらない。なるほど、上記設定で192.168.100.*や192.168.101.*な人達のゲートウェイは定義してあるんだけど、ルーター自身についての言及がない。どちらのサブネットにもIPアドレスを持ってるのでなんとなく含まれそうな気もしちゃいがちですが、ルーター自身がWANに出る時に使うIPアドレスは別にあるんです。最初127.0.0.1かなと思ったんですが、ググったら0.0.0.0でした。てことでフィルターを1つ足して、pp1に紐付けて完了!

ip filter 500001 pass 192.168.100.0/24 * * * *
ip filter 500002 pass 192.168.101.0/24 * * * *
ip filter 500003 pass 0.0.0.0 * * * *
ip route default gateway pp 1 filter 500001 500003 gateway pp 2 filter 500002

最新ファームウェアチェックもNTP(時刻合わせ)もバッチリ。

っていうか、いままでLAN内向けのNTPサーバーをNVR500にしてたけど、NVR自身がまともに時刻合わせできてなかったってことか…