凄く久々にブログを更新しますが、この間に色々問題が起きたのでその事についてまとめようと思います。
特に、この一年は何故かストレージ周りでトラブルが起きることが多く、とてもつらい感じでした…が、とりあえず収束したようなので書き出してみようと思います。
惨事その1 RAIDアレイ崩壊→VMストレージの死
事の発端はまずここからでした。去年2015年の6月頃に、まず1台ディスクが故障しました。故障したディスクは悪名高きST2000DM001です。(あとになって故障率の高さを知りましたが。7200.12くらいの頃はディスクロックというもの以外そこまで壊れた経験がなかったのでSeagateのディスクは大丈夫だろうと思いましたが、それが甘かったです…)
まあ、当時でも構築して2年くらいが経っていたので、そろそろディスクの1台くらい壊れても不思議ではないかなあと思い、手持ちのST2000DM001と交換し、再構築しました。
その時は特に問題がなかったのですが、更に2ヶ月後の8月に2台目のDM001が死にました。このときに手元にあったのがバックアップストレージに使っていたST2000DL003だったのですが、回転数が違うので新しいのを買わないとなあと1週間くらいRAIDがデグレッた状態で放置していたのですが、この一週間のうちに3台目のST2000DM001が死に、RAIDアレイが全損しました。
うっせやろと思いながらも、ghettoVCBにてバックアップのストレージに重要なマシンのコピーを取っていたので、ダメージは少なく、ここから戻しを行うことにしました。
しかし、ghettoVCBのような方法だと、vmdkの差分コピーとはならず、実行する度に全てのディスクをまるまるコピーすることになるので、TBクラスのディスクを定義しているとなると色々厳しくなります。
そのため、ある程度データが大きくなりそうなものについては、バックアップ対象外のVMとしてNFSサーバを作り、そこに置くようにしていました。そして、これが悲劇の元に…
惨事その2 オペミス
タイトルでネタバレしていますが、まず環境を簡単に説明します。
非常に雑な絵ですが、このような方法で/を含むsdaのイメージバックアップと、sdbに含まれるNFSの領域をsdcへコピーしていました。オレンジの円がVMホストからのSRP接続のデータストアで、青い円がVMゲストから別の物理NFSサーバ(10G接続)への接続です。同期方法は/はMondo backupによるイメージバックアップで、/exportは/export_backへrsyncでした。
ちなみに、NFSには内輪で使っていた諸々のMODデータやこのブログのデータが置いてありました。
プライマリのストレージに問題が起きた場合はvmxファイルなどが消えますが、その際には新規でVMを定義し直し、NFSからMondo backupで定期的に作成されるISOをマウントして復旧、その後/exportを/export_backから戻す、と言う想定でした。mondo自体の実績はあったのでまあ手間だけど問題ないだろうと言う判断でした。
直接NFSに/exportのコピー持てば良くないかと思うかもしれませんが、NFSサーバはメインで使っているNASなので、フルに同期するとその当時の容量的にぎりぎり収まるか何かあれば溢れるという状態だったため、容量的に余裕のあるghettoVCBのバックアップ先にもなっているセカンダリストレージサーバにSRPデータストアを作成していました。
環境の説明が終わったところで、本題に移ります。今回はプライマリストレージが死んだので、このような状態になりました。
そのため、プライマリストレージのディスクを新しく2本買い再構築したうえで、想定通り/nfsに取っていたISOイメージからまずVMの戻しを行いました。正確に言うと微妙に図とは違いますが、概要としてはこうなります。
その後、/が復旧したので、/exportの復旧を行うことにしました。が、ここでデータストアを間違えてセカンダリストレージに定義してしまいました。(あっ…)
あ、vmdkの置き先を間違えた、と気がついたので、再度ディスクの定義をしようと一旦間違えた方をけす事にしました。そして実際のオペレーションが下記です。
ミスに気がついたときの状態のイメージです。ご確認ください。
ええ、人は犯したミスの大きさ、そのミスが戻せないと分かるとほんとこんな感じになります。しかもたちの悪いことにディスクイメージ自体の削除を選んでしまったんですよね。バックアップがあるから大丈夫、という慢心の結果、そのバックアップを自らの手で消す、という愚行を行ってしまいました。これさえしていなければ何事もなかったというのに…。
SRPのエクスポートを一旦止めて、あれこれとディスクの復旧が出来ないかと試してみましたが、まあ無理でした。
バイナリレベルではいくつかのテキストが見つかりましたが、ある程度の大きさのファイルは断片化があり復旧は困難でした。
どうにか復旧できないかとあれこれ探した結果、物理サーバでブログを動かしていた頃のディスクがあったので、そこから何とか復旧できましたが、諸々のデータが1年分消えました。(前エントリが非常に古いのはそのせい)
その後、色々動いていないと不便なので結局プライマリのストレージは再度稼動させ、VM環境もどうにか以前の状態までは復旧させました。
ここまでで十分惨状ですが、このあともまだトラブルは続きました…(長くなったので後半へ)
[ 2 コメント ] ( 1194 回表示 ) | このエントリーのURL | ( 3 / 1736 ) | ツイート
ずいぶん前に貸与されてから塩漬けになっていたRB2011ですが、裏ルータ的な何かとしていざ使ってみたところ接続が不安定だった為メモしておきます。
結論から書くと、所謂MTU/MRU1454問題でした。まあこれだけ書けば分かる人には終了ですね。
RBの仕様は、PPPoEセッション上のMTU/MRUがデフォルトで1480で設定されるのですが、NTT網内のMTU/MRUが最大1454であるため、フラグメントが起きてしまうようなページを開いてしまうと、ページが不完全のまま表示されるかタイムアウトしてしまうのです。
具体的にはこのブログのTwitterプラグインで問題が起きます。なので、同様の問題があって検索した人がこのページを開けないという残念な問題が起きます。(ぇ もしかしたら不完全ながらも表示できるかもしれませんが。
このページをRB2011から別のPPPoEセッションを張りWANから参照してみた際のログですが、デフォルトの設定だと、以下のように、特定のファイルだけいつまでもファイルが降ってきません。
Pingなどが途切れることはなく、なおかつ問題ないページは問題なく表示されるのですが、一部の広告表示用Javascriptが挿入されているようなページだとタイムアウト待ちをするため、ブラウジングの際にページの表示速度が非常にストレスフルな表示速度になります。
内側のLinuxから行ったtracepathの結果やWebFigの表示結果を見る限りは、MTUの値は1480のデフォルトでも正しく1454で受け取るようなのですが、MRUの値は1480のままであり、これが問題になるようです。
解決するには、PPPoEインターフェースのMRUを変更します。
MTUは自動設定されますが、一応変えておいたほうが無難だと思われます。OK/Applyをクリックすることにより設定を反映しますが、その際にPPPoEを切ってから再度接続を行うため、ISPによってはIPが変わります。(OCNの環境だとIPが変わりました。)
変更後、見た限りWebページによって表示が遅い問題は解決しました。現在、2つのIFを束ねたBonding IF上に タグVLANを作成し、LANセグメントをいくつかとWANセグメントインターフェースを作成していますが、この構成でも問題なく動いています。
完全に接続ができないわけではなく、さらに回線速度測定ページなどでは問題なく速度が出てしまうため、この問題に気が付きませんでした。
悩んでいたところ解決の糸口を享受していただいた@neko6_tweetさんに感謝です。
しかし、1.6万前後でここまでVLANなどがいじれるルーターはなかなかないですね。ちらっと見たところポリシーベースルーティング(PBR)も当たり前のようにできるようですし、ネットワークにおける大体のやりたいことをどうにかする方法があるようです。これは魅力に取りつかれる人が多いのも納得です。
[ 1 コメント ] ( 1974 回表示 ) | このエントリーのURL | ( 3 / 2029 ) | ツイート
巷で話題のECS LivaをついIYHしてしまいました。秋葉原Buymoreの展示機を見てから、欲しいなと思っていつつも中々在庫がどこにも入ってこなかったのですが、仕事帰りに何となくドスパラを見たらあったのでつい…。
個人的に、何に使うかよりも、HWとしてどの程度使えるのか興味があったため、この評価ボード(違う)のレビューしてみます。画像の元ネタが一発で分かったような人には多分物足りないと思いますが。どうでも良いですが、元ネタは左手だったんですね。頭にあるイメージで右だと思って思いつきで突貫で作って、作ったあと気がつきました。ほんとどうでも良い。
思ったよりもハマりポイントが多かったため、まずはHWの部分です。
もっと読む...
[ コメントを書く ] ( 4535 回表示 ) | このエントリーのURL | ( 3.1 / 1826 ) | ツイート
某所にいたときに不毛な作業を少しでも楽にしようと足掻いた時に作ったゴミを置いておきます。たまにこれをベースに何かを作ったりするので主に自分のためのメモですが。
内容としては、Expectで複数サーバに対して同一コマンドをsuして実行するだけのゴミと複数のサーバから一か所にファイルをSCPで集めるか送るだけのゴミです。
もっと読む...
[ コメントを書く ] ( 2330 回表示 ) | このエントリーのURL | ( 3 / 1929 ) | ツイート
あけましておめでとうございました(過去形)。つかもう2月ですね。久しぶりの記事です。
今年第一の記事は、評価用のRB2011UiAS-RMを株式会社シー アイオープラスさんから貸していただいた(ありがとうございます!)ので、一部界隈でアツいRouterBoardについてファーストインプレッションと簡単なベンチマークをしてみました。
本来だと先先週の初めくらいには評価を終わらせようと思っていたのですが風邪引いたり忙しかったり現場が
もっと読む...
[ 2 コメント ] ( 5181 回表示 ) | このエントリーのURL | ( 3 / 1844 ) | ツイート
<<最初へ <戻る | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 進む> 最後へ>>