6月1日から3日間にわたって開催された「AWS Summit Tokyo 2016」。2日目の事例講演には、ミクシィ オレンジスタジオ mixiシステム部 部長の北村聖児氏が登壇し、「10年オンプレで運用したmixiをAWSに移行した10の理由」と題する講演を行った。

mixiを取り巻く社内外の環境の変化

ミクシィ オレンジスタジオ mixiシステム部 部長の北村聖児氏

ミクシィ オレンジスタジオ mixiシステム部 部長の北村聖児氏

2014年3月に10周年を迎えたソーシャル・ネットワーキング・サービス「mixi」は、10年以上の長きにわたり、オンプレミス環境で運用してきた。そんな実績のあるサービス基盤をなぜAWSに移行したのか。北村氏は、移行のポイントについて10の観点から解説していった。

AWS移行を決めたのは2014年10月頃のこと。当時のインフラは約1,000台の物理サーバで構成されていた。「一部の課金系ネットワーク系でAWSを利用する以外は、ほぼオンプレという状況」(北村氏)だったという。当時抱えていた課題の1つは、多くのハードウェアがリプレース時期やサポート期限切れを迎えるなど、インフラが老朽化していたことである。また、大ヒットしたiOS・Android用ゲームアプリ「モンスターストライク」などのサービス運営のために、インフラエンジニアの負担も激増していた。

一方、社内では、新規サービスの開発や運用でAWSの利用が進んでおり、開発速度の向上などの成果が現れていた。アプリエンジニアの中では、「AWSをもっと使いたい」という声が高まり、システム部門にも要望が寄せられていた。

「仮にAWSに移行すると、インフラ老朽化と運用負担という2つの課題が解決できます。インフラが刷新され、物理的なハードウェア管理からも解放されるからです。さらに、AWSならば、アプリエンジニア中心の移行・運用が可能になることもメリットでした」(北村氏)

北村氏は、ここまでを”移行した10の理由”のうちの4つとして次のようにまとめてみせた。

  1. 物理的なハードウェア管理からの解放
  2. 人的な運用負担軽減ができる
  3. 新規サービスでAWSを利用していた社内背景
  4. アプリエンジニア中心の移行・運用ができる

ミクシィが立てた”3つの方針”

移行に際しては、「短期間に少しでも多くのサーバを移行すること」、「サーバの種類が多いので影響範囲・動作を検証しながら移行すること」が要件となった。サーバ数は物理サーバが約1,000台、論理サーバが約2,000台、そして画像保存用のストレージサーバには100億個以上の画像が保存されていた。

移行にあたり、北村氏らは3つの方針を立てた。1つ目は、「AWS Direct Connect」を使ってデータセンターとAWSをプライベート接続する環境を構築し、徐々にサーバをAWSに置き換えていくことである。その際、データベースサーバはいったんオンプレミスの環境に残すことにした。2つ目は、サーバ構成台数が多いシステムを優先して移行していくこと。3つ目は、検証コストを最小限にするために、サーバ構成は極力変えないことだ。

「データベースサーバをいったんオンプレに残すことにしたのは、データベースの種類が多かったことと、アプリケーションサーバに比べて台数が少なかったためです。何かあったときに、AWSからオンプレへの切り戻しが楽なことも理由の1つでした」(北村氏)

ただし、この場合、オンプレミスのデータベースに対してAWSのサーバからアクセスすることになるため、レスポンス速度の低下が懸念された。そこで、memcachedをAWS側にも配置することにした。サービスの特性上、memcachedに格納しているキャッシュのヒット率が高く、内部トラフィックもmemcachedへのREADが圧倒的に多かった。AWS側のAPサーバからオンプレミス側のDBサーバへ、オンプレミス側のAPサーバからAWS側のDBサーバにWRITEする構成とし、レスポンス速度への影響を最小限にした。

移行時のシステム構成イメージ

この移行計画においても、次の2つがAWSの利点となった。

  1. オンプレミス環境との親和性の高さ
  2. 柔軟なリソース取得と仮想ネットワーク設計ができる

>> いざ移行! そのプロセスと成果はいかに!?