先を見据えたインフラを構築する際、どのような考え方で検討を進めるべきなのか。大規模システムをオンプレミスからクラウドへ移行した経験を持つメルカリ 執行役員 CTO Marketplaceの若狹建氏、ディー・エヌ・エー(以下、DeNA) IT本部 本部長 グループエグゼクティブの金子俊一氏、ギックス 上級執行役員 Chief Technologist 兼 Chief Architectの岡大勝氏が、12月13日、14日に開催された「TECH+フォーラム クラウドインフラ Day 2022 Dec. 変革を支えるニューノーマルのITインフラとは」に登壇。クラウド移行・運用時に気を付けておきたいポイントなどを紹介した。
-
左から、メルカリ 執行役員 CTO Marketplaceの若狹建氏、ディー・エヌ・エー IT本部 本部長 グループエグゼクティブの金子俊一氏、ギックス 上級執行役員 Chief Technologist 兼 Chief Architectの岡大勝氏
【あわせて読みたい】「TECHフォーラム クラウドインフラ Day 2022 Dec. 変革を支えるニューノーマルのITインフラとは」その他のレポートはこちら
企業がクラウド移行を検討すべきタイミングとは
メルカリでは、5~6年前より、オンプレミスからクラウドへの移行を進めているという。若狹氏は、その経緯について「歴史の短いシステムではあるが、当時はサービス開始から6~7年が経っていました。モノリスのWebアプリケーションとして機能追加が続く中、実装がスパゲティ状態に。ビジネスロジック間、データベースとビジネスロジック間の依存関係が読めず、開発スピードが落ちていたのです。クラウド移行によってプロダクト開発のケイパビリティやキャパシティを高め、エンジニアリングで事業拡大を支えていくことを目指しました」と振り返る。
一方DeNAでは、2018年~2021年の3年間で全てのシステムをオンプレミスからクラウドへ移行するプロジェクトを実施した。当時は、大小合わせて300ほどのサービスがある状況で、オンプレミスサーバは約3000台が稼働していたという。金子氏は、クラウドへの全面移行を決めた理由について「オンプレミスサーバが老朽化する中、サービスによってはパブリッククラウドも利用している状況でした。これだけの規模であれば1つの方針を定めてエンジニアのリソースを集中させ全体最適を図っていくことが、サービスを持続していく上では重要だと考えました」と話す。
こうした2社の取り組みを踏まえ、ZOZOTOWNのレガシーモダナイゼーションに携わった経験などを持つ岡氏は、オンプレミスかつモノリスのデメリットとして「開発やテスト、ハードウエアの増強などに時間が掛かる」ことを挙げ、企業がクラウド移行を検討すべきタイミングについて「開発やサービスリリース、新しい取り組みの実験など、今のままでは動きが遅すぎると思ったとき」だと説明する。
クラウド移行の目的、組織のミッションを明確にする
では、具体的にどのような手順でクラウド移行を進めるべきだろうか。若狹氏によると、メルカリはやれそうなところから徐々にマイクロサービスとして切り出していく方針を取ったという。これには、まずやってみることでマイクロサービスやクラウドに関する知見を得るという意味合いもあった。しかし若狹氏は「ソフトウエアのアーキテクチャという視点で考えてみると、それが必ずしも適切だったとは言えない」とも明かした。
若狹氏の説明を受けて岡氏は「理想は、まずシステム全体のアーキテクチャがどうあるべきかをデザインすること。ITシステムの設計とは、システムをどう分割するか、そこにどんな責務やワークロードを割り当てるかということに尽きます」とコメントした。
また、クラウドリフトだけでなくクラウドシフトにまで取り組むべきという考え方もあるが、金子氏は、「ワークロードや目的次第です。企業の抱える課題がリフトで当面解決できるものであれば、そのタイミングでやるべきことはリフト。シフトまでしないと解決できないのであれば、踏み込んでいかなければなりません」と、あくまで企業の状況に合わせて検討していくべきとした。
なお、メルカリでは現時点でモノリスは残っているというが、「事業会社としてビジネスを行っている以上、目的はあくまで事業成長であり、お客さまに価値を届けること」(若狹氏)という考えから、組織体制としては、マイクロサービスなのかモノリスなのかはあまり意識せず、事業として求められる機能やドメインで担当を分けている。
DeNAでは、オンプレミス運用時のインフラの専門部隊を今も維持し続けているという。その理由について金子氏は「当社のインフラ部門は、サービスが稼働し続けるために必要なことは全てやるというミッションで稼働している」ためだと説明する。対象がオンプレミスであれば、オンプレミス環境を徹底的に安くチューニングして使い倒すこと、クラウドであればオンプレミスと同じ程度にまで利用コストを下げるための工夫が求められるということだ。