AWS を利⽤することで、インフラ運⽤と開発の分け隔てがなくなりました。結果としてサービスの提供を実現するのにどのようなインフラが必要で、どれくらいのコストがかかりそうかをエンジニア⾃⾝が意識するようになりました。
さらに、Amazon Aurora を活⽤し運⽤の⾃動化を実現したことで、運⽤コストを約 50% まで削減、エンジニアはインフラの⼼配をする必要がなくなり、より良いサービスを作ることに集中できるようになりました。
ネットワークエンターテインメントのパイオニアとして誕生した株式会社ドワンゴは、動画配信、生放送といったニコニコサービスを中心にビジネスを展開しています。今では「ポータル事業」、「モバイル事業」、「ゲーム事業」、「ライブ事業」、「その他事業」とインターネット上で多彩なエンターテインメントコンテンツを提供しており、それぞれの事業分野で革新を行い新たな価値の提供を続けています。
現在は「クリエイティブリーダーシップ」として、「テクノロジー」と「コンテンツ」の両面を進化させた新しい文化を創り出しており、「ニコニコ超会議」や「ニコファーレ」など、クリエイター発想の全く新しい取り組みにもチャレンジしています。
多彩なサービスを展開するドワンゴは、自社で独自開発しているサービスはもちろん、買収などで新たに加わったサービスも運用しています。自社開発サービスの IT インフラは、これまではオンプレミスが基本でした。そのため、社内にはオンプレミスで大規模なサービスを運用する十分な技術的ノウハウの蓄積があります。
とはいえ迅速なサービス開発や展開のために、近年ではクラウドの導入も積極的に行っており、特に「ニコニコアンケート」やイベント時に利用する Web サイト、Web アプリ―ケ―ションなどに AWS を導入、現在は Amazon EC2 を中心に、様々な AWS のサービスを組み合わせて利用しています。
「ドワンゴは元々はオンプレミスの会社でしたが、インフラ環境を適材適所で選択し、オンプレミスとクラウドそれぞれの利点を活用するようにしています。」(野口氏)
そんなハイブリッドクラウドのメリットを、適切なコストでいかにして最大化するか。その実現は、ドワンゴの IT インフラにおける今後の課題の 1 つでもありました。
AWS を選択した理由の1つに、オンプレミスの環境で開発を行っていた技術者の多くが、以前より AWS への関心度が高く、技術的な習熟度も高かったからだと野口氏は言います。「当時は社内に AWS の専門の技術者がいたわけではありませんでした。とはいえ技術者であれば、1 度は AWS に触ったことがある、といった社内の雰囲気はありました」(野口氏)
ドワンゴでは、新たに開始するサービスを中心に AWS の導入を進めており、Amazon EC2 はもちろん、コンテンツ配信、Web ページ表示の高速化のために Amazon CloudFront を導入しています。さらに、他社から譲渡されたRSS リーダーサービス「Live Dwango Reader」では、譲渡された当初のオンプレミス環境をそのまま AWS へ移行し、運用の効率化を進めました。
Live Dwango Reader では、AWS 移行当初は Amazon EC2、Elastic Load Balancing、Amazon Route 53 を組み合わせた環境で運用していました。オンプレミスの環境をそのままクラウドへ移行するためにオンプレミスと同様、データベースは Amazon EC2 に MySQL をインストールして利用していました。データベースのデータ格納には Amazon EBS を利用していましたが、RSS リーダーというサービスの性格上、ユーザーの増加に比例して蓄積されるデータも増加していきます。「データ量は日々増え続けるにも関わらず、コスト削減のためストレージの容量も制限しなければならなりませんでした。これらの課題に対し、過去データを削除するなどして対処してきましたが、根本的な解決には至りませんでした」と、ニコニコ事業統括本部 企画開発本部 第五企画開発部 静画開発セクション 書籍開発グループ ジャシュア・ウィリアムズ 氏は振り返ります。
そんな運用状況を改善するために浮上したのが、Amazon Aurora でした。ドワンゴでは、急激なアクセス増加などにも対応できるようIT インフラのリソースは 6 〜 7 割程度で運⽤すると良いと考えています。急激なピーク時の負荷にも柔軟に対応するため、フルマネージドサービスである Amazon Aurora を活用し、運用の自動化を進めることになりました。
2015 年 9 月頃から Amazon Aurora の検討を開始し、2 ヶ月ほどの時間をかけて本番と同じデータを利用した可用性と性能の検証が行われました。「検証の結果、これまで通りかそれ以上の性能が発揮できることが確認できました」(ウィリアムズ氏)
その結果を踏まえ、2016 年 1 月から Amazon Aurora へデータベースの移行が行われました。
Amazon Aurora の導入後は、データベースを安心して運用することができるようになりました。「以前は 1 日に数回の頻度で発生していたアラートが、導入後は月に数回程度にまで減少しました。大抵のものがディスクの容量超過を知らせるもなので、大した問題ではありません。データベースサーバー自体は、手間をかけず安定した運用ができています」(野口氏)
コスト面でも、Amazon Aurora の導入に合わせて Amazon EC2 のインスタンスサイズの最適化を行ったこともあり、ピーク時の約 25%、通常時と比較しても 50% 程度まで削減することができています。
また、インフラ運用の人的負担も大きく低下しました。「Amazon Aurora への移行後は、増加し続けるデータの対処を日々気にかける必要がなくなったため、サービスを開発することに集中できるようになりました。社内でも AWS を活用することで運用の手間がかからなくなることをインフラ管理者の多くが実感しています。さらに、アプリケーション開発者にとってもインフラ運用がより身近な存在になってきています」(ウィリアムズ氏)
結果として、インフラ運用と開発の分け隔てがなくなり「サービスを開発するためにどのようなインフラが必要で、実現するのにどれくらいのコストがかかりそうかを開発者自身が肌感覚で意識するようになってきました。これもまた、開発者が直接インフラを運用することができる AWS のメリットだと感じています」(野口氏)
ドワンゴでは、パートナー企業との協業で提供するサービスも多く、そこでは迅速な開発と同時に、セキュアな環境が求められます。「今後はセキュアな環境を迅速に構築するために AWS WAF を活用し、セキュリティグループの設定を行う予定です。セキュリティ関連機能のニーズは、ドワンゴの中でも今後さらに増えることが予想されます。そのため、AWS の中でも特にセキュリティ系のサービスについては、常にチェックしています」(野口氏)
また、これまでのようにオンプレミス環境をそのままクラウドへ移行するだけではなく、それらのインフラ環境をよりクラウドへ最適化していきたい、と野口氏は言います。たとえば、データベースの移行時に AWS Database Migration Service を活用してスキーマを最適化したり、AWS Elastic Beanstalk 使用して Docker で動かしているアプリケーションは、Amazon EC2 Container Service を活用することで効率的な管理を実現することも検討しています。「さらに Amazon ElastiCache や AWS Lambda、Amazon SQS など、AWS ならではのサービスも積極的に活用していきたいと思っています」(野口氏)
AWS クラウドがウェブアプリケーションにどのように役立つかに関する詳細は、ウェブサイトおよびウェブサイトホスティングの詳細ページをご参照ください。