ゲーム、SNS、金融、小売り――ITサービス拡大・発展のキモは「インフラ設計」にあり:「サイバーエージェントが明かすサービスインフラ拡大の舞台裏」@IT勉強会リポート
ゲーム、SNS、金融など、ITサービスが収益を左右する重要な顧客接点となっている今、どうすればITサービスを安定的に発展、拡大させていくことができるのだろうか? @IT編集部はこうした問題意識を基に、サイバーエージェントとパンドウイットコーポレーションをゲストに招き、サービス開発とインフラ設計にフォーカスした勉強会を開催した。
サービス拡大にリニアに追従できるインフラ設計の在り方とは?
クラウド、モバイルが社会に深く浸透している今、ニーズに応じたスピーディなITサービスの開発・改善が不可欠となっている。特に昨今はFinTechトレンドの本格化を受け、「決済」など金融サービスの開発も活発化している。ただ、そうした各種ITサービスの中でも、ひときわ競争が激しい市場と言えるのが、ゲームやSNSだろう。
ゲーム、SNSはライバルが多い上、エンゲージメントにも深く関わるサービス。サービス提供の「スピードと品質」を両立できなければ、収益とともに顧客の信頼、ロイヤルティまでをも失う非常にシビアなフィールドだ。加えて、サービスの人気や市場変動などによって、トラフィックは急伸/急減する。
こうした中、どうすれば「質の高いサービス」を安定的に効率よく提供できるのか? どうすればユーザー数の拡大に応じてパフォーマンスを守りながらサービスを拡大していけるのか? そのカギは、トラフィックの変化に耐え、サービス拡大にもリニアに追従できる、柔軟なインフラ整備にあるのではないか?――
2015年12月17日、@IT編集部はこうした課題認識に基づき、勉強会を開催。サイバーエージェントをゲストに迎え、「サービスインフラ拡大の舞台裏」を紹介した他、バンドウイットコーポレーションの技術セッションでは、物理インフラ整備の在り方を基礎から解説した。本稿ではその模様をお届けする。
Amebaを支えるインフラ拡大の歴史と取り組み
基調講演では、サイバーエージェント 技術本部 中島弘貴氏が「Amebaを中心としたサイバーエージェントのインフラ拡大の歴史と直近の取り組みについて」と題し、Amebaの各種サービスを支えてきたインフラとその取り組みについて紹介した。
Amebaのサービス発展の歴史は、大きく3つのステージに分けられるという。まず、2000年代後半から2012年ごろに発展したブログサービスと「アメーバピグ」。次に2013年〜2014年ごろに拡大したソーシャルサービス「アメーバスマホ」。3つめは2015年から力を入れている音楽配信や動画配信だ。
アメーバピグはPC向けに2009年に開始。1年で300万会員を突破し、さらに1年後には1000万人に拡大した。インフラ面では、こうした会員増に対応するため、社内で「ミルフィーユサーバー」と呼ぶ自作サーバーを大量に投入。Fusion-ioを採用してデータベースのボトルネックを解消するとともに、構成管理ツールも使い始めた。
「アクリル板にマザーボードなどを取り付けたサーバーで1ラックに約64台収納できました。それを大量に投入し、月100台のペースで増えるサーバーに対応。また、構成管理ツールを使って手作業を減らし、会員増による負荷に対応していきました」(中島氏)
また、ピグ会員向けのPCゲーム群として「ピグライフ」「ピグワールド」などを展開したが、開始直後から1日に何十万人という規模の激しい流入が起こった。その負荷の増大に対応するため、NoSQLの「MongoDB」、構成管理ツール「Chef」を本格的に採用。また、本番系サーバーと開発系サーバーを並行稼働させ、ゼロダウンタイムで本番系サーバーに切り替える「ブルーグリーンデプロイメント」の手法も取り入れた。
「ブルーグリーンデプロイメントは、スキーマレスで運用できるMongoDBと相性がよく、非常にうまく運用できました。この方法は、最終的にJavaとMySQLで稼働していたピグ本体にもフィードバックすることができました」
続く、アメーバスマホでは2012年からAPI提供を開始し、プラットフォームと周辺サービス群を整備していった。この時期からプライベートクラウドの利用を開始したという。ただし、サービスの性質によりインフラを使い分けており、「認証」「課金」など重要なシステムのインフラは物理マシンを中心に構成したという。
「当時、スマホゲームの一つである『ガールフレンド(仮)』がCMでバズり、CMが放送されるたびにどんどんユーザーが増える状況でした。Fusion-ioを使った物理サーバーと地道なクエリーの改善で負荷を乗り切りました。また、リアルタイムバトルの『戦国炎舞-KIZNA-』は、プライベートクラウドによりリソースを有効活用できました」
音楽配信と動画配信からは、「今までのサービスと違ってデータ量が多く、伸びに対するキャパシティをオンプレミスで事前に担保するのはなかなか難しいという事情」から、AWSなどのパブリッククラウドをプライベートクラウドと組み合わせて利用し始めた。音楽配信では、「定額聞き放題サービス」のために3000万曲の提供を目指すアーキテクチャが求められ、動画配信では、大量のユーザーに動画配信プラットフォームを通じてリアルタイムに配信する必要があった。
パブリッククラウドとプライベートクラウドは、メリットの見極めが大切
中島氏は、こうしたクラウド活用について、「必要なときに、必要なだけのリソース使えるのがパブリッククラウドのメリット。一方、オンプレミスのプライベートクラウドでは、一番のメリットがコストになります」と、社内でプライベートクラウドを推進した背景を説明した。
Amebaのプライベートクラウドは、2世代に分けられるという。第一世代はコントローラーを自社開発し、独自APIを使ったインフラで、約200ラックを運用していた。運用者が開発者であり、規模拡大や仕様変更に追いつかないという課題があったという。
そこで第二世代として、「OpenStack」を本格採用。選定の理由は、「活発なコミュニティがあったこと」「標準的なAPIを使ってインフラの自動化、スピードアップが望めること」「集積度の高いハードウエアを採用したことで、コストメリットが見込まれたこと」だという。加えて、ユーザー投稿画像をAWSの「Amazon S3」に保存するなど、ハイブリッドでの活用を進めている。
中島氏は、こうしたサービス拡大の経緯を振りかえって、「変化するサービスニーズに対応していくためには、インフラ側も常に変化していくことが重要」と強調。「オンプレミス、クラウドのいいところを知り、常に変化する環境の中で、より良いインフラを提供することがわれわれの目標です」と締めくくった。
事業規模、サービスに合わせたラックデザインが重要
続いて、パンドウイットコーポレーションでデータセンターBU技術コンサルタントを務める釼持良太氏が登壇。「それって常識? 非常識? 〜物理インフラの基礎講座〜」と題し、データセンターやマシンルームにおいて、ラックやケーブリングを適切に行うポイントを紹介した。
パンドウイットコーポレーションは、データセンターのラックやケーブル、パッチバネルを製造販売するメーカーだ。同社製品は、社内の小規模なマシンルームからサービス事業者の大規模なデータセンターに至るまで、幅広く利用されており、最適な物理インフラ環境を構築するための技術やノウハウの提供にも注力している。
インフラ管理者やシステム運用者にとっては、ラックの配置や温度管理、ケーブリングは安定的なサービス提供のために欠かせない重要な作業の一つだ。実際、サーバーの配置が原因となり、特定のサーバーのパフォーマンスが出なかったり、障害の発生につながったりするケースは少なくない。また、ケーブリングが不適切なために結線ミスやケーブル差し替えの遅れが起こり、障害復旧が遅れることも多い。
とはいうものの、実際にラック周りをきれいにしておくことはなかなか難しいのも現実だ。特に、ゲームや動画、クラウドのようなスケールしやすいサービスを提供している場合、サービス拡大に合わせてサーバーやネットワーク、ストレージ機器の増設が頻繁に起こるため、意識的にマネジメントを行わないと「ラック周りがグチャグチャ」になってしまう。
サービスの規模、特性に応じたケープリングノウハウを取り入れよう
そんな中で、パンドウイットコーポレーションが最適な物理インフラ構築のノウハウとして提案しているのが「Best Fit Cabling」という考え方だという。大きな特徴は、インフラの規模やサービスの規模・特性に合わせた最適な物理ケーブリング構成を取り入れていく「Best Fit Cabling Generation」というアプローチにある。
「Best Fit Cabling Generationでは、ケーブリング構成を3つの世代に分け、インフラ規模やサービスの規模・特性に最適なものを適用していきます。Generation1は『ラック間機器直接接続(都度配線)』、Generation2は『ラック間パッチパネル配線(ストラクチャードケーブリング)』、そしてGeneration3は『プラグアンドコネクト』です。インフラとサービスに合わせて、ラックの中や周囲がBest Fit Cabllingになっていると、作業性が上がり、オペレーションミスが減り、拡張性が大幅に向上します。何より気持ちよく仕事ができます」
Generation1のラック間機器直接接続は、オフィスネットワークや小規模システムに適した接続方法だ。初期費用が安価で自分たちで作業がしやすく、すぐに開通するというメリットがある。だが、気を付けるべき点として、「機器に長いケーブルがつながる」「配線品質は毎回異なる」「終線部分がグチャグチャになりやすい」「障害時にトレースが大変」といったデメリットもある。そこで、インフラを拡大する際にこうしたデメリットを避けるために、取り入れるのがGeneration2だ。
Generation2のラック間パッチパネル配線は、データセンターやコンテンツ系サービス、金融系サービスを中心に、ほとんどのネットワークに最適な接続方法だという。ポイントは、パッチパネルを使ってケーブルをまとめて接続すること。ラックの中をきれいにしやすく、責任分界点を明確化できる。メンテナンス性も高い。ただし、一定の初期費用が必要な他、施工業者に依頼するためある程度の工期も必要だという。
Generation3のプラグアンドコネクトは、そうした課題を解消する接続方法となる。Generation1のスピードと拡張性、Generation2と同レベルの品質運用性を持ち、自由度と適応性が高い。「品質、スピード、トレンドの全てにおいてベストフィットな構成」であり、具体的には、パッチパネルやプレターミネートケーブル、MPOカセット、MPOケーブルなどで構成するものになるという。
釼持氏は「ラック内を崩壊に導く要因は、『わが道を行くケーブル(束ねられていない)』『たむろする余長(まとめられていない)』『思いやりとモラルのない配線ルート(交換作業がしにくい配線)』の3つ。事故を防ぐために、まずはラックの中をきれいにすることが必要です。その上で、ラックの外についても、事業規模、サービスに合わせた物理デザインを意識してください」とアドバイスした。
物理層を含めてサービスを考えることが重要
最後に、@IT編集長の内野宏信がモデレータとなり、サイバーエージェント 中島氏と、パンドウイットコーポレーション 釼持氏とともに、パネルディスカッション「"ググってもどこにも書いてない"成功するWebサービスの作り方」を実施した。
議題として取り上げたのが、「サービスがうまく行ってトラフィックが急増しても、安定して提供するにはどうすべきか? 上手なサービスの育て方は?」というもの。これに対し中島氏は、「タイミングを逃すとユーザーの拡大が止まってしまうため、どんどん呼びこむことが必要。その際、備えあれば憂いなしで、事前に潤沢なリソースを準備できるのが理想ですが、ほとんどの場合は難しい。ミルフィーユサーバーのように、少ないコストで大量のリソースを調達するなど、取れる手段は何をやってでも、拡大に邁進することが大切だと思います」と話した。
サイバーエージェントの場合、OpenStackなどを使ってプライベートクラウドを構築したことで、「柔軟性とスケーラビリティ」を確保したこともポイントだとした。
これに対して釼持氏は、「事業拡大に対応するために、拡張性のあるデータセンターを作りたいというニーズは年々強まっています。実際、ビジネス発展を予測することは難しいので、データセンター側が対応しきれていないという声を数多くいただいています。そこで、Generation3『プラグアンドコネクト』ような接続方法によって、スピードと拡張性、品質運用性を担保したデータセンターの作り方をお話すると、今後の成長を見越して取り入れていきたいという方が着実に増えてきています」とコメントした。
続いて、「物理層を含めて、自社で持つプライベートクラウドを採用した理由は何か」という問いに対し、中島氏は「コストや柔軟性、拡張性の確保がポイントだ」と回答。
ただ「サービスに合わせて物理インフラが拡大させる場合、マネジメントがおろそかになると、ラックがきたなくなりがちで、その分、リスクも増える」(釼持氏)。特に、異なる担当者が複数回にわたってラックでの作業を行う際は、ルールと責任を設けて、品質を一定に保つ必要があるという。釼持氏によると「海外では、ケーブリングなどのファシリティーを専門に見る担当者がおり、しっかりとマネジメントする傾向があります」という。
中島氏も「ケーブリングについてはググっても情報が出てこないことが多い。会社や職場の流儀に沿って、何となく自己流でやることになりがちです。ノウハウがあるならぜひ知りたいです」と感想を述べた。
ただ、Web、スマートデバイスが社会に深く浸透し、ITサービス提供の在り方が収益・ブランドを大きく左右する現在にあって、今回もっとも示唆的なアドバイスとなったのが、「サービスに合わせたインフラ設計・物理環境設計の勘所」として釼持氏が述べた、次の指摘だろう。
「現在はゲーム、SNSをはじめ、決済などの金融サービス、保険サービスなど、各業種でITサービスが盛んに開発・提供されています。ただ作っているサービスそのものに関心が向きがちであり、インフラについては、パブリック/プライベートクラウド、オンプレミスの使い分けについては考慮されていますが、その下の物理層までは考えられていないことがほとんどです。しかし本来は、各業種でのサービスの内容・特性、担保したいサービスレベル、掛けるべきコストなどに最適な物理環境の設計があるのです。加えて、サービスを提供開始すると、途中で物理層の構築をやり直すことはかなり難しい。インフラ設計こそ、事業計画やサービスの特性を基に考えることが重要です」
これを受けて、中島氏は「サービスの使い方によって、求められるサービスレベルをインフラ側にしっかりと伝えることがポイント。実際、弊社も第二世代のプライベートクラウドでは、インフラ側と開発側で密接にコミュニケーションを取るようにしています」として、ビジネス、開発、インフラの連携が重要であることを強調した。
サービスを支えるインフラについて、サービス側からの視点からはなかなか意識を向けにくいものだ。だが事業計画、サービスの性質を基に「物理層も含めて考える」ことがサービス拡大のキモとなる――本勉強会では、そうした普段意識されない重要な真実を、あらためて認識できたのではないだろうか。
Copyright © ITmedia, Inc. All Rights Reserved.
関連リンク
- パンドウイットコーポレーション
- パンドウイット動画紹介ページ
- LANケーブル配線.COM
データセンター運用技術者必見
提供:パンドウイットコーポレーション日本支社
アイティメディア営業企画/制作:@IT 編集部/掲載内容有効期限:2016年2月24日