構成例

さくらのクラウドを用いた動画配信システムの構築

動画配信のシステムを、さくらのクラウドを用いて構築する際のポイントを解説します。

要求
サイズの大きなコンテンツの収容と送信
広帯域を長時間占有する映像コンテンツの配信処理
同時アクセスす増加への対応
解決策
構成のサーバの利用
ルータ+スイッチによる広帯域ネットワークの構築
キャッシュサーバの導入と負荷分散

サイズの大きなコンテンツの収容と送信

動画配信システムの特徴のひとつは、配信するコンテンツのファイルサイズが大きいことです。動画ファイルのサイズは、エンコード方式・帯域・画面サイズなどによって大きく変動しますが、例えば帯域1Mbpsで30分程度の動画であれば250MB程度になります。1本の映像でこの量ですから、大量の動画ライブラリを保有するサイトでは、それを収容するだけの大容量ストレージが必要になります。
また、動画配信サーバは、コンテンツをクライアントに向けて送出する役割を担います。特にアクセスの多いサイトでは多数のファイルを並行して送信することになります。したがって、配信サーバもそれを処理できるだけの高性能なものが必要になります。
さくらのクラウドでは、CPU・メモリ・ディスクのサイズを自由にカスタマイズできます。したがって、配信するコンテンツの本数やアクセス規模に合わせて、適切な性能のサーバを構築することができます。

長時間かつ広帯域を占有する映像コンテンツの配信処理

動画ファイルの配信におけるもうひとつの問題は、ネットワークの帯域を広く、しかも長時間にわたって占有することです。例えば帯域1Mbpsの動画を配信する場合、ネットワークが100Mbpsなら同時に100本送信できると思われるかもしれませんが、実際には同じネットワークに他の通信トラフィックも流れているので、もっと少ない本数しか送れません。
動画のトラフィックでネットワークが輻輳するようであれば、より広帯域なネットワークを敷設する必要があります。さくらのクラウドでは、ルータ+スイッチを用いることで最大3Gbpsのインターネット回線を構築可能です。これなら大規模な配信サイトにも対応できるでしょう。

同時アクセス数増加への対応

通常、配信する動画は日々追加され、それにアクセスするユーザも増えていきます。しかし、すべての動画が同じ回数アクセスされるわけではなく、よく再生される動画とあまり再生されない動画に分かれていきます。このような状況において、全配信サーバに全動画ファイルを収容すると膨大なストレージが必要になり、またコンテンツを更新する際も全配信サーバにファイルをコピーすることになるため、効率的とは言えません。
これに対する有効な策は、配信システムをオリジンサーバとキャッシュサーバに分けて構成することです。それぞれの役割を以下に示します。

・オリジンサーバ
 ・全映像ファイルを格納します。
 ・キャッシュサーバ経由でリクエストを受け、コンテンツを送信します。

・キャッシュサーバ
 ・クライアントからのリクエストを受け付けます。
 ・サーバ内にコンテンツがあればそれを送信します。
 ・コンテンツがないときはオリジンサーバから入手してクライアントに送信するとともに、
  サーバ内にキャッシュします。

オリジンサーバは1-2台、キャッシュサーバは数台用意します。さくらのクラウドではサーバの追加/削除が簡単にできますので、アクセス数に応じて台数を加減できます。また、ロードバランサも装備していますので、キャッシュサーバの負荷分散も容易に設定できます。

システム構成と特徴~導入編~

上記のような要求に応える動画配信システムを、さくらのクラウドを用いて構築します。初期段階で考慮したいのは以下の点です。

最初は少数の高性能サーバで構築

前述の通り、動画配信サーバのシステム要件は高くなりがちです。さくらのクラウドで提供するサーバは、CPU 1コア・メモリ1GB・SSD 20GBが最小スペックですが、おそらくもっと高性能なものを用意した方がよいでしょう。

リソースの計算は綿密に

サーバに求められる性能は、動画ファイルの品質や本数、同時アクセス数によって変動します。よって、配信規模がどれぐらいになるかを予測し、それをもとにサーバのリソースを見積もります。一例を以下に示します。

・仮説
 ・動画の仕様:帯域1Mbps、1本あたり30分
 ・動画の本数:毎月5本ずつ追加
 ・同時アクセス数:最大50本

・必要なリソースの計算
 ・動画ファイルのサイズ:1Mbps x 60秒 x 30分 = 1800Mbit = 225MByte
 ・1年間に消費するディスクサイズ:225MB x 5 x 12 = 13.5GB
 ・占有する帯域幅の最大値:1Mbps x 50本 = 50Mbps

上記の計算から、ネットワークは100Mbpsで収まる程度、ディスクはシステム領域を加算すると40GB程度という見積ができます。メモリやCPUは配信ソフトウェアによって変わりますが、さくらのクラウドではCPUのコア数やメモリ量を随時変更できますので、運用しながら調整していくこともできます。

システム構成と特徴~拡張編~

配信するコンテンツが増え、同時アクセス数も多くなってきたら、オリジンサーバとキャッシュサーバを用いた構成に変更します。この時期のシステムの特徴は以下の通りです。

ルータ+スイッチによる広帯域ネットワークの新設

まず、ルータ+スイッチを契約して新しいインターネット回線を準備します。帯域は最大でどれぐらいになるかを予測し、それに応じた値に設定します。また、オリジンサーバを接続するローカルネットワークも作成します。

キャッシュサーバとオリジンサーバの設置

オリジナルの動画データを蓄積するオリジンサーバを1台、クライアントからのアクセスをさばくキャッシュ

ロードバランサを用いたキャッシュサーバの負荷分散

キャッシュサーバへの負荷分散はロードバランサが行います。キャッシュサーバの台数はアクセス状況を見ながら随時調整します。さくらのクラウドなら、イベント時など急激なアクセス増加が見込まれるときだけサーバを追加することも容易に行なえます。

システム構成と特徴~管理編~

さくらのクラウドには、システム管理に役立つさまざまな機能があります。おすすめの管理機能をいくつかご紹介します。

シンプル監視で正常動作を確認

システムの安定運用のためには、サービスが正常に稼働しているかどうかを常に監視する必要があります。ここで役立つのがシンプル監視です。サーバに対してpingやHTTPなどのプロトコルでアクセスし、異常発生時に通知します。

VPCルータを用いたメンテナンス回線の設置

動画配信サイトは大きなトラフィックが発生するので、インターネット側からサーバにログインするのが難しくなることがあります。対策として、VPCルータを用いてメンテナンス用の回線を設置し、作業時はそちらの回線からログインすることにより、高負荷時もストレスなく作業ができます。

資料請求・お問い合わせ