本レシピでは、AWS EC2 上に AMD GPU 搭載の Windows インスタンスを作成して、その上に OBS Studio をインストールし、 クラウド上にリモート配信環境を構築します。
映像ソースは、SRT を使用してクラウドへ送ることとします。
また、NICE DCV を使うことで、 配信オペレーションにも耐えうる、低負荷かつ低遅延なリモートデスクトップ環境を実現します。
クラウドないし AWS に関する一般的な知識を有していることを前提とするので、解説は省きます。
AWS EC2 には NVIDIA GPU 搭載のインスタンスもあるのですが、 OBS Studio だけ起動するなら AMD GPU のインスタンスタイプがコスパに優れています。
以下は ap-northeast-1 (東京) での価格表です。us-east-1 (米国東部) ならもっと安いです。
インスタンスタイプ | GPU | OS | オンデマンド時間単価(USD/時) |
---|---|---|---|
g4dn.xlarge | 1 (NVIDIA T4) | Windows | 0.894 |
g4ad.xlarge | 1 (AMD RADEON PRO V520) | Windows | 0.69482 |
Linux インスタンスの場合は更にコスパがよくなりますが、セットアップの難易度が上がるため今回は Windows インスタンスとしています。
vMix を使用するならハードウェアエンコーダー (NVENC) が使える NVIDIA GPU のインスタンスタイプが推奨されます。 これは vMix が AMD GPU のハードウェアエンコーダーに対応していないためです。
- 有効な AWS アカウント (EC2 にアクセス可能な権限が必要)
- SRT 送信可能な配信ソフト (OBS Studio, Larix Broadcaster, vMix 等)
- ウェブブラウザが快適に動作する Windows PC (dGPU 無しのノートPCでも可)
Linux OS、Mac でも可能ですが本レシピでは Windows を前提とします
AWS EC2 で GPU インスタンスを使用するためには、一般的には GPU インスタンスのクオータ引き上げをリクエストする必要があります。 (GPU 資源は数量が限られるため、用途・使用状況を確認してクオータを引き上げている様です。 筆者が実施した時の話なので今は状況が変わっている場合があります)
クオータはリージョン毎に設定されているため、 特定のリージョンで GPU インスタンスを使用する場合はそのリージョンのクオータを引き上げる必要があります。
- AWS マネジメントコンソールにログインし、画面右上のプルダウンメニューでリージョンを選択 (例:
ap-northeast-1
) - サービス → Service Quotas に移動
- 左メニューの「AWS サービス」で
Amazon Elastic Compute Cloud (Amazon EC2)
を選択 Running On-Demand G and VT instances
を検索- 「適用されたアカウントレベルのクオータ値」を確認し、
0
の場合はクオータの引き上げが必要です。以下の手順に進んでください。 - リストに表示された「クオータの名称」をクリック。
- 「アカウントレベルでの引き上げをリクエスト」をクリック
- 「クォータ値を引き上げる」に必要な vCPU 数を入力。
GPU インスタンス最小の
xlarge
で vCPU が 4 つ搭載になるので、4 の倍数で入力してください (例:4
,8
,12
,16
, ...) - 「リクエスト」をクリック
実際にクオータが引き上げられるまでには時間がかかる場合があります。
リクエストの過程で不明な点があれば、 AWS サポートセンターに問い合わせてください。
次に、EC2 インスタンスに割り当てる IAM ロールを準備します。
ロールには、後の手順で必要となる NICE DCV ライセンス取得と、AMD GPU Windows ドライバーのダウンロード用のポリシーが必要となります。
IAM ロールは一度作成したら複数のインスタンスで使いまわすことが可能です。
-
AWS マネジメントコンソールにログインする
-
サービス → IAM に移動する
-
左メニューの「ポリシー」をクリック
-
「ポリシーの作成」をクリック
-
JSON タブをクリックして、以下の JSON を貼り付ける
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::dcv-license.ap-northeast-1/*" ] } ] }
-
「次へ」をクリック
-
「ポリシー名」にお好みの名前 (例:
My-DCVLicenseAccess-Policy
) を入力して、「ポリシーの作成」をクリック
- 左メニューの「ロール」をクリック
- 「ロールを作成」をクリック
- 信頼されたエンティティの種類:
AWS サービス
を選択 - ユースケース: プルダウンで
EC2
を選択して、一番上のEC2
にチェックを入れる - 「次へ」をクリック
- 検索欄で作成したポリシーの名前 (例:
My-DCVLicenseAccess-Policy
) を入力して検索し、リストでチェックを入れる - 検索欄で
AmazonS3ReadOnlyAccess
を入力して検索し、リストでチェックを入れる - 「次へ」をクリック
- 「ロール名」にお好みの名前 (例:
My-EC2-Role
) を入力して、「ロールを作成」をクリック
外部からのアクセスを許可する為に、必要なポートが解放されるセキュリティグループを作成します。
セキュリティグループも一度作成したら複数のインスタンスで使いまわすことが可能です。
ここでは RDP (初期設定に必要)、NICE DCV (リモートデスクトップ)、SRT (ビデオストリーミング) のためのセキュリティグループを作成します。
-
サービス → EC2 に移動する
-
左メニューの「セキュリティグループ」をクリック
-
「セキュリティグループを作成」をクリック
-
「セキュリティグループ名」にお好みの名前 (例:
My-EC2-OBS-SG
) を入力 -
「説明」に適当な説明 (例:
RDP / NICE DCV / SRT
) を入力 -
「VPC」でデフォルトのVPCを選択
-
「インバウンドルール」の「ルールを追加」をクリックして以下のルールを追加
タイプ プロトコル ポート範囲 ソース 説明(任意) RDP TCP 3389 Anywhere-IPv4 例: RDP(Remove later)
カスタムUDP UDP 8443 Anywhere-IPv4 例: NICE DCV
カスタムTCP TCP 8443 Anywhere-IPv4 例: NICE DCV
カスタムUDP UDP 20001-20010 Anywhere-IPv4 例: SRT
ご注意:説明を単純にするため全ての IP からの接続を許可しています。より安全にするためには特定のIPからの接続のみに制限してください。
-
「アウトバウンドルール」はデフォルトのままとする
-
「セキュリティグループを作成」をクリック
-
サービス → EC2 に移動する
-
「インスタンスを起動」をクリックする
-
ウィザードを使用して以下の様に設定する
- 名前: お好みの名前を付けてください (例:
OBS Studio server
) - Amazon マシンイメージ: クイックスタート → Windows →
Microsoft Windows Server 2022 Base
を選択 - インスタンスタイプ:
g4ad.xlarge
(AMD GPU搭載) を選択 - キーペア: 「新しいキーペアの作成」で作成して使用
- キーペア名: お好みの名前を付けてください (例:
My-EC2-Key
) - キーペアのタイプ: 「RSA」を選択
- プライベートキーファイル形式: 「.pem」を選択。キーペア作成後、ダウンロードフォルダにファイルがダウンロードされます。
- キーペア名: お好みの名前を付けてください (例:
- ネットワーク設定:
- セキュリティグループ: 「既存のセキュリティグループを選択する」を選択し、作成したセキュリティグループ (例:
My-EC2-OBS-SG
) を選択
- セキュリティグループ: 「既存のセキュリティグループを選択する」を選択し、作成したセキュリティグループ (例:
- ストレージ: 50 GB (最低限の容量。必要に応じて増やしてください) gp3 または gp2
- 高度な設定
- IAM インスタンスプロフィール: 作成したロール (例:
My-EC2-Role
) を選択 - ユーザーデータ:
<powershell> # 毎起動時にインスタンスストアをフォーマットして利用可能にします Get-Disk | ` Where-Object -FilterScript {($_.FriendlyName -Eq "NVMe Amazon EC2 NVMe") ` -And ($_.PartitionStyle -Eq "RAW")} | ` Initialize-Disk -PartitionStyle GPT -PassThru -confirm:$false | ` New-Partition -UseMaximumSize -AssignDriveLetter | ` Format-Volume -NewFileSystemLabel "Instance Store" -FileSystem NTFS -Force -confirm:$false if (!(Test-Path "D:\OBSRecord")) { New-Item D:\OBSRecord -type Directory } </powershell> <persist>true</persist>
- IAM インスタンスプロフィール: 作成したロール (例:
- 名前: お好みの名前を付けてください (例:
-
「インスタンスを起動」をクリック
-
Windows インスタンスは初期化に時間がかかるため、暫く (5分~10分程度) 待ってから リモートデスクトップで接続してください。
SRT で外部から接続を受け付けるため、インスタンスに固定 IP を割り当てると便利です。 そうしないと、インスタンスを開始するたびにアドレスが変わってしまいます。
- サービス → EC2 に移動する
- 左メニューから「Elastic IP」をクリック
- 「Elastic IP アドレスを割り当てる」をクリック
- 「パブリック IPv4 アドレスプール」が
Amazon の IPv4 アドレスプール
、 「ネットワークボーダーグループ」がap-northeast-1
になっていることを確認し「割り当て」をクリック - 割り当てられた IP アドレスをリストから右クリックし、コンテキストメニューから「Elastic IP アドレスの関連付け」をクリック
- 「リソースタイプ」は
インスタンス
を選択 - 「インスタンス」で先ほど作成したインスタンスを選択
- 「関連付ける」をクリック
Elastic IP はインスタンスが開始されていなくても課金されます (1 時間あたり 0.005 USD)
最終的には NICE DCV に移行しますが、初期設定はリモートデスクトップ (RDP) で行います。
- 左メニューの「インスタンス」をクリック
- 先ほど起動したインスタンス (例:
OBS Studio server
) を検索して選択 - 「インスタンスの概要」から「パブリック IPv4 DNS」をコピー
- お手元の Windows PC でスタートメニュー → 「Windows アクセサリ」 → 「リモートデスクトップ接続」を起動し、 「コンピューター」に先ほどコピーした「パブリック IPv4 DNS」を入力して「接続」をクリック
- 「このリモート接続を信頼しますか?」と聞かれるので「接続」をクリック
- 「資格情報を入力してください」が表示されるので、
- ユーザー名:
Administrator
- パスワード: 以下の手順でパスワードを入手
- AWS マネジメントコンソールに戻ってインスタンスを右クリックし、 コンテキストメニューから「セキュリティ」→「Windows パスワードを取得」をクリック
- 「プライベートキーファイルのアップロード」をクリックして、
インスタンス時に作成したプライベートキーファイル (ダウンロードフォルダにダウンロードされている
.pem
ファイル) を選択しアップロード - 「パスワードを復号化」をクリックして、表示されたパスワードをコピーしてリモートデスクトップのパスワードに張り付け
- ユーザー名:
- 「このリモートコンピューターのIDを識別できません。接続しますか?」と聞かれるので「はい」をクリック
-
リモートデスクトップ接続でインスタンスに接続する
-
スタートメニューを右クリックし「Windows PowerShell」を起動
-
以下のスクリプトを PowerShell にペーストして実行
$Bucket = "ec2-amd-windows-drivers" $KeyPrefix = "latest" $LocalPath = "$home\Desktop\AMD" $Objects = Get-S3Object -BucketName $Bucket -KeyPrefix $KeyPrefix -Region us-east-1 foreach ($Object in $Objects) { $LocalFileName = $Object.Key if ($LocalFileName -like "*/AMD_GPU_WINDOWS_2K22_*" -and $Object.Size -ne 0) { $LocalFilePath = Join-Path $LocalPath $LocalFileName Copy-S3Object -BucketName $Bucket -Key $Object.Key -LocalFile $LocalFilePath -Region us-east-1 } }
スクリプトを最後まで実行すると、デスクトップに
AMD
フォルダが作成され、ドライバーがダウンロードされます -
以下のスクリプトを PowerShell にペーストして実行
Expand-Archive $LocalFilePath -DestinationPath "$home\Desktop\AMD\$KeyPrefix" -Verbose
ドライバが解凍されます。
-
以下のスクリプトを PowerShell にペーストして実行
pnputil /add-driver $home\Desktop\AMD\$KeyPrefix\*.inf /install /subdirs
ドライバのインストールが実行されます。
-
インストールが完了したら、Windows インスタンスを再起動してください。
-
再起動後、デバイスマネージャーで
AMD Radeon Pro V520
が表示されていることを確認してください。 デスクトップのAMD
フォルダは削除しても構いません。
- リモートデスクトップ接続でインスタンスに接続する
- ブラウザで NICE DCV Server インストーラー Windows (x86_64) をダウンロード
- インストーラーを実行してインストール
- 「Components Selection」で
USB Driver
を有効にする - 「DCV Service Configuration」では、全てのチェックボックスを「チェック無し」とする
- 「DCV Session Management Configuration」では、チェックボックスを「チェック無し」とし、ユーザーは
Administrator
のままとする。
- 「Components Selection」で
- タスクバーの検索窓に
regedit
と入力してエンターを押し、レジストリエディタを起動 以下のキーに値をそれぞれ作成してください。Computer\HKEY_USERS\S-1-5-18\Software\GSettings\com\nicesoftware\dcv\connectivity
enable-quic-frontend
:1
(DWORD (32-bit) Value)idle-timeout
:0
(DWORD (32-bit) Value)
Computer\HKEY_USERS\S-1-5-18\Software\GSettings\com\nicesoftware\dcv\session-management\automatic-console-session
storage-root
:%home%/Documents/
(String Value)
- インスタンスを再起動してください。
- 以降は NICE DCV で接続します。お手元の PC に NICE DCV Client をインストールしてください。
- NICE DCV Client を起動し、インスタンスの「パブリック IPv4 DNS」を入力して接続してください (「インスタンスの概要」→「パブリック IPv4 DNS」)
- 「Your connection is not secure」と表示されるので「Trust and Connect」をクリック
- 「Username」には
Administrator
、パスワードはリモートデスクトップ接続で使用したものと同じです。
Windows Server 2022 はデフォルトで英語環境なので、日本語化したい場合は以下の手順に従ってください。 英語環境のままで良い場合はこの手順をスキップできます。
-
スタートメニュー → 「歯車アイコン」をクリックして「設定」を開く
-
「Time & Language」をクリック
-
左メニューで「Language」をクリック
-
「Add a language」をクリック
-
Japanese
を検索して選択 -
「Next」をクリック
-
「Install language features」では全てのチェックボックスにチェックを入れる
-
「Install」をクリック
-
ダウンロード&インストールにしばらく時間がかかります
-
インストールが完了すると、サインアウトを促されるので、「Yes, sign out now」をクリックし、再度サインインしてください。
ログイン画面ではパスワードのペーストができないので、NICE DCV Client を切断して再接続するのがよいでしょう。
-
スタートメニュー → 「歯車アイコン」をクリックして「設定」を開く
-
「時刻と言語」をクリック
-
左メニューで「日付と時刻」をクリック
-
「タイムゾーン」を
(UTC+09:00) 大阪、札幌、東京
に変更 -
左メニューで「地域」をクリック
-
「国または地域」を
日本
に変更 -
「日付、時刻、地域の追加設定」をクリック
-
「時計と地域」で「地域」をクリック
-
「地域」で「管理」タブを開き「設定のコピー」をクリック
-
「現在の設定のコピー先」で全てのチェックボックスにチェックを入れる
-
「OK」をクリック
-
再起動を促されますが「後日」をクリック
-
「システムロケールの変更」をクリック
-
「現在のシステムロケール」を
日本語 (日本)
に変更 -
「OK」をクリック
-
再び再起動を促されるので「今すぐ再起動」をクリックしてインスタンスを再起動してください
OBS Studio 公式サイト でインストーラーをダウンロードしてインストールしてください。
インストールしたらとりあえず起動するかテストしましょう。 デスクトップに作成された OBS Studio のショートカットをダブルクリックして起動してください。
デフォルトで OBS Studio への外部からのコネクションはブロックされているので、 以下の手順で Windows Defender ファイヤーウォールを設定してください。
- スタートメニュー →「Windows 管理ツール」→「セキュリティが強化された Windows Defender ファイアウォール」を起動
- 左ツリー →「受信の規則」を選択
- 「操作」→「新しい規則」をクリック
- 「どの種類の規則を作成しますか?」では
プログラム
を選択 - 「次へ」をクリック
このプログラムのパス
を選択し%ProgramFiles%\obs-studio\bin\64bit\obs64.exe
を入力- 「次へ」をクリック
接続を許可する
を選択- 「次へ」をクリック
- 「この規則はいつ適用しますか?」では全てのチェックボックスにチェックを入れる
- 「次へ」をクリック
- 「名前」に適当な名前 (例:
obs-studio
) を入力する - 「完了」をクリック
Administrator のままでも使えますが、ユーザーを追加しておくとセキュリティ上のリスクを軽減できます。
- スタートメニュー →「管理ツール」→「コンピューターの管理」を起動
- 右のツリーから「システムツール」→「ローカルユーザーとグループ」→「ユーザー」を選択
- リストで右クリックし、コンテキストメニューから「新しいユーザー」をクリック
- 「ユーザー名」と「パスワード」「パスワードの確認入力」を入力
- チェックボックスは全て外してください。
- 「作成」をクリック
- 「閉じる」をクリック
NICE DCV のインストール時にセッション所有者を Administrator に設定しているため、このままだと追加したユーザーで接続できません。 以下の手順でセッション所有者を追加したユーザーに変更してください。
- タスクバーの検索窓に
regedit
と入力してエンターを押し、レジストリエディタを起動 コンピューター\HKEY_USERS\S-1-5-18\Software\GSettings\com\nicesoftware\dcv\session-management\automatic-console-session
に移動owner
の値をAdministrator
から追加したユーザー名に変更- レジストリエディタを閉じてインスタンスを再起動してください
- 再起動後、再び NICE DCV Client を起動し、追加したユーザーでログインしてください。
以降、Administrator では NICE DCV に接続出来なくなります。 設定に失敗した場合は、リモートデスクトップ接続で Administrator にログインしてレジストリを修正してください。
ユーザーでログインした場合、再起動・停止の方法が変わります
スタートメニューからの再起動・シャットダウンは無効化されているので、
- NICE DCV の右上のプルダウンメニューから「Ctrl + Alt + Del」をクリック
- 「サインアウト」をクリック
- 再びNICE DCV の右上のプルダウンメニューから「Ctrl + Alt + Del」をクリック
- 画面右下の「電源ボタン」をクリック
- 「シャットダウン」または「再起動」をクリック
その他 (計画外)
を選択- 「続行」をクリック
ここでは、SRT を使用して入力を受け付け、AMD GPU のハードウェアエンコーダーを使用してフルHDで配信する設定を行います。
デフォルトでは、プライバシー設定でマイクとカメラが無効化されているので、以下の手順で有効化してください。
この設定はしなくても使用可能ですが、NICE DCV のリモートマイク・ウェブカメラ機能が使えるので、設定しておくのがお勧めです。
- スタートメニュー →「歯車アイコン」をクリック
- 左メニューで「カメラ」をクリック
- 「アプリがカメラにアクセスできるようにする」をオンにする
- 左メニューで「マイク」をクリック
- 「アプリがマイクにアクセスできるようにする」をオンにする
- OBS Studio を起動
- 「設定」をクリック
- 左メニューで「出力」をクリック
- 以下の様に設定
- 配信
- 出力モード:
基本
のまま - 映像ビットレート: 1080 30p の場合は
5000 Kbps
、1080 60p の場合は10000 Kbps
を目安とする (コンテンツによって推奨は異なる) - 音声ビットレート:
160
のまま - 映像エンコーダ:
ハードウェア(AMD, H.264)
- エンコーダプリセット:
Balanced
のまま - カスタムエンコーダ設定を有効にする: チェック無しのまま
- 音声エンコーダ:
AAC (規定値)
のまま
- 出力モード:
- 録画
- 録画ファイルのパス:
D:
ドライブ以下のフォルダに変更 (理由と注意点は後述) - スペースなしのファイル名を生成する: チェック有り無しどちらでも可
- 録画品質:
配信と同じ
のまま - 録画フォーマット:
Matroska Video (.mkv)
がおすすめ
- 録画ファイルのパス:
- 配信
- 「適用」をクリック
- 左メニューで「映像」をクリック
- 以下の様に設定
- 基本(キャンバス)解像度:
1920x1080
- 出力(スケーリング)解像度:
1920x1080
- FPS共通値:
30
または60
- 基本(キャンバス)解像度:
- 「適用」をクリック
- 左メニューで「配信」をクリック
- 「サービス」で目的の配信先を選択して、アカウント接続やストリームキー設定を行ってください。
- 「OK」をクリック
- 「ソース」ドック→「プラス記号」→「メディアソース」をクリック
- 「新規作成」を選択し、適当な名前 (例:
SRT1
) を入力 - 「OK」をクリック
- 「ローカルファイル」からチェックを外す
- 以下の様に設定
- ネットワークバッファリング:
0 MB
(遅延を減らすため)
※映像や音声が安定しない場合は1 MB
以上に設定してください。お使いのインターネット環境によって適切な値が異なります。 - 入力:
srt://0.0.0.0:20001?mode=listener&passphrase=[パスフレーズ]&pbkeylen=16&latency=[レイテンシ(μ秒)]
20001
: 接続ポート番号。セキュリティグループの設定で20001
~20010
の数字が使用可能になっています[パスフレーズ]
: 接続保護&暗号化用のお好きなパスフレーズ (例:mypassphrase
)[レイテンシ(μ秒)]
: SRTプロトコルで挿入される遅延をマイクロ秒単位で指定。
- 入力フォーマット:
mpegts
- 再接続の遅延:
1 S
- 再生終了時に何も表示しない: チェック有り無しどちらで可 (SRT接続が切れた時に表示を消したい場合はチェックを入れる)
- ネットワークバッファリング:
- 「OK」をクリック
- 以上で配信ソフトから SRT で接続可能となります
(URL は
srt://[インスタンスのグローバルIPアドレス]:30001?mode=caller&passphrase=[パスフレーズ]&pbkeylen=16&latency=[レイテンシー(μ秒)]
)
必要に応じて、インスタンスにログインした時に OBS Studio が自動的に起動する様にしましょう。 不要ならこの手順をスキップしてください。
- エクスプローラーを開いて
C:\Users\[ユーザー名]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
に移動 - 右クリックし、コンテキストメニュー →「新規作成」→「ショートカット」をクリック
- 「項目の場所を入力してください」に
"C:\Program Files\obs-studio\bin\64bit\obs64.exe"
を入力 - 「次へ」をクリック
- 「ショートカットの名前を入力してください」にお好みの名前 (例:
OBS Studio
) を入力 - 「完了」をクリック
- 作成されたショートカットを右クリックし、コンテキストメニュー →「プロパティ」をクリック
- 「実行時の大きさ」を
最大化
に変更 - 「OK」をクリック
- インスタンスを再起動して、再度 NICE DCV でログインした後に OBS Studio が自動的に起動することを確認してください
先ほど録画ファイルのパスを D:
ドライブにしましたが、
D:
ドライブは インスタンスストア
という特殊なストレージが接続されています。
この「インスタンスストア」は低レイテンシ・高スループット・高 IOPS と3拍子揃っていて、録画ファイル書き出しに向いたストレージですが、 インスタンスを停止するとデータが消失する揮発性のストレージなので、何もしないと録画したファイルが消失してしまいます (再起動では消えません)
必ずインスタンスを停止する前に、ローカルにダウンロードする等、録画ファイルを保存してください。
尚、作成したフォルダも消えるので、インスタンスのユーザーデータにスクリプトを追加して、起動毎にフォルダを作成する様にしてください。
尚、本レシピではインスタンス作成時のユーザーデータに追加済みです。
D:\OBSRecord
は OBS Studio で録画フォルダに指定したパスに変更してください。
-
AWS マネジメントコンソールにログインする
-
サービス → EC2 に移動する
-
左メニューから「インスタンス」をクリック
-
インスタンスを検索。インスタンスが稼働中の場合は停止してください。
-
リストからインスタンスを右クリックし、コンテキストメニュー →「インスタンスの設定」→「ユーザーデータを編集」をクリック
-
「ユーザーデータをテキストで変更」を選択
-
入力欄で、
</powershell>
の行の前に以下のスクリプトを追加if (!(Test-Path "D:\OBSRecord")) { New-Item D:\OBSRecord -type Directory }
-
「保存」をクリック
セキュリティグループから RDP のポートを削除して、外部からのリモートデスクトップ接続を無効化しましょう。
- AWS マネジメントコンソールにログインする
- サービス → EC2 に移動する
- 左メニューから「セキュリティグループ」をクリック
- 作成したセキュリティグループを検索し、リストからセキュリティグループをクリック
- 「インバウンドルール」タブを選択
- 「インバウンドのルールを編集」をクリック
RDP
の行を探して「削除」をクリック- 「ルールを保存」をクリック
インスタンスを起動しっぱなしにすると、無限に課金され続けるので、使用しない時は停止しておきましょう。
- サービス → EC2 に移動する
- 左メニューから「インスタンス」をクリック
- インスタンスを検索して、リストからインスタンスを右クリックし、コンテキストメニュー → 「インスタンスを停止」をクリック
- 確認されますので「停止」をクリック
「インスタンスを終了」するとインスタンスが削除されてしまいます。
AWS EC2 用語 動作 起動 インスタンスを新規作成する 開始 インスタンスを稼働状態にする 停止 インスタンスを停止状態にする 終了 インスタンスを削除する
今回作成したインスタンスは vCPU x 4 の xlarge
でしたが、これではスペックが不足するといった場合は強化することが可能です。
当然、時間当たりの単価も増えますのでご注意ください。
セットアップ時は一番低く設定して節約し、本番時に強化するという使い方も可能です。
- サービス → EC2 に移動する
- 左メニューから「インスタンス」をクリック
- インスタンスを検索。インスタンスが稼働中の場合は停止してください。
- リストからインスタンスを右クリックし、コンテキストメニュー →「インスタンスの設定」→「インスタンスタイプを変更」をクリック
- 「新しいインスタンスタイプ」で
g4ad
と入力し、表示された候補からお好みのものを選択してください。 参考:Amazon EC2 G4 インスタンス詳細 - 「適用」をクリック
- インスタンスを開始すると、新しいインスタンスタイプが適用されます。
AWS は初期費用が掛かりませんが、その代わり使用量に応じて課金されます。
EC2インスタンスの料金は 稼働時間 * 単価
ですが、それ以外にも料金がかかるリソースがあります。
ここではサンプルケースとして 1ヶ月 (4週) のうち毎週末に 4 時間配信したものとし、
データ送信レートは
- 配信ビットレート: 8 Mbps
- NICE DCVビットレート: 10 Mbps (配信中は繋ぎっぱなしとする)
とします。
セットアップ作業は含まないものとし、掛かる費用の見積もりは以下の通りとなります。
リソース | 料金 (ap-northeast-1 リージョン) |
---|---|
EC2インスタンス(g4ad.xlarge) | 0.69482 USD * 4 時間 * 4 = 約 11.117 USD |
Elastic IP | 0.005 USD * 730 時間 = 3.65 USD |
ストレージ(EBS gp3) | 0.096 USD * 50 GB * 1 ヶ月 = 4.8 USD |
アウトバウンドデータ転送 | 0.114 USD * (8 Mbps + 10 Mbps ) * 57,600 秒 / 8,192 = 約 14.428 USD |
インバウンドデータ転送 | 無料 |
合計 | 33.995 USD / 月 |
これ以外にも、ストレージの IOPS キャパシティを増加したり、詳細な監視を入れたりすると追加料金が発生します。 有料のリソースは多岐にわたるため、詳細な説明は省略します。
上記は ap-northeast-1 リージョンでの価格ですが、us-east-1 にするとより割安となります。 但し、ロケーションが日本国内からは遠くなり、NICE DCV の操作レスポンスに影響する場合があります。
国外リージョンを使う場合、ただ画面合成してエンコードして配信するだけなら問題ないですが、頻繁にスイッチングしたい場合は遅延が厳しいかもしれません。