20-3

20-3
都は、それからどういう順序で、どうやって直していったのかはよく覚えていない。メトリックを足したり、引いたり、設計時点では止める必要のないと想定していたプレフィックスやタグを再配送ポイントで止めてみたり。そんなことをやって、最後に、各ルーターのWAN、LAN、両方のOSPFプロセスの再起動をやってみたら、なんとかループが止まった。それから疎通確認と通過経路確認をやり直して、全部OKとなるまで、1時間半以上かかった。データーセンターに申告してある、退館予定時間を超えるのは明らかだったので、都は受付棟へ行って、退館予定時間通り退館できないし、今日中に退館できるかどうかわからない旨伝えたが、口頭だけであっさりと了承された。データーセンター作業では、トラブルによる滞在延長は日常茶飯事なのだろう。
都が退館予定時間の延長を申告して戻ってきてから、北陸データーセンターの国内共有L2網の復旧を試した。これでルーティングがきちんと戻れば、もう一度断試験をしてみようと上野とメッセージを交わしていた。しかし、国内L2共有網にある国内拠点から、国際拠点へ連続pingを流しながら、閉塞していたインターフェイスを開放すると、本来であれば、連続pingは止まらないか、落ちたとしても一発程度なのだが、またpingが止まってしまい、それ以降も戻らない。都が自分で通過経路確認を取る前に、メッセージで上野から通過経路確認のログが送られてきた。またループしてしまっている。
「なんで?」
都は、ファンの音がけたたましくて、多少大きい声を出したところで通らないし、まして今このラックスペースにいるのは都だけなのをいいことに、泣き言を喚いた。文字通り泣きそうな声で。
都は再度コンフィグを確認したり、メトリックの足し引きや、止めるのが不要と想定していた、タグやプレフィックスなどをさらに止めたり、あるいは事前に止めると決めていたタグを許可したりと、北陸データーセンターの国内共有L2網のWANエッジルーター、専用L2網のWANエッジルーター、本社データーセンターの国内共有L2網のWANエッジルーターのメイン、バックアップ両機、専用L2網のWANエッジルーター、それら全てのWAN、LAN、OSPFプロセス間の再配送条件付けで、変更していった。
結果、ループは収まったが、今度は、意図通りの通過経路にならないプレフィックスが複数出て来てしまう。都は、専用L2網を接続した時に、ルートが想定通りにならなかったのと同じ事象だろうかと思って、その時にやったように、北陸データーセンター、本社データーセンターの専用L2網の、WANエッジルーターのLAN側OSPFプロセスを再起動した。すると、直った経路もあったが、直らない経路もあった。本来東京データーセンターを通ることになっている、国内拠点、国際拠点間の音声用プレフィックス同士の通信が、国際拠点から国内拠点への通信方向は設計通り東京データーセンター経由だけれど、国内拠点から国際拠点への通信方向は北陸データーセンター経由と、非対称ルーティングになってしまっている。
音声に影響の出る遅延が出ていないければ、通信は成り立つだろうが、これでは設計通りではないし、この設計の経路にしているのは、経路分散によるトラフィック量の分散だけが目的ではなく、優先制御を掛けている回線を通したいからなのだ。このメインの経路で断が起きて、バックアップ経路周りになっている時は、優先制御が効かないのは、以前からお客了承ずみの事項と聞いている。だから、通常運用時は設計通りの対称ルーティングにならなければならず、これはきちんと戻さないといけない。
原因は何かと考えるより前に都は、ひとまず東京データーセンターの、国内共有L2網側のOSPFプロセスを再起動してみる。すると、あっさり直った。この東京データセンターの、国内共有L2網側WANエッジルーターは、WAN側はOSPF、LAN側はiBGPで、iBGPの方が必ず勝つように、AD値を操作してある。これはもともとそういう設計、コンフィグになっていて、都はそのまま踏襲しただけだ。そのため、必ずこのルーターではiBGP側の方がルートが強いし、音声プレフィックスを国内網へ流し込む時は、この東京データセンターの国内共有L2網側のWANエッジルーターのメイン機からのものが、一番強いメトリックになるようになっている。2番目に強いメトリックだって、この東京データーセンターの国内共有L2網WANエッジルーターのバックアップ機が、iBGPからOSPFへ再配送するものだ。だから、どこかで音声プレフィックスがループし、意図しない強いメトリックがついて、国内共有L2網へ流れている、ということなのだが、都はこの時全くそこまで頭が回らなかった。とにかく戻さないと。OSPFプロセスの再起動で戻るならそれで良い。原因はひとまず分からなくたってしょうがない。それだけだった。
寒さで体も足も震えてしまっている。膝ががくがくいっている。しかし、自分の責任区分であるルーターで問題が起こっているのだから、とても「暖を取りに」離れるわけにはいかない。そもそも何故都の責任になっているのか、と考えても良かったはずだが、ただパニックになっていたし、起こっている問題をなんと解決しないと、と夢中になってもいたから、そんなそもそも論は頭に浮かばなかった。
それから数回、北陸データーセンターの国内共有L2網の断試験をやり直した。ルーティングループによる不達は発生しなくなったものの、復旧すると想定通りの通過経路にならないプレフィックスが発生してしまい、それを微調整したり、結局OSPFのプロセス再起動で元に戻したりしたが、根本的な解決には至らず、23時半になってしまった。北陸データーセンターに入っている上野と、ベンダー、それにお客は、もうデーターセンターを出ないと、予約してあるホテルのチェクイン締め切り時間にホテルへ到着できないという。都は、この時はまだこの北陸データーセンターへ行ったことがなかったが、かなり辺鄙といって良い土地にあり、ホテルがあるような大きな街へは、現地の運転本数の少ないローカル路線を乗り継ぐか、タクシーを呼ぶしかない。この時間だと、上野たちはタクシーを呼んで、1時間近くかけて大きな街へ戻らないといけないのは、都は後で知った。
現在はルーティングは落ち着いている、お客も週明けからの業務利用にはひとまず問題ないだろうと受け入れた、とのことで、この断を発生させたり、戻したりするとルーティングがおかしくなる事象については後日再検討となり、北陸データーセンター組や本社待機のお客は解散となった。上野は都に、もう撤収して良いが、どうする、とメッセージで聞いてきた。都は諦めたって良かったはずだが、もう少しやっていきたい、と伝えてしまった。何となく巻き込まれてしまった工事だが、関わった以上、自分の力で何とかしたい。そう素直に思っていた。明日朝まではお客のグローバル拠点全体でメンテナンスウィンドウをとっているそうなので、北陸データーセンターの国内共有L2網の断試験は朝までであれば何度やって構わないということだった。最終的は、現時点の「正常な」状態に戻しておいてくれれば良い、と言う。つまり、完全に直ることは、上野も全く期待していないが、もうちょっと頑張ってみてくれ、ということだ。
ここで、今の状態以上に悪くなったらどうするんだ、やめてくれ、と言われないのは、厳しい現場をたくさん乗り越えてきて、この程度どうってことないという、上野の胆力なのか、お客と良好な関係からくる、そもそも急すぎる設計変更が原因にあるのだから、この結果は致し方ない、という諦めなのか。それとも、都がこの時点ですでに2年ほど、上野の同部署の社員がPMを務める、特殊体制をとっているプロジェクトで、設計的にもかなり混み入ったネットワークのSEを務めているのを知っているから、それなりに信用してもらえているのか。
都はひとまず、全ルーターの運用中のコンフィグや必要なログ、また疎通や通過経路確認に使うマクロを全て回して、一気にログを取った。取得している間、もう寒くて体全体がガタガタ震えてしまうくらいだったが、全てのマクロが回り切るのを待った。このログを使って、休憩スペースでじっくり考えることにした。ラックスペースの前室で、脱いだ靴下はもう自分が履いていた安全サンダルに差し込んでしまって、ジーンズの裾も上げず、ビーチサンダルをつっかけ、休憩スペースへ出た。休憩スペースへ出てもまだ体中が寒く、とても冬物のパーカーは脱げなかった。猛烈なファンの音は、二重の鉄の扉の向こうで、とても静かに感じる。それが唯一の慰めにもなった。
休憩スペースのテーブルに作業用PCを載せ、ビーチサンダルを脱いで裸足になり、コンフィグやログを眺めていく。まずは北陸データーセンターの三つのルーターから、コンフィグ、ログを見ていくが、全くおかしなところはないように見受けられた。都は思わず頬杖をついて、左指でテーブルを叩いてみる。既に14時間以上データーセンターに籠っていることになる。頭も体も疲れているし、きちんと確認できているのかどうかも不安だ。
都はマウスを休憩スペースまで持ってきたのに、使いにくいタッチパッドでファイルを選択して、今度は本社の3台のルータを見ていった。こっちもどうせおかしなところはないだろう、と思って、頬杖を解かず見始めた。専用L2網のWANエッジルーターのコンフィグを確認していると、OSPFのLAN側プロセスから、WAN側プロセスへ再配送する、条件付けのコンフィグの、途中のシーケンスの一つで、マッチ条件にプレフィックスリストを指定しているところへ、プレフィックスリストという名前の存在しないプレフィックスリストと、そのあとに、きちんと存在するプレフィックスリスト名を指定してしまっていることを発見した。これでは、実際は存在しない、空のプレフィックスリストという名前のプレフィックスリストを指定してしまっており、全てにマッチするという条件になってしまっている。そうなると、このシーケンス以降のシーケンスは全く意味がなくなってしまう。テキストファイルやスプレッドシート上などで、最初のシーケンスを、コピー・アンド・ペーストで必要なシーケンス分複製してから、シーケンスの番号と中身だけを変えてコンフィグを作っていく時にやりがちなミスだ。
いつもの都なら、慌てて修正用のコンフィグを書いて、すぐにコンフィグし直すところだが、現時点でルーティングは安定しているし、まして今都は休憩スペースにいて、作業用PCは完全にスタンドアローン状態で、どのネットワークにも繋がってもいない。それに、本社データーセンターの、国内共有L2網のメイン、バックアップルーターや、東京データセンターの各ルーターのコンフィグも全部チェックして、他にも怪しいところがあれば、それも直す必要だってある。
自分の間違いは、いち早く挽回したい、修正したい、と思うところが都にはあったけれど、今日はそうは思わなかったのは、この修正だけで収まってくれるトラブルとは思えなくて、きちんと全部見てからにするべきだと思ったのか、それとももう疲れてしまっているから、何度もラックスペースと休憩スペースを行ったり来たりするのが嫌になっていたからなのか、自分でもよくわからなかった。休憩ペースにいても、冬物のパーカーの袖すらまくりたくない、ジーンズの裾も伸ばしたままでいるくらい、すっかり身体が冷えてしまって、出来るだけラックスペースへ戻りたくなかったのもあったかもしれない。
本社の専用L2網の、WANエッジルーターの修正用スクリプトを作り終わってから、本社の国内共有L2網のWANエッジルーターのメイン側をチェックしている時に、作業用PCの電源が残りがわずかになっていることに気がつき、結局電源アダプターとケーブルを取りに、急いで一回ラックスペースへ戻らないといけなかった。
東京データーセンターの各ルーターのコンフィグやログまでチェックし終わったが、結局発見したのは、本社の専用L2網のWANエッジルーターのコンフィグミスだけで、あとは特におかしな挙動を引き起こしていると思われるような、コンフィグミスのようなものはなかった。いや、厳密に言えば、もしかしたら変更した方がいいかもしれない、と思ったところはいくつもある。既存踏襲でそのままにしているものも多い。しかし、そのコンフィグミスのように、明らかに悪影響を与えている、と断言できるようなものがなかった。
都は、ラックスペースへ、作業用PC、マウス、電源アダプターとケーブルを持って戻り、本社の専用L2網の、WANエッジルーターのコンフィグミスを直し、一旦そのルーターのOSPFプロセスをWAN側もLAN側も再起動し、疎通確認と、通過経路確認をとった。想定通りの結果で問題はない。都は一旦大きく溜息をついた。何かと思ったら、自分のコンフィグミスで振り回されていたのかと、自分の間抜けさに呆れると同時に、全く原因がわからないと思っていたトラブルも、結局コンフィグミスだったのかという、安堵のようなものすらあった。これが原因であれば、あまりにも急にコンフィグを作らされたから、さらには、あまりにも直前で設計変更があったから、ということを、ミスを誘引した理由として挙げてもおかしくはないだろう。都は、断試験で確認する前から、そんな風に安易に思ってしまっていた。
そしてもう一度一人で、北陸データーセンターの、国内共有L2網の断試験を実施した。断試験の方は問題なかった。しかし、復旧試験をしてみると、状況は大して改善していないことがわかった。北陸データーセンターと国内データーセンター間の通信が、国内共有L2網周りに経路が変わってしまうという問題が出たり、上野たちとやっていた時と同様に、音声プレフィックス間の通信が、国内から国際への方向と、国際から国内への方向とで非対称になってしまったりしてしまう。専用L2網のWANエッジルーターや、東京データーセンターの国内共有網WANエッジルーターのOSPFプロセスを再起動すれば、設計通りの経路にはなる。しかし結局、都のコンフィグミスを直しただけでは、全てが改善するわけでもなく、そればかりか復旧時に何故か経路が逆になってしまうものまで出てきてしまった。都は、ショックでもあったし、もう何が何だかわからなくて、投げ出してしまいたかった。上野から退館許可は出ているのだ。
しかしそれでも再度、全ルーターのログを取り、チェックし直してみる。寒さに耐えられなくなるまではラックスペース内でチェックし、耐えられなくなると休憩スペースへ作業用PCを持って出て、チェックを続ける。そして、ここを変えてみれば良いんじゃないか、と思ったところがあれば、変えてみて、断試験と復旧試験をして、ダメであれば、またここを変えれば良いかもしれないと思うところを変更し、断試験と復旧試験をして、と数回繰り返したが、問題は解決しなかった。変更した箇所によっては、状況がさらに悪化さえした。
都は一旦頭を切り替えようと、作業を中断して外へ出た。既に空は白々としてきていて、スズメの鳴き声があちこちから聞こえてくる。腕時計をまだつけたままだったから、右手の甲まで下がっている、冬物のパーカーの袖をめくってから、右手首を返すと、4時半を回っていた。もう晩夏だからなのか、今日たまたまなのか、今朝は気温が少し低い。冬物のパーカーを被っていてもちょうど良いくらいで、延ばしたジーンズの裾から覗くビーチサンダルの素足が少し寒いと感じる。敷地内のベンチの近くにある自販機で缶のカフェオレを買って、ベンチに腰掛け、栓を開ける。深爪なくらい短くしている爪だから、都は缶の栓を開けるのにいつも苦労する。背もたれに背中を預け、すするように缶のカフェオレを飲む。冷たくて、さらに身体が冷えてしまいそうだ。しかし、普段都には甘すぎる缶のカフェオレの甘さは、今はちょうど良かった。
この、いちいちOSPFプロセスを再起動しないと、ルーティングが想定通りに戻らない、という事象は、一体どこをどうすれば収まるのだろう。頭の中で、あそこだろうか、ここだろうかと、考えるが、今までとった措置と大して代わり映えのしないものしか思いつかない。根本的な問題が何か潜んでいるのか。そうだとしたら、一体何なのか。何かバグでもあるのだろうか。都は、缶のカフェオレを飲み干すと、空き缶を空き缶入れへ放り投げて、空き缶同士がぶつかる音が、データーセンターの棟と棟の間にちょっとだけこだまする中を歩いて棟へ戻り、棟内の休憩スペースで再度ログを見直す。さっきから何度かやっている対策とさほど変わらない、再配送時に当てるメトリック値を操作してみる、止めていなかったタグを止めてみる、などをしつこくやってみることにする。コンフィグを変更するスクリプトを書いたら、ラックスペースへ戻る。
結局、今の都が思いつく限りの、何かをやってみたところで、完全な解決には至らなかった。北陸データーセンターの国内共有L2網の断試験からの復旧時に、経路がおかしくなってしまい、設計通りの経路にするには、北陸データーセンター、東京データセンターの専用L2網のWANエッジルーターのLAN側OSPFプロセスを再起動しないと直らない、というところまで収めた。途中、もっと複数のプロセスを再起動しないといけない時期もあった。
「もうだめ…。わかんない…。」
都は、とうとう声に出してしまった。右手の甲まで降りているパーカーの袖をまくって、手首を返した。6時45分を回っていた。眠いのか、目が冴えてしまっているのかすらよくわからない。疲れている、体がだるい、というよりも、わからない、ということが、重たいフード付きのコートのように頭と体にへばりついているようだ。都は、ここで諦めることを決めた。お客のメンテナンスウィンドウも、もう終わりだ。
作業用PCを片付け、借りていたLANケーブル、延長電源ケーブルをラックの空き棚へ戻し、壁に立てかけておいた、ラックの扉を設置し直す。最後にラックの鍵を閉めて、都は棟を出た。既にすっかり日は出ているはずだが、曇っているせいだろうか、冬物のパーカーを着ていても、暑くなかった。むしろちょうどいいくらいだ。空気が冷えている気がする。本当に気温が今日は低いようだ。裸足の足の指が寒い。受付棟で、退館手続きをする。問題を結局解決できず終わったことの未完結感と、ひとまずはうちへ帰ることができる安堵感とが同時に襲う中、データーセンターを後にした。長い作業になると、今日中に家に帰れるのか、とか考えたりするものだが、この工事中、そんなことは一度も考えなかった。トラブルになってからずっと、どうすれば良いんだ、どうすれば直るんだと必死だった。
日曜の朝の駅は空いていた。徹夜明け独特の気怠さはあるが、座れた電車の座席の角で、壁に寄りかかり目を閉じてみても、全く眠ることが出来なかった。自宅の最寄駅で降りると、徹夜明けの体のだるさだけがひどく、こういう一晩かけた工事明けの、終わった、という解放感は全くない。眠いはずなのに目が何か機械のようなもので無理やり開かされているような感覚もある。天気が曇りで良かった。これで晴れていたら、朝の日差しと暑さとは、ただただ鬱陶しいものでしかなかっただろう。
自宅へ帰って、熱いシャワーをいっぱい浴びる。気温が低いせいだろう、クーラーをつける必要はなく、窓を開けて外気を入れると、シャワーで火照った体にはちょうど良かった。体がちゃんと乾ききっていないうちから、スノコの上に敷いたマットレスに、敷きっぱなしの敷布団の上へバスタオルを広げて、裸のまま寝転んだ。髪の毛乾かさないといけないし、肌の手入れもしないといけない。特に徹夜明けだ、肌の手入れをちゃんとやらないと。眠いから目を閉じてみるけれど、眠れない。
すると、キッチンカウンターのテーブルに捨てるように置いておいた、スマートフォンが振動した。都は面倒臭そうに起き上がって、スマートフォンをチェックする。ついでだから、バスタオルを頭からかぶって、左手でバスタオルをがしがしとやって、髪の毛の水気を取りながら、スマートフォンを右手だけで操作する。上野からSMSだった。都は、退館する時に、上野に指示を受けていた通り、上野の個人の携帯電話番号へ、退館する旨と、現状をSMSで送っておいた。文字数制限のため、4、5回くらいに分けて内容を送っていた。上野からは労いの言葉と、現状は上野やお客たちが退館した状況と変わりない、ということで良いか聞いてきた。実際は少し改善しているが、結局断から復旧した時、専用L2網のWANエッジルーターのOSPFプロセスの再起動をしないと、ルーティングが元に戻らない、という事象は残ったままだということを伝えた。
都が両手を使ってバスタオルで頭をがしがしと水気を取っていると、上野から返信がきて、再度労をねぎらう言葉と、また来週考えよう、という言葉で締められていた。お客はひとまず納得しているのか、とか、ひとまずこれでおしまいで良いのか、とかは聞けなかった。この上野のメッセージで、この長い工事は終了だ。あとはもう、正式にSEをアサインして、そのSEにきちんと時間をかけて設計からやってもらえれば良い。そんな風に都は思うと、急に緊張が解けてくるような気がした。それと同時に、これはもう一から設計をじっくり見直して、環境を作り一から検証して、修正設計を自分でやりたい。そんな思いがふつふつと湧いてきてもいた。しかし、一体根本原因はなんだというのだ。一から検証すれば、本当にそれが見えてくるのだろうか。
いや、20時間以上もデータセンターに籠って、断試験やコンフィグ修正を、十数回以上繰り返しても、問題を直せなかったのだ。流石に上野も、正式なSEを、都とは違う人間をアサインするだろう。そもそも何となく、工事直前に都に頼んだのが間違いだったのだ。都は、そう考えると急に眠たくなってきた。落ちてしまう前に、髪を乾かして、肌の手入れをしてしまわないといけない。都は、何とかそのまま布団に寝転がりたい誘惑に打ち勝って、洗面台へ向かった。