Slashdotダウン フルストーリー日本語版
タレコミ by nidak
nidak 曰く、
ネットワークの知識もほとんどないし、間違っている部分も多いかもしれないですが、slashdotがダウンした記事を訳してみました。
-------訳------------
最初の予兆は土曜日の午前2時(東海岸時)頃に、ページ読み込みのスローダウンの形として何となくあらわれた。午前7時にはいわゆる単純なデータベースの再起動で直せる問題じゃないってことがはっきりした。ネットワーク技師連中のポケベルに通達がいったが、返事がない。やばいよ。
あいにく技師達の手が足りない状況だった。一番知識があった奴は友人と一緒に新しい仕事について辞めたばかりだったし、二番目の奴は病気で病院に行っている最中、三番目は携帯電話を台所に置きっぱなしで、奴のベッドルームからは聞こえない始末、四番目は携帯のバッテリーが無い状態だった。それはエラーの度重なる(自分に降り掛かった時には)かなりむかつくコメディーだった。ネットワークオペレーター(ネットオプ)達は「誰もいなかった」状態なわけだ。
Dave OlszewskiはOSDNのプログラマで、実際に我々のネットオプとしてスタッフに加わっているわけでも、設備のセットアップなどの訓練を受けたわけでもないのだけど、事態が発生した時にIRCしている最中であった。我々のサーバーの詰ったExodusの建物のあるマサチューセッツのWalthamからあまり離れていないところに住んでいる彼は、知らせを聞き急いで飛んでいった。
我々がベッドから引きずり出したプログラマリーダーのKurt Grayも彼の後にあまり遅れずに続く。Hemosと他のメンバー達もその頃には目が覚めていて、SlashdotだけでなくNewsForge、Freshmeat、OSDN.com、ThinkGeek、そしてQuestionExchangeまでもが、われわれの古き(でもあまり良く知られていない)MediaBuilderとAnmationFactoryと一緒に心中していることに大慌てだった。
これはKurtのExdousでの現場レポートだ:
----------レポート開始-------------
Exodusに歩いて入っていった分には別段危害を加えてくるような雰囲気はなかった。だけどどれが何をしているのかすべてを理解しようとしたり、どこにどんな風にワイヤーが走っているのかを確認しようとすることは、一時間以内にあなたを狂わせるに十分だ。あなたはナイスで清潔な、エアコンの利いたあまり心地よくない場所に150もの電源の入ったVAとその他の様々なサーバーが一緒に歌っている場所に突っ立っているのだから。ドアでお出迎えしてくれるのは我々のCisico6509である“Big Gay Al”(訳注:分からない人はSouthParkを見よう)だ。こいつは2つのredundantルーターモジュール:KyleとStan(訳注:分からない人はSouthParkを見よう)を含んでいる。もしStanが死んだ場合はKyleが指揮をとるように出来ていて、その逆も可能だ。
部屋の向こうには2つのロードバランスをとるArrowpoint CS800スイッチ群。スペアとして利用されるホットな一つはアイドル状態で停止中だが、もう一個の方はほとんどのOSDNのサイトのためにロードバランスをとっている。Cisco6509と、このArrowpointの間にはFreeBSD Firewireがipwfを使いみんなをpingを使いいらつかせようとする輩をブロックするためにブリッジングされている。
「そちらのサイトにpingが通らないんですけど。」
「ああ、知ってるよ。」
事態を興味深い物にすべく、我々は6509に、Foundry Fast Iron 2とCisco 3500にカスケーディングすることで、ポートを加えてみた。山積みされるプリントアウトとあらゆる関係のドキュメント、図とスプレッドシート等がこの部屋にあるすべてのIPとマシンを管理する助けになればと思っているのだが、未だに自分自身でこれらのネットワークを構築したり(実際にこれを一人でやった奴は、この週末休みでいなかった)、サイトがダウンしたまま時間が刻一刻と消費される中、あなたの前に何の解決策もやって来ない全てのプレッシャーに耐えながら、とっても喜びに満ちた幸運な夜を問題の原因解明に過ごさない限り、事態が明るくなるようなことはないと思われた。
ここでネットワークのことを知っている人は、何故我々が上で述べたこれらの製品の代わりにWhizBang 9000 SuperRouterのような、あなた方に何の苦痛も感じさせない、時に皿洗いをしてくれ、時にあなたの料理まで美味しくしてくれるようなものを使わないことに説明を要求したくなることでしょう。ここで言えることは、私がネットワークデザイナーじゃないってことです。私がこれらの製品を選んだわけじゃないですし、設定を行ったわけでもありません。でも、自分が何をやっているか分かっている内は、これらがとても優れたハードであることは教わっています。ただ、昔CowboyNealが「君は僕の知っているCisicoの知識のすべてを手にすることができる、それを指パッチにいれて捨てちまうんだ。」っていってました。
さてDavaが様子を見ることにしました。Gatewayにpingが通りません。どこにもpingが通りません。firewallのを再起動。助けになりません。まだ外にpingは通りません。OK、Arrawpointを再起動してみることにします。何も変わりません。財布を抱えて6509を再起動、、、再起動、、、再起動、、、何も変わりません。これは良くないです。
「ねえ、firewallを再起動した?」とDaveに聞きます。
「全部再起動した。」と、彼。「原因はCiscoだと思う。」
それで、我々はCisco 6509にconsoleしてみます。なんて酷い有り様でしょう。我々の両方がどのスイッチがどんな風に設定され、何をするのか分からない状態です。我々は何故consoleがStanに接続できてKyleに接続できないのかも全く分かりません。(実際スタンバイモジュールがアクティヴなconsoleを持っていなかったということが判明しましたが、それは正常です。)
------------レポート終了--------------
みんなに握手しまくり。一方11:40am頃、Yazz Atlasが目を覚まし、携帯にバッテリーを接続した。留守電を聞き、服を被り、Exodusに急いだ。
Yazz曰く「私がExodusについた時にはKurtとDaveは6509を戻すため、全てのコンビネーションを試しているところだった。ただ、彼等も私もCiscoのパスワードを知らなかった。」義務をおっているべきオペーレータ(携帯電話が聞こえないでいる奴)は、今もってどこにいるのか見つからないでいた。彼等は病院に行っている同僚に電話をかけCiscoのパスワードを聞き出した。
「しかし、」Yazz曰く「Ciscoが再起動されたってことは、そこに見るべきログは残っていないって事だ。我々は内部にある何かにpingを通すことができたが、全てにpingが通るわけではなかった。幾つかのVLANからはゲートウェイにpingが通ったが、他からは無理だった。外からは6509が抱えているIPの一つにpingが通ったが、他には無理だった。内部からは外からpingできるIPにpingが通らなかった。私達がpingできる物は、他からは出来ない、、、とっても腹が立つ。」
Kurtのレポートに戻る。
---------------レポート開始--------------
何時間もネットワークのデバッグは3:00AM迄続いた。そこで我々はCiscoに助けを求めた。彼等は我々のスイッチ設定を見て、検証する機会が来るまでサポートすることはできなかった。たっぷり時間を過ごした。家に帰ってベッドで一眠りして夜を明かすことにした。
次の日の朝、Exodusに戻ったが、事態は何もかわっていなかった。ネットワークは外の世界に接続不能だ。私はこの朝の少ない数時間の間にCisco 6509が意識を持ち自分の設定を直してくれたり、もしくは友好的ハッカーがクラックして問題を直してくれたり、もしかして光の玉がどこから旅してきて悪い場所を直し、心臓が停止した患者に救急のやるような心臓に電気を流すパッドのようなショックで我々のサーバーも復活させてくれれば、、、「奇跡だ!!!」等と期待したのだが、そんな好運はなかった。
それで我々はCiscoのテックサポートに電話したわけだ。今思えば、もっと早くにこうしておけば良かったと願う。最初に驚かされたのは、かなり素早くCiscoの技師とお話しできたことだ。フリーダイヤルに電話して1分以内に「私のコンピュータでは問題ありませんよ?」なんて言わない良く出来たテックサポートの人間に繋がるなんていう事は、技術系に携わる人々にとってどれほどショックな出来事かということをCiscoは理解しているのだろうか?彼等は、大抵のテックサポートが900で始まる有料電話で、始めに個人情報とプロダクトのライセンスナンバーを聞かれ、その後何も考えていないロボットにより何時間も待たされた挙げ句、Los Angels バス情報局スイッチボードにまわされるなんてことを経験している人にとって、10分以上も待たされないで人間とおしゃべりしちゃうのは、余りにショックで下手すると死んじゃうかもしれないってことを分かっているのかしら?と質問したくなる。答えは明らかにNoだ。
さて、私はCiscoのサポート技師 Scotにtelnetして設定(config)を見てくれと頼んだ。私は彼が「そんなことは出来ません。」といって、自分の母親に電話をかけもし彼女がそこにいたらスイッチにログインするように頼むように。と言い、私があまりIOSについての経験を持っていない上、VLAN4上のHSRP設定について何も知らずにテックサポートに電話するような馬鹿と見下すと、たかをくっていたのだが、その代わりに彼は「OK、ログインパスワードはなんですか?」と来た。信じられん、、、きっと間違い電話したに違いないよ。彼、もしかして今からスイッチにログインして問題解決してくれようとしているわけ?まじ?
さて、彼はスイッチにログインしたわけだけど、そこで我々がどの様に設定をしているのかを見て、気分悪く、また恐ろしくなったらしい。私は彼がとても正しいと思う。そこで彼に聞いてみた「えーと、設定全部やってもらえますかね?」私は彼が「いや、これはあなたの設備ですので、あなたが自分で行って下さい。」と言うと思ったのだが、彼はそう言わなかった。「もちろん。設定(config)パスワードはなんですか?」あんたマジで嘘でしょ!おれ絶対間違い電話してるよ、、、こんなのテックサポートじゃないよ、フリーダイヤルで相手と話している間にサポートがルーターのセットアップを実際にやってくれるなんて、、、こんなの現実じゃない。
彼はスイッチの設定に入り、我々の仲間が数カ月前注意してくれたことの全てを我々に指摘してくれた。彼は、これは間違いであるといい、こんな風にすべきではないことを伝えた。「なら、変えて下さい。もし面倒でなければ。」と私。「スイッチ壊れ。私間抜け。あなた直す。」、、、暫くした後Scottは幾つかの変更をundoしたくなった。彼はスイッチをバウンスさせ、スタートアップ設定をコピー、、、ランニング設定をコピー、、、スイッチは自分自身をリセットし、emailが動き出し、私のInboxに流れ出す、そして急に私はすべてのサイトにping出来るようになった。オンラインに戻った!!すべてが戻った!!気味が悪い。
OK、すべては問題なくなった、しかし、Scottはまだ私達のスイッチ設定に脅えていた。すぐに私のもとに、もう一人のCisicoのいけてる奴:Barnabyから連絡があった。彼もたった今、我々のスイッチ設定を見てびっくらこいたそうだ。彼は私にスイッチのアップグレードとクリーンアップを早速実行するように促した。「今夜はダメよ。」と彼に言った。「もう燃え尽きたし、何人かのネットワーク担当の連中とこれ以上何かする前に、話し合わないといけないから。」
---------レポート終了-----------
次の日の月曜日、KurtはExodusのネットワーク技師達に何故我々のuplinkの設定がCiscoの連中にとって問題有りとされたのか話した。Exodusから答えが得られたり、またCiscoのサポートに走り出す代わりにExodusの技師とCiscoの技師達が直接これを解決し合うことになった。彼はExodusのメンバーとCiscoのBarnabyを引き合わせた。そしてKurtが言うには「奴らはVLANに関するエイリアンのようなコードとか、スタンバイIPとかHSRPとかマルチホーミング、等等について話し合い、ある合意に達した:我々のスイッチ設定はぐちゃぐちゃだ、と。ただ、少なくともBarnabyは設定がどんな風になされるべきか分かっていたみたいだし、Exodusの連中も彼に同意した。」とのこと。
火曜日の(ちょっとした)アクセス不能に移る前に、ここにちょっとしたYazzのメモがある。
----------メモスタート-------------
カードの一つが悪くなっても、両方がちゃんと設定されていれば、そんなに問題じゃない。設定では最初のカードがくたばった場合、もう一方に切り替わるようになってるし、実際にそうなったけど、切り換えに必要な情報全部が伝わらなかった。言葉を変えれば、それは設定ミスだった。
Exodusは6509がエラーを起こした際に修復させる設定を本当のところしっかりセットアップしていなかった。それがCiscoの連中が基本的に言っていることであって、Exodusの奴らはこのタイプのCiscoのセットアップをもうサポートしていなかった。半分のVLANはたった一つのユニット上にしかストアされていなかったし、残り半分はもう一方に乗っていた。そこで一方が死ぬと、それはフルセットアップの半分の情報しかないため、VLANがそこにあるものだと思っている情報が見つからず、上手くルーティングしない。面白い。
-----------メモエンド----------------
火曜日はルーターの再設定の日だった。それは最初5分程度のダウンで完了すべきものだったので特にそれが起こることを皆に知らせるべき物でもないと思っていた。どうして、アクセス数の少ない真夜中ではなく、真昼のど真ん中に行ったかといえば、なにか不味いことが起こった時に、ExodusやCiscoの連中がすぐに気付き助けてくれるからだ。そしてこれはとっても良い選択だったことになった。Kurtがこの話について語ってくれる:
-----------Kurtの話-----------
火曜日11:00am。我々はサーバーの部屋に戻る。Barnabyはスイッチにログインしたままで、私と携帯ごしに話せる状態にあって(5分ごとに携帯が切れ、私の今日という日はとっても挑戦しがいのある物になった)、Cisco 6509のfirmwareのアップデートを手伝っていてくれた。その後、彼が設定をクリーンアップする予定だ。最初はまずスイッチの側(スイッチから3ステップ以内の場所にないといけない、TFTPはそれ以上離れると働かない)にあるTFTPサーバーにfirmwareのパッチをあてがうことだ。Yazzがそれを行った。そこからBarnabyがfirmwareにパッチを当て、私にスイッチを再起動させる、その後約5分間我々はダウンする予定だった。不幸なことに5分は2時間になったのだけど。
再起動が完了後、我々のネットワークはまた接続不能に陥った。土曜日の事態再来だが、今度はCiscoの代表が電話越しにいてくれ、こいつを解決に導いてくれた。部屋の中のケーブルを追跡し、すべてのコーナーのMatrixにpingを飛ばす。BarnabyはArrowpointの技師Jimを捕まえArrowpointを調べさせた。でも、これはテックサポートだよ?JimがArrowpointにログインしてデバックしてくれるわけなんてないだろ?そう思ったら甘い、これはCiscoのテックサポート:Jimは我々のArrowpointにログインし、Barnabyと一緒に我々のネットワークのパケットトレースとデバッグをやってくれました。 しばらくの間、我々はfirewallが我々を疎外しないようにクロスオーバーケーブルをしいてたのですが、ダメです。何の助けにもなりません。 BarnabyとJimはハードウェアアドレスとIPアドレスをマッピングしそれぞれのパケットの動きを掴もうとしました。最終的にYazzと私は6509をカスケーディングオフしている小さなCisco 3500が座っているを見つめることになります(この文、訳せへん)。これって繋がってるの?我々が6509と繋がっている場所のリンクライトを見ると、点灯していません。「あー、Barnaby、、、モジュール2のポート1をチェックして見てくれない?」
「待ってくれ。」彼は電話でいいます。そしたらライトが緑色に点灯し、その数秒後ルーター達は自分達の問題を修復し、私達をオンラインに戻してくれました。すべてがオンラインに戻ったのです。今回は我々が気にも留めずにいたこの小さなスイッチの小さなインターフェイスが問題だったのです。ネットワークのドキュメントにでっかく注意書きしておいて下さい。
私達がオンラインに戻った後、Barnabyはしっかり我々のスイッチをクリーンアップして設定を施し、推奨されるべき設定方法で、安心で安定なコネクションを確保してくれたのでした。
-------------Kurtの話エンド-------------
これはOSDNにとって良くない週だった。でも我々は我々が完璧だと振る舞うよりも、あなた方にこの不祥事の全てを知らせた方が良いと思った。少なくとも、この経験から多くのことを学んだ。下手に解決しようとがんばるよりも、スペシャリストに助けを求めるべきだし、良いテックサポートというのがどれ程貴重かというのも。他に何もないならば、これが我々と同じミスをしないように他の人々の助けになればと思う。もう二度と同じ過ちはおかさないぞ!