こちらは 本番環境でやらかしちゃった人 Advent Calendar 2021の 23日目。今日は、わたしがゆかちゃんに懺悔を行う日です。
懺悔の前に、Perfume のかしゆかことゆかちゃん誕生日おめでとうワーイヽ(゚∀゚)メ(゚∀゚)メ(゚∀゚)ノワーイ
めでたい日に懺悔するとか、自分のクレイジーさが大好きです。
と思って、とてもたくさんのネタを準備してきたのですが、いずれも前職に関わるもので笑えなかったり、人によっては怒られそうな内容だったりするので、ちょっと別路線で行きます。ごめんなさい。
とは言え、どっかで懺悔したいので、誰か話を聞きに来て下さい。
デフォルトだからって設計しないで済むわけではない
初めてだったんだからと許して欲しいタイプなんですが。初めてSANを構成した時の話です。その SANスイッチはデフォルトの定義が FC-AL だったんです。p2pも指定できたんですが、なんか設定が面倒だったので。デフォルトだし、こっちが推奨だろうという若気の至りがありました。
冗長化で 2台構成だったんですけど、覚えてないんだけど Loop-id 設定するだけで簡単に実装できた記憶があるんですよね。まぁとにかく ID 指定すればオッケーで楽々ですませたんです。どうせサーバ2台とストレージ1台という構成で、増える要素も予定もなかったから。
発生する障害
もうそんなサーバを作ったことも忘れて、運用も他のメンバーになったころ。その運用メンバーから連絡が来ました。
「SANスイッチ壊れたから新しいものと入れ替えたいんだけど、設定がわからない」
OKOK。Loop-IDの情報くらいはあるよな。それを設定しておいてくれ。
「そんなものを設定するところはない」
...?
「そもそも構成なに?設計書とか設定残ってないの意味不明すぎる」
いやいや、Loop-ID の情報残ってるやんけ。他はデフォルトだぞ? そこしか変更してない。
どうやっても動かないし、交換すると、なんと「サーバが停止する」。
そう、なんとなくお分かりかと思いますが、なんとデフォルトの構成が p2pになったんですね。firmwareが上がったから。だから設定項目もないし、そもそも FC-AL なんて設定する人がいないから、その考えがみんなになかったんですよね。「Arbitrated Loop って構成になってるはずなんだけど」って言っても「なんですか、それ」みたいになる。そう、時も過ぎて時代はp2pだったのだ!(FC-AL一強なんて時代はなかったと思うけど)
ということで、なんやかんやで、運用メンバーたちに謝り倒してなんとかしてもらいました。
歯止め
そう、設計は正しく。設定も正しく。デフォルトだから良いよね、ではなく。なぜこの値でいいのか。デフォルト値であろうがその設定値は正しく残しておきましょうと言うことになりました。
というか、ホント、デフォルト値は変わって欲しくない。デフォルトの値が変わったり解釈が変わって、なんかどっかの証券取引止まったよね。怖い、怖すぎる。
とりあえず、正しい設計と、引き継げるような要素を明確にして、以後はそのようなことはなくなったと思いたい。
ツライ。