映像配信サーバを構築して試験する

Cloudn上にサーバを2台東日本リージョンに1台、西日本リージョンに1台立てました。このサーバを映像配信に利用します。

この2台は、1台構築してしまえばあとはテンプレート機能を利用して何台でも複製可能です。クラウドのVMのいいところ。何台でも負荷に耐えられるぶんだけどんどん複製してしまえばOKです。

HLSにて配信します。rtmpで配信していた時には、明確に何拠点接続にきていてというのが分かったのですが、HLSにすると、tsファイルのダウンロードのみになるので、何拠点接続にきていて、今帯域をどのくらい利用しているかというのは分かりにくくなります。

速度計測は、speedtest-cliを利用しサーバの速度を測定します。

サーバA

# ./speedtest-cli --server 6476
Retrieving speedtest.net configuration...
Testing from Cloudn (153.149.163.34)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by rxy (individual) (Osaka) [1.83 km]: 15.147 ms
Testing download speed................................................................................
Download: 291.87 Mbit/s
Testing upload speed................................................................................................
Upload: 103.60 Mbit/s

サーバB

# ./speedtest-cli --server 14840
Retrieving speedtest.net configuration...
Testing from Cloudn (153.149.96.47)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by poteitoo (Nagoya) [140.55 km]: 25.157 ms
Testing download speed................................................................................
Download: 127.09 Mbit/s
Testing upload speed................................................................................................
Upload: 83.34 Mbit/s

速度は対象とするサーバにより変わる為、サーバは一番高速が記録されるサーバにて指定します。サーバを探す際は

# ./speedtest-cli --list |egrep 'Japan'

として、サーバIDを確認し、物理的な距離が近いサーバを指定して速度を測定していき、一番成績のいいサーバを見つけます。特に、Upload速度を注視します。サーバを固定したら、そのサーバとの速度を常時計測し、異常に遅くならないかを確認していきます。

今、どのくらいの拠点が接続にいているかを確認するにはgoaccessを利用します。

# goaccess /usr/local/nginx/logs/access.log -o /usr/local/nginx/html/dashbord/report.html --real-time-html --log-format=COMBINED --hour-spec=min --date-spec=hr &

概算になってしまいますが、ある程度の目安が確認できます。

nginxアクセスログ解析をリアルタイムで行いたい GoAccess

帯域をみるならCloudnもいいかもです

Cloudn Monitoringからリソースを選択、Network I/Oを確認する事でそのVMが利用しているネットワーク帯域が分かります。

ログとLinuxコマンドを利用して数を出してみる

# egrep '200' access.log |egrep 'http://cloudn01.hanako.jp/event/jp.html' | awk '{print $1}' |sort |uniq

正常応答200を返している配信ポイントのアクセスのIPアドレスだけを抽出します。これを確認すると、どのくらいの台数から接続があるのかが分かります。後は時間を追加してやれば、どの時間の範囲で接続に来ている台数というのが分かります。

アップロード速度は大丈夫か?

speedtest.cliを利用して速度を測定し、重要な指標はアップロード速度です。後は、Cloudnのモニター機能を利用し、速度がどのくらい出ているかを確認します。速度測定した60%くらいなら大丈夫と判断しています。