QNAPの安定稼働のためにCrashPlanとMackerelを入れる
前のエントリでとりあえず、QNAPを導入してTimeMachineの設定までしたが、まだ以下の様な課題がある。
- QNAP自体の監視
- QNAP自体のバックアップ
QNAPの監視
QNAPは単なるLinuxなので、なんとMackerelでモニタリングできるのである。
Mackerel で QNAP も監視したいのでするに書いてある手順通りにやったら簡単にバイナリが作成できた。素晴らしい。この記事のようにDockerだと上手くいって、Mac上でのcrossbuildだと何故かだめだった。
起動はinitスクリプトを書くのもたるかったので、雑にnohup
で起動してある。ちなみにQNAPは標準ではnohup
が入っておらず、ipkg install coreutils
することで、coreutilsにnohup
が入っていてそれを利用できた。
こんな具合でちゃんとモニタリング出来ている。監視項目とかはあんまちゃんと練られてないのでもうちょっと検討したい。それと導入までにまだちょっと一手間なので正式サポートしたいすな。
QNAPのバックアップ
よく言われることだが、RAID 1はバックアップじゃないので、QNAP自体のバックアップはどうするんだっていう話がある。ミスオペとか災害時に怖いとかそういうやつ。まだそんなに厳密に考える必要はないけど、手段は考えておきたいという感じ。
ここは自宅に機材を増やすよりかは、オンラインバックアップサービスを使いたいという気持ちがあり、CrashPlanを試してみることにした。
CrashPlanは自宅RAID運用をしていてオンラインバックを使っている何人かに聞いてみたらわりと評判が良かったというのがある。実際、それなりに長くサービスを展開していて、Linux対応しており、設定が楽かつ柔軟、一ヶ月5ドルとなるとなかなかリーズナブルで他に選択肢はあまりなさそうであった。まだ検討段階なので他にあったら教えて欲しい。
QNAPへのCrashPlanの設定
超絶簡単であり手順は以下のとおりであった
- App CenterからJavaを入れる
- App CenterからCrashPlanを入れる
- 初期設定
App CenterからJavaを入れる
App Centerの[開発者ツール]タブからJRE_ARMを入れる。この手順はもしかしたら要らないかもしれないけど、先にJavaを入れる必要があるっていう情報がググったら出てきたりフォーラムに書き込まれてたのでそうした。
App CenterからCrashPlanを入れる
App Centerの[バックアップ/同期]からCrashPlanを入れる。画像の右下にあるやつがそれ。
初期設定
http://[QNAPのIP]/crashplan にアクセスすると初期設定画面が開く。とは言ってもIPアドレスと割り当てメモリの設定の2項目だけ。
割り当てメモリが512Mb(default)とかなってたけど、いやいやこのQNAPはメモリ512Mbしか積んでませんから、ってことで256割り当て。Java〜。
CrashPlanクライアントの設定
CrashPlanは現状クライアントソフト経由でしか操作ができない。なので、手元のマシンにクライアントソフトをインストールして接続先を切り替えて利用する必要があった。
詳しくはオフィシャルのUSING CRASHPLAN ON A HEADLESS COMPUTERに書いてあった。CrashPlanのデーモンはポート4243でローカルListenしているので、それをSSH port fowardingで穴を開けて、設定にそれを書いて接続するという具合。
ちなみに、MacのCrashPlanのdmgはサーバーとクライアントが同梱されているので、インストールすると手元のMacでもCrashPlanのバックアップデーモンが動き出してしまう。それはリソースの無駄なので、
sudo launchctl unload /Library/LaunchDaemons/com.crashplan.engine.plist
して、plist編集して自動起動しないようにするなどした。
クライアントの画面はこんな感じ。バックアップ残り8日とかあって緊張感がある。実際全部ぶっ壊れたりしたときに復元に時間がかかるようだと困るが、有料でHDD送ってくれるfeatureもあるらしい。日本までも送ってくれるのかな…?
- ファイルの復元
- バックアップの頻度と世代管理
- マシンの最大CPU利用率
など色々設定できるようになっている。CPU利用率は上限80%までで設定されているが、確かにモニタリングしている様子では80%までしか使わないようである。と言うかずっと80%に貼りついているのでどうなのか。top
を見ても内訳はほぼすべてCrashPlanを動かしているJavaである。Java〜。こういう補助的なデーモンをJavaで書くのはどうなのかとか思ったりもするけど偏見かもしれない。
今もりもりバックアップをしていて、バックアップ時にはデータの暗号化かけたりもしているみたいだから、それで結構マシンパワー使うのかもしれないなーとも。バックアップが終わってからどうなるか様子を見たい。まあ無料期間は30日あるのである。
あと、CPUをたくさん食っているとは言っても、Webコンソールを使ったり、SSHで入ったりする分には特にストレス無く使えている。
自宅の回線とか
そういえば、自宅の回線を1ギガ契約に変更してた。元々100Mだったが夜中とか遅くなってストレスだったので、ギガに変更した。NTTに電話をしたら、マンションがギガに対応してなかったが、NTTの方から工事を打診してらったらOKだったのでギガにすることができた。Wifiでも5.2GHz帯で11nを使えるので下り100Mbpsとか出て良い。以前は夜になると1Mbps切ったりしてたしな…。
NTTの終端装置のPR-500MIがルーターも兼ねていて、Wifiもそれに専用のカード挿せば使えるという感じだったので、素直にそれを使うことにした。長年使った無線ルーターはお役御免となった。
元々使っていた無線ルーターは9年モノで嫁が実家で使っていたやつなので、嫁が「Quyoで供養してやりたい」とか言ってる。