2024.12.02
業務時間外攻撃から守る、侵入を防ぐための最適解 誰も教えてくれない攻撃者目線のセキュリティ対策
オンプレ環境からクラウドへの移行(いろいろ大変だった)(全1記事)
リンクをコピー
記事をブックマーク
仲里新吾氏:ここからは私、仲里から発表します。題材は「オンプレ(オンプレミス)環境からクラウドへ」です。はじめに軽く自己紹介をします。DMM入社後、水の販売を経て、出会いサービスの担当。それから競輪などのサービス担当を経て、現在はオンラインサロンのバックエンドに参加しています。
今回のトピックですが、まずはじめにクラウド移行の目的、そして移行内容、これからのこと、最後にまとめとなります。
まずオンラインサロンで抱えている課題です。担当しているサロンサービスでは、システム面でさまざまな課題を抱えていました。まず1つ目は拡張性。サーバーの台数やスペックを容易に増減できないという状況でした。
DMMはオンプレをまるっと用意していて、拡張の際は人依存で対応してもらうなど、安いメリットもあったので、そこはトレードオフとの関連性ではあるんですが、現状ではちょっと拡張性の悪い状態でした。
2つ目に監視です。アクセスログを見る場合は、サーバーなどに直接入って確認をしていました。3つ目に継ぎはぎな設計です。サービスリリースからさまざまな機能追加をやってきましたが、その都度選択していた結果、継ぎはぎな設計になっている部分があり、柔軟な設計が難しくなっている状態です。
今回の対象は、拡張性および監視の部分です。Lift&ShiftのLiftの部分の話です。先ほど挙げた問題点があり、不具合や案件の対応に時間がかかるなどの負債がありました。そこでまずは柔軟性と監視部分の強化のため、オンプレからクラウドへの移行案件が立ち上がりました。
移行案件のチーム体制は、私たちが参加しているサロン事業部から開発メンバー4人、SRE部から1人、インフラ部から1人です。ここでDMMでのSRE部とインフラ部とは何かを少しだけ紹介します。
SRE部は、事業部に寄り添ってサービス開発を支援する部署です。AWSの構築や、それに関連する各種運用整備の場面で、今回のAWS移行案件でも多く支援をしてもらいました。
インフラ部は、DMMのシステム基盤を構築運用している部署です。今回サロンでは、オンプレをまるっと管理してくれていました。この7名体制で移行案件に取り組みました。
スケジュールは、6月から12月半ばまでの半年間、移行案件に費やしました。当初の予定では3ヶ月あればできるかなと思っていたのですが、実際に計画を立てて進めていった結果、半年ほどかかりました。
移行前の環境と、移行後の環境を軽く説明します。移行前はWebサーバーや、DB、ファイルサーバーや、メール、すべてをオンプレでまるっと管理していました。
今回はそれらをそのままAWSのほうに移行しました。基盤レベルのものはひととおり移行しましたが、のちほど説明するCloudEndureで移行したとき、VMの中身自体はそのまま流用しています。
各種アプリケーションのライブラリのバージョンなどは現行のままです。その理由は、バージョンアップした場合の影響が大きいからです。バージョンなどはそのままにしていて、これは今後の課題として検討中です。
それぞれをどういうものに置き換えたかですが、DBに関してはオンプレ環境からmysqldumpで、AWSのaurora mysqlに流し込みを行いました。DNSはDMMのDNSサーバーからRoute53。WebサーバーはCloudEndureを利用して、VMイメージごとAWS EC2に移行しています。
画像キャッシュサーバーはVMからS3に変更して、キャッシュサーバーはNginxからCloudFrontへ変更しました。ほかの変更一覧は資料のとおりです。
今回の移行に伴い、改善したポイントは大きく2つです。1つ目は、柔軟なサーバースペックへの変更。サーバースペックの変更や台数の変更が容易になり、負荷に応じて対応できるようになりました。インスタンスタイプの変更や、オートスケーリングで負荷に合った設定にしています。
2つ目は監視の強化です。オンプレ時代はZabbixを使っていましたが、New Relicに変更した結果、負荷のかかっている処理の調査などが容易になりました。
今回の移行ですが、主に環境をまるっと移行するということで、アプリケーションや、仕様などの変更は行いませんでした。それでも既存への修正が必要な部分が大きく分けて4つありました。
1つ目がIP制限周りです。オンプレ時に許可していたIPを、クラウド移行時にも利用できるようにするという部分です。
2つ目がハードコーディング部分。ドメイン名の部分が一部ハードコーディングされていたので、動的に変更できるように修正しました。3つ目が外部サービス情報です。オンプレで許可していたものを、クラウドからも許可できるように変更しました。
4つ目がデプロイ方法です。オンプレ時はJenkinsを利用していましたが、現在はcircleciを利用しています。
案件を進めるうえで出てきた課題の数は、ざっとですが162個。いくつか紹介すると、デプロイをどうするかなど、利用モジュールの反映方法が決まっておらず途中で決めるという問題が出たり、実際に移行を進めていくうえで、サービスが動かなくなったりしました。この原因は、セキュリティグループの追加が足りなかったというものでした。ほかにも、フレームワークの問題で、想定していた監視ツールが利用できないなど、ほぼ毎日と言っていいほど課題が出てきたので、それらに対応しながら進めていく状態でした。
今回案件を進めるうえでの考慮すべきだった点、反省点です。1つ目が事前の洗い出し不足が多かった点です。IP許可や移行に関して対応すべきことが途中で出てきて、結果スケジュールが押してしまいました。
2つ目がテスト項目不足です。今回はあくまでアプリケーションの修正は最低限だったため、重要な部分を主にテストしていましたが、機能の細かい仕様の部分で、リリース後に不具合を出してしまったことがいくつかありました。
本番での検証、ステージングとの差分も反省点です。実は一度リリースしたあとに検証で問題が出て、リリースを延期した事実があります。原因は、EFSの遅延の問題だったのですが、ステージングと本番での環境差異から、ステージングでは気づけなくて、本番で不具合を起こしてしまいました。
今回発表した内容は、拡張性と監視のLift部分です。残るShiftのツギハギな設計の部分は、次の発表者の萩原さんがお話をすると思います。
まとめです。システムそのままの環境を移行するだけだと考えていましたが、蓋を開けたら対応しなくてはいけないことが多くありました。やってみないとわからないこともあると思いますが、事前の調査や、チームの認識合わせをはじめに固める必要があったと思いました。
以上をもちまして、発表は終了です。ご清聴ありがとうございました。
関連タグ:
2024.11.26
タスクの伝え方が部下のモチベーションを左右する マッキンゼー流、メンバーが動き出す仕事の振り方
2024.11.25
仕事はできるのに、なぜか尊敬されない人が使いがちな言葉5選 老害化を防ぐために大切な心構えとは
2024.11.27
何もせず月収1,000万円超…オンラインゲームにハマって起こした事業 大学中退し4社立ち上げ・2社売却した起業家人生
2024.11.25
論理的に「詰める」マネジメントでは本質的な解決にならない マッキンゼー流、メンバーの理解と納得を得る接し方
2024.11.28
管理職の「疲弊感」がメンバーに伝わるリスク 部下の「働きがい」を育む6つのポイント
2024.11.29
「明日までにお願いできますか?」ちょっとカチンとくる一言 頭がいい人に見える上品な言い方に変えるコツ
2024.11.27
部下に残業させられず、自分の負担ばかり増える管理職 組織成長のカギを握る「ミドル層」が抱える課題
2024.11.27
仕事中の「今ちょっといいですか」が苦痛… いしかわゆき氏が語る、ADHD気質にマッチした働き方のヒント
2024.11.26
仕事の質を左右する「ムダな習慣」トップ5 忙しくなる前に棚卸ししたい“やめたほうがいいこと”とは
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
ログミーBusiness リニューアル記念イベント開催
2024.11.29 - 2024.11.29
品がある人、育ちがいい人の見える 人のセリフ 3選
2022.11.30 - 2022.11.30
ミドル層が組織成長のキーになる!〜働きがいを高める、一生働きたい職場の作り方〜
2024.09.25 - 2024.09.25
新しい事業創出のヒントはスタートアップにあり! ~著者に聞く、今こそ知りたいスタートアップの世界~
2024.10.23 - 2024.10.23
Next Innovation Summit 2024 in Autumn
2024.11.01 - 2024.11.01