期限までにデータセンター移設を完了してみた

この投稿はアイスタイル ADVENT CALENDAR 2020 の19日目の記事です。

こんにちは。 アイスタイル@インフラストラクチャグループにてマネジメントを中心にやっておりますotsukakです。

コロナの影響も出てきていた2020年の春、わたしたちはデータセンター移設の期限を迎えようとしておりました。
この数年インフラとして期限までのデータセンター移設が最優先タスクとなっており。
結果として、期限までにはなんとか完了しましたが、その間、あんなことやこんなこと、色々な事がありましたので、それについて書きたいと思います。
ちょっとしたアドベントカレンダー箸休めとしてお読み頂ければと思います。

尚、「いてんくんプロジェクト」と命名したのですが、一向に社内で流行ることはなく、少しさみしいので、アイキャッチ埋め込みにて、爪痕として残そうと思います。

前提

元々アイスタイルにて利用していたデータセンター閉鎖の話があり、2020年3月末の期日までに他のデータセンターへ移設しなければいけないという潜在的なタスクがありました。

色々な過去の状況や歴史、その時の状況を踏まえての検討の結果、都内近郊のデータセンターと、東北方面のデータセンターを併用、分散移設する形となりました。

移行手法

移行手法の概要としては以下の通りです。
正直、時間も足りず、インフラ移設としては王道的な手法ばかりを採用。

【ネットワーク】
– データセンターの移行元と移行先は、ネットワーク的にはL2延伸させる(王道手法)
– 最終段階でGATEWAYを移設
– AWS DirectConnectや、VPN等も切り替え移設

【サーバ】
– VMデータコピー
– VMware vCenter Converter StandAloneの利用
– Veeam BACKUP & REPLICATIONの利用
– 物理輸送

主な出来事(こんな事ありました)

大きなトピックスだけ、抜き出して書いていきたいと思います。

2019年8月 移設の再開

移設先の東北データセンターに、VMリソースの一定量を稼働させる仮想基盤を導入し、移設作業を再開させる

2019年9月 分散移設の本格化

移設先の都内データセンター稼働、移設元データセンターからL2延伸し、VMリソースの一定量を稼働させる仮想基盤を導入完了。 移設を順次開始していきます。

2019年10月 ホスト名似てる問題

ホスト名が似ているサーバが存在していてわかりづらい、というのは鉄板の問題ですね。
うちでもありました。

移設実施にあたり、アプリ担当へ相談をしたところ、XXXXbatchですか? XXXX-batch01ですか? たいぽかな? との事。

結果、XXXXbatch01は不要なサーバであることが判明。
XXXX-batch01/02は必要なサーバ、なので、そのまま移設しました。

※教訓1 そもそもややこしいホスト名、やめようさ。。
※教訓2 確認不足で、必要なサーバを落とすことなく、ちゃんと拾えたのは良かった点

2019年11月時点での移設残サーバ数

11/20時点で、移設の残りサーバは、約280。
残り4か月ちょっと。まだまだ厳しい状況です。
ほんとに終わるのか。でもとにかく諦めずに突き進みます。

2019年12月 だいぶ開きなおる

12/3にBeautyDayというアイスタイル最大のイベントがあり、11月中旬からイベント終了まで、移設作業は一時中断してました。
再開後は腹をくくり、勇気をもって今まで以上に突き進みます。


移設だけでなく、不要サーバの破棄も、残サーバ数を結果的に減らすことに貢献しますので、それも積極的に行いました。
担当者不在など、不明なものは、勇気をもって切断&ダウン

2020年1月

いよいよ残り3か月です。

  • ご加護
    年明けの仕事始め。 メンバーとランチを兼ねて会社近くの神社に参拝。
    おみくじも引いたところ、「大吉」 神のご加護に安堵しました。

  • 結果、サブDB群移設
    弊社のメインDBのリプレイス兼移設実施を予定していたが、直前に問題が発生しリスケに。
    ただ、サービス停止のメンテナンス告知は行っていたため、メインDB以外のサブDB群をまとめて移設することになりました。
    サブDB群移設の個々の調整が不要、この日にサービス停止の上、まとめて移設できたため、移設工数が大幅に短縮できた結果となりました。
    早速の神のご加護なのかもしれない。

2020年2月

  • Hadoop系移設
    Hadoop系システムを、日中帯に停止し、移設
    朝からスタートし、移行元DCにてHadoopシステムダウンし、運搬
    移行先DCにてマウント、稼働させ、夕方には無事完了

  • 店舗系システム物理移設
    店舗系システム移設は、検討の結果、夜間に停止し、物理的に移設する方法に。

ですが、物理輸送中、業者のトラックが故障することに。
このあと代替トラックを手配、載せ替える等を行い結果、数時間遅れで、移行先にてシステム稼働できました。

  • 2往復物理移設
    片系ずつのダウンが許容されるシステムがあり、物理的なサーバとしても分離されておりました。よって、片系ずつ運搬する2往復移設を計画しました。
    1.移行元DCにて1系統側をダウンし、業者に運搬してもらう
    2.移行元DCから移行先DCへ立ち合いメンバーも移動
    3.移行先DCにて1系統側を稼働。 移行元から移行先に機能面をフェールオーバー
    4.フェールオーバー作業中に、移行元DCへ業者及びメンバーも戻ります。
    5.既にフェールオーバー済なので、移行元DCにて2系統側をダウンし、運搬してもらう
    6.移行先へサーバ、メンバーも移動し、移行先DCにて、2系統側を稼働
    これら、朝からスタートし、夜までには無事に完了しました。

  • コロナ禍とリモートワーク
    コロナ影響により、急遽全社向けVPNを展開し、2月末から原則リモート勤務に。
    この頃は、コロナの怖さに加えて、リモートワークで移設作業を対応できるのか、非常に不安でした。

2020年3月

いよいよ最終月です。怒涛の移設ラッシュなので、日付で列挙します。

  • 3/12 Couchbase本番移設
    Couchbaseというシステムがあり、NoSQLドキュメント指向DBとMemcacheの2つの機能を弊社では利用。 ただ正直なところ、前任者が導入したシステムであり、ノウハウ継承も不十分なため、Couchbase自体の知見不足は否めませんでした。
    数か月前に初回の移設試行し、障害やトラブル発生。検証や調査をあれこれ試し、ようやくCouchbaseグランドフィナーレであるこの日を迎えました。
  • 3/13 監視システム移設
    社内で利用している監視システムです。 一時的に止まりますが、社内周知の上、えいっ!っと移設
  • 3/14 ログ系バックアップサーバ物理移設
    土日にメンバーが物理移設
  • 3/16 STG環境のネットワーク/GATEWAY移設
    本番切り替えのリハーサルも兼ねて、STG環境の移設を先に実施
  • 3/18 本番環境のネットワーク/GATEWAY移設
    移設作業、最大のヤマ場といっていいでしょう。 本番側のネットワーク/GATEWAY切り替えです。 当然夜間メンテナンスを設定。 一時的に弊社サービスがWEBの世界から消えるなんて言われ方をしましたが、なんとか乗り越えました。
  • 3/25 AWS DirectConnect移設&残存DB移設&CDN移設
    AWS DirectConnectの敷設はありますが、移設は初めてでした。 これもメンテナンスを設けてなんとか乗り切りました。 そのメンテナンスタイムを利用し、いくつか移設残りのシステムもセットで移設しました。
  • 3/27 残存バックアップサーバ物理移設
    純粋な意味での移設の最終機器でした。
  • 3/30 残置機器のダウン、ケーブル抜去
    残存確認も終わり、撤退にむけてクロージング作業をすすめました。
    最後に残ったのは、エッジのネットワーク機器、この後物理移設し流用するもの、そのまま廃棄するもの、です。 ひたすら機器のダウンと、ケーブル抜いていきます。
    インフラがガテン系といわれる作業が中心ですので、若手メンバーを連れて頑張りました。
  • 3/31 完全撤退 (いてんくんプロジェクト完遂)
    台数もかなりあるので、業者にまとめて物理運搬してもらいました。
    期限ギリギリまでかかりましたが、無事にデータセンター閉鎖前に撤退することができました。

振り返りと今後

本当に幸運だった事

これはお世辞抜きに、人に恵まれた「いてんくんプロジェクト」でした。
上位マネジメントにもエンジニア全体も、みんなとても協力的。
こういうデータセンター移設とかは大抵社内に抵抗勢力なひとがいて、苦労するもの。

もちろん計画、やりたい事、お金のかかること、などの必要な説明、ネゴは求められますが
いわゆる重箱の隅をつつくような、批判だけを繰り返されるようなことはおきませんでした。

※正直、過去の会社でもデータセンター移設を経験してますが、猛烈な抵抗勢力がいたり、ダメだししかしない文化があったり

この無理ゲーとも思えた「いてんくんプロジェクト」ですが、我がチームのメンバー構成においても、
振り返れば、以下のような幸運も続いた事が成功の要因だったなと思います。
上位マネジメントが配慮してくれた部分でもありますし、色々ピースがハマったなと。

  • 2019年7月 知り合いであった後輩の入社
    後輩が入社したことで、担当増員によりDB移設推進力に。
  • 2019年10月 パートナー2名 JOIN
    最初のOJT系の苦労はありましたが、これにより通常業務と移設作業の分担が可能に。
  • 2019年12月 データセンター移設 担当ディレクター1名 JOIN
    私自身、移設担当プレイヤーとマネジメントの両立がかなり厳しい状況でした。
    移設担当ディレクターにJOIN頂いた事で、移設担当プレイヤーの時間を大きく増加させることができました。
  • 2020年3月 元エースメンバー1名の復職
    移設終盤に重めのタスクが残存しておりましたが、このエース復帰により一掃に成功。工数の大幅な短縮ができたと思います。

これから取り組む事

無事に移設はできましたが、インフラ環境として最適化はまだまだです。
2拠点のデータセンター及びパブリッククラウドをいかに組み合わせていくか。
最適な形はなにか。その検討と実現をこれから行っていきます。

※少しでも弊社に興味を持っていただけたら、ぜひこちらから。