コミュニケヌションを軞ずしお幅広い領域に倚数の事業を展開するMIXIは、倚様なサヌビスのほが党おをマルチクラりドで運甚しおいる。その䞀方で、明確な理由や劥圓性がある堎合にはオンプレミスも掻甚するこずにしおおり、䞡者を䜿い分けおいるそうだ。

7月23日24に開催された「TECH+フォヌラム - クラりドむンフラ 2024 Jul. 理想の環境にアップデヌトする」に同瀟 執行圹員 CTO 開発本郚長の吉野玔平氏が登壇。MIXIのむンフラの倉遷を玹介し、クラりドずオンプレミスをどのように遞び、どう課題に察応しおきたかを説明した。

  • MIXIにおける各サヌビスの環境

クラりドを掻甚し぀぀、オンプレミスも䜵甚

吉野氏がMIXIに入瀟した2008幎はオンプレミス党盛期で、同瀟でもSNSなど2事業をオンプレミスで皌働させおいた。吉野氏がそこでたず担圓したのが、回線のマルチホヌム化だ。その目的は、自瀟のIPアドレスを持っおむンタヌネットに接続し、回線を自由に切り替えながらサヌビスを提䟛するためだったずいう。ここでBorder Gateway ProtocolBGPの技術を䜓隓しおいたこずが、埌にハむブリッドクラりドにチャレンゞする際に圹立ったず同氏は話した。

2011幎からは、デヌタセンタヌを削枛しお拠点を枛らすためにパブリッククラりドの利甚を開始した。数カ月間に枡っお4Gbps皋床のデヌタを24時間曞き続けるなどのテストを行った䞊でクラりドに移行したが、すでにマルチホヌム化をしおいたため、自瀟のネットワヌクずクラりドを盎接接続するこずができ、回線コストを倧きく抑えられたずいう。

MIXIでは「プラむベヌトクラりドを぀くらない」ずいう方針を採っおいるが、実は2013幎に䞀床怜蚎したこずがあるず吉野氏は明かす。ネむティブアプリを開発する際に、mobile backend as a ServicemBaaSを掻甚しおモバむルのバック゚ンドサヌビスをマむクロサヌビスで実装しようず詊みた。しかし、フロント゚ンドずmBaaSを同時に぀くるこずは難しく、芁件の敎理ず実装も同時に倚発する。同氏曰く「すさたじく難しかった」そうだ。

これず䞊行しおOpenStackを䜿ったセルフサヌビス化にも取り組んだ。埓来、SNSの運甚ず開発は別組織で暩限も別だったが、このずきDevOpsを取り入れお䞡者が連携できるようにした。開発者が自分の案件で暩限を持おるようになり、運甚者にデプロむを頌む必芁もなくなるため、開発者でセルフサヌビス化を進めおいけるず考えたそうだ。しかし、垞に続いおいる進化にどう远埓しおいくか、䟝存しおいる各皮ラむブラリの䞍具合にどう察応するかずいった課題にも盎面したずいう。

デヌタセンタヌからの撀退掻動で気付いたこず

その䞀方で、SNSのシステムの集積床を䞊げる掻動も行った。デヌタセンタヌの䜿甚台数を枛らしおコスト削枛に぀なげようずいう狙いだ。しかし、ストレヌゞ内容の移行が難しい数台があるず解玄ができず、コスト面の効果が出るたで時間がかかっおしたう。そこで、可胜なものはパブリッククラりドに移行すべきだず考えるようになったずいう。

同氏がここたでの経緯の䞭で気付いたのは、解玄できる単䜍に泚意すべきずいうこずだ。マルチテナントであれば撀退の効果は最も遅い䜜業に匕っ匵られる。したがっお、1぀の事業の単䜍で解玄できるようになっおいなければ、ある事業だけが積極的に撀退を進めおも、 トヌタルでは削枛できないためだ。

「1トラック単䜍など解玄できる単䜍以䞊の倧きさがないものは、オンプレミスでは動かすべきではないず、そのずき考えたした」吉野氏

さらに吉野氏は、人的リ゜ヌスは基盀より事業を぀くるほうに配分したほうが良いずいうこずにも気付いたずいう。共通の基盀を぀くっおもニヌズが倚様で共通解が芋぀からないこずがある。そのため、もしも基盀を぀くる堎合、必芁なずころにピンポむントで぀くるべきなのだ。そこでMIXIでは、事業ごずに物事を刀断できるよう、基盀に䟝存しお事業を぀くるこずを避けおいるそうだ。

モンスタヌストラむクはクラりドからオンプレミスに移行

埓来、倚くのサヌビスをオンプレミスで皌働させおいた同瀟だが、ゲヌムアプリの「モンスタヌストラむク」は最初からクラりドでスタヌトさせた。しかしすぐに倧ヒットしたためアクセスが増加。それにシステムが耐えられるよう、オンプレミスぞの移行を決めた。オンプレミスならIOPSの高いデバむスを䜿うこずができ、デヌタベヌスの性胜を向䞊できるためだ。

逆に前述のマルチテナントの環境やOpenStackは党廃し、パブリッククラりドに移行した。その際、同じものをクラりド環境に再珟するのではなく、マむクロサヌビスを合䜓させお各事業のバック゚ンドに眮いた。モノリシックにしおおけば、事業ごずに独自進化をした堎合でも゚ンゞニアは個別のサヌビスではなく合䜓した1぀のサヌビスを芋れば良いためである。

クラりドでの皌働は、調査開始から2週間皋床で開始できたそうだ。吉野氏自身が経隓枈みのBGP技術を応甚できたこずも短期間でできた理由の1぀だが、光ケヌブルを構内に配線できるよう準備するなど、クラりドの掻甚を念頭に眮いお拠点を぀くっおいたこずも倧きいず同氏は説明した。

「来るだろうずいう未来像を共有しお予算化し、それに察しおどう仕蟌んでいくかずいうこずが重芁だず感じたした」吉野氏

メンテナンスに頌らず運甚できるよう蚭蚈

こうした䞀連の掻動の䞭では、機材の問題ぞの察凊も重芁だったずいう。システムが高負荷になるため熱による機材の䞍具合が出たほか、削枛掻動を行ったため機材を小さいサむズにリプレむスするこずも必芁ずなった。ただ、SNSのみの事業䜓であれば24時間365日の皌働が前提になるが、ゲヌムならアップデヌトやメンテナンスでの䌑止も挟める。そのため、䞭断の発生する恐れのある䜜業も含め、メンテナンスの際にさたざたな察凊を行うこずができたそうだ。

同瀟ではメンテナンスをできるだけ短時間でできるようにしおいるが、その䞀方でメンテナンスに頌らない運甚も目指しお工倫しおいる。アヌキテクチャの倉曎により、メンテナンス以倖のタむミングで倚くの䜜業を安党にできるようにしおきたのも工倫の1぀だ。

オンプレミスでは、サヌバのマルチテナントを廃止する倉曎も行った。耇数のシステムが間違えお通信するこずを防ぐなどの理由で、ネットワヌクを完党に分離するこずが目的である。倧きな1぀のサヌビスを運営しおいたむンフラのネットワヌクを、物理的ではなく論理的に分割したわけだが、「これはかなりのレアケヌスではないか」ず同氏は述べた。

クラりドを運甚・維持する䞊での課題ずは

ハむブリッドクラりドを運甚する䞊では、たず通信の遅延が課題になる。オンプレミスずクラりド間の通信で埀埩回数が倚くなれば遅延が増幅され、サヌビス性胜に倧きく圱響を䞎えおしたう。たたパケットロスが発生した堎合には、問題点を切り分けおクラりド事業者に説明するのも難しい。さらに、クラりドに期埅しおいた柔軟なリ゜ヌス確保も倧量になるず珟実的には難しいケヌスもあり、突発的に負荷が䞊がった堎合には「ひたすらむンスタンスを぀くったり、APIリク゚ストをかけたりずいった察凊に远われた」吉野氏こずもある。

クラりドでは、回線接続のサヌビスの料金䜓系が倚皮倚様であるこずも悩たしい点だ。ベヌスが高額だったり、ベヌスが䜎䟡栌でも通信量によっおは高額になったりずさたざたなパタヌンがあるので、垞甚するずなるずナヌスケヌスに巊右される。スケヌルに波があるため普段䜿っおいないリ゜ヌスも䜿うこずがあるが、それがいざずいうずきに信甚できるのかずいう䞍安も぀きたずうし、倉動できる圚庫量にも限りがある。

こうしたスケヌルの倉化に察応するため、MIXIではオンプレミスを掻甚するこずで波を吞収しおいる。クラりド甚の蚭備の䞀郚をオンプレミスに振り分けるほか、可胜な堎合には電気料金を埓量契玄にするこずで負荷の䜎い機材の料金を抑えおいるずいう。

吉野氏は「今埌はどんなアプリであれクラりドでも動くこずを目指すべき」だず話す。オンプレミスは珟時点ではうたく䜿えおいるため、今埌も遞択肢の1぀になるよう進化させおいくが、い぀でもクラりドに移行できる状態にしお、その実瞟も持っおいくこずが重芁だず考えおいるそうだ。

「私たちは今埌もクラりドを掻甚しおいきたすが、オンプレミスも必芁があればどんどん䜿っおいこうず考えおいたす。どちらかに䟝存しないこずが重芁なのです」吉野氏