こんにちは。streampackのtsuchiです。

最近、業務で大量アクセスが想定される動画案件を経験したので、その際のノウハウを共有します。
AWSの構築/運用経験がある方にはお馴染みの「上限緩和申請」についての話です。

特に、動画配信環境において、注意が必要なポイントをご紹介します。

※本内容は、2019年3月29日時点のものとなります。

はじめに

AWSリソースにはデフォルトの制限があり、大きく分けてリソース数の制限性能の制限があります。

それらの制限を解放するために「上限緩和」が必要になります。
ここでは簡単に、「量」の上限緩和 ・「質」の上限緩和と表現します。

種類 説明
「量」の上限緩和 リソース不足を解消するために行う
「質」の上限緩和 高い性能の要件を満たすために行う

CloudFront

CDNとして使われるCloudFrontの上限をみてみましょう。
Amazon CloudFront の制限

リソース デフォルトの制限
ディストリビューションごとのデータ転送レート 40 Gbps
1 秒あたり、ディストリビューションあたりのリクエスト 100,000

(※「一般的な制限事項」から一部を抜粋)

これらを超える性能を求める際には、上限緩和が必要になります。
AWS マネジメントコンソールの「サポート」 – 「サポートセンター」 – 「Create case」から申請しましょう。

その際に申請する上限値の計算方法が複雑で面倒なのです……

こちらのドキュメントに計算式が記載されていますので、参考にしてみてください。
CloudFront上限緩和申請 計算方法&申請手順

■計算式
①動画の平均ビットレート(byte)×最大同時視聴数(人)=データ転送レート(bps)
②(1÷1セグメントあたりの長さ(秒)+1÷Cache TTL(秒))×最大同時視聴数(人)=リクエスト数/秒

ELB

ELBで緩和できる設定値は、「数の上限緩和」のみとなっています。
Elastic Load Balancing の制限

ただ、ELBには「暖機申請」というものが存在します。
あらかじめ急激な負荷が予想される場合には、この暖機申請が必要です。

検索するといろいろと情報は見つかりますので、申請方法や詳細はここでは割愛します。

EC2

AWSの上限緩和といえば「VPCの数」「EIPの数」がお馴染みです。
ですが、EC2関連で意外と忘れがちなのが「インスタンスタイプの数」。

あまり知られていないかもしれませんが、大きなインスタンスタイプだと
デフォルトで使用できる数が制限されていることがあります。

現状の上限値は、AWSマネジメントコンソールの「EC2ダッシュボード」-「制限」から確認できます。
事前に使用予定のインスタンスタイプの数に余裕があるか、確認しておきましょう。

Media Services

Media系のAWSマネージドサービスとはいえ、これにも上限は存在します。
どれくらいのリソース数・性能が必要なのか、事前に検証や確認の上、緩和申請をお忘れなく。

たとえば、MediaLive・MediaPackageは「チャンネル最大数」などの「量の上限緩和」、
MediaStoreは「1秒あたりのトランザクション最大件数」などの「質の上限緩和」を実施することができます。

おわりに

上限緩和申請をするには、AWSから上限値の妥当性が求められることがあります。
その際は申請後にAWSから追加情報を要求されるため、2,3日では申請が通らないこともあります。

スケジュールに余裕を持って申請を行い、安心して本番を迎えられるよう準備しましょう。

参考

AWS サービスの制限

元記事はこちら

大量アクセスに備える!!AWS上限緩和の注意点