プライベートなクラウドゲーミングPCをAWSで構築する

プライベートなクラウドゲーミングPCをAWSで構築する

2020年にローンチされたクラウドゲーミングサービス「GeForce NOW」をご存じでしょうか。PCゲームをクラウド上のCPUやグラフィックボードで処理し、スマートフォンやPCなどのクライアントに配信する。つまり処理速度が遅い弱小PCでもゴリゴリな高負荷PCゲームも快適にプレイできてしまう・・・・・・そんな夢のようなサービスがSoftbankとauから提供されています。

だがしかし・・・。

クラウドゲーミングサービス「Geforce NOW Powerd by Softbank」

現状は遊べるタイトルが非常に限られてしまう、リッチなネットワーク環境ではないと高画質でプレイできない、海外のGeForce NOWサービスに比べて機能や価格の面で劣っているなど、不満な部分も多いのも事実。特に遊べるタイトルが少ないのは非常に痛い・・・。肌感覚では話題の新作ゲームの半分ほどは対応していないため、対応タイトルの少なさでサービス加入を躊躇している方は多いのではないでしょうか。

そこで「GeForce NOW 的なサービスを自作してしまったらどうだろうか」と考えて情報収集したところ、Amazon Web ServiceのEC2をうまく利用すればクラウド上で動作するゲーミングPCを作成可能ということがわかり、早速構築してみました。

GeForce NOWライクなサービスを自作しよう!

今回構築するゲーミングクラウドPCは、ざっくり説明するとAWS EC2で動作するWindows ServerにParsecでリモート接続し、SteamやOrigin、Epic Gamesなどからオンラインでゲームをインストールし、プレイするという流れになります。

EC2のインスタンスはできる限りコストを抑えたいため、プレイするときだけ立ち上げるスポットインスタンスにします。スポットインスタンスの場合は解放するとストレージも消滅されてしまうため、面倒ですが終了前に都度イメージを作成し、AMIとスナップショットを取得するようにします。開始時はAMIとスナップショットから新たにスポットインスタンスを作成する流れです。

重要なことなので先に明記しておきますが、EC2の利用コストは決して安くなく、1時間120円程度かかります。またインスタンスのグラフィック性能についても、感覚ですがGeForce RTX 2060ぐらいの性能です。グラフィックはゲームにもよりますが、フルHDのレイトレーシングOFFの最高設定でプレイするのが限界でした。さらにリモート接続なのでレイテンシー(遅延)はある程度発生します。遅延はクライアントのネットワーク環境に左右されてしまいますが、Parsecのおかげかあまり気にしないレベルです。ですがガチなFPSだとちょっとキツいですね。

ストリーミングアプリの「Parsec」はコントローラー接続に対応していますが、なぜか私の環境ではうまく動作しませんでした。どうしてもコントローラー接続したい方はSteamのストリーミング機能の利用をお勧めします。モバイルデバイスからプレイする場合もSteamのほうがよさげですね。

AWSでインスタンスを作成

自作する際に下準備をしておきましょう。

  • Amazon Web Service でインスタンスを作成できる状態に
  • Parsecに登録(無料)、クライアント側にアプリをインストール
  • Microsoft Remote Desktop [Windows | Mac]をインストール(初回セットアップ用)

下準備ができたら早速取りかかりましょう。

AMIを選択する

はじめにAWS EC2のインスタンスを作成します。幸いなことに、AWS MarketplaceにNVIDIAよりゲーミングPC用のAMI(マシンイメージ)が用意されているので、コレを使って構築します。

AMI選択ページの検索欄に「nvidia gaming」(❶) と入力し、AWS Marketplace (❷)を選択、表示されるAMI一覧より「NVIDIA Gaming PC – Windows Server 2019」(❸) を選択します。

プライベートなクラウドゲーミングPCをAWSで構築する

インスタンスタイプを選択する

インスタンスタイプはAmazon EC2 G4dn インスタンスを利用します。G4dnインスタンスは、Nvidiaの「T4」というデータセンター向けGPUを搭載したインスタンスで、これでゲームをグリグリ動かします。

今回は「g4dn.1xlarge」のCPU 4コアですとパフォーマンス不足だったため、上位のCPU 8コアの「g4dn.2xlarge」を選択しました。インスタンスは都度立ち上げるスポットインスタンスにするため、はじめは「g4dn.1xlarge」を選択し、パフォーマンス不足を感じたら徐々に上位のインスタンスに切り替えるなどして、自分向けのインスタンスタイプを発掘してみてはいかがでしょうか。

インスタンスの詳細を設定する

先ほど選択した「g4dn.2xlarge」はかなり高価なインスタンスタイプのため、必要なときだけ立ち上げるスポットインスタンスとして作成します。購入オプションの「スポットインスタンスのリクエスト」(❶)にチェックを入れてください。

その後「次のステップ:ストレージの追加」(❷) をクリックして設定を進めます。

プライベートなクラウドゲーミングPCをAWSで構築する

ストレージを構成する

ルートのデバイスの容量を変更します。Windows ServerではCドライブとしてマウントしますので、OSを含めた容量を設定する必要があります。この容量があまりにも大きすぎると、終了時のイメージを作成する際にかなり時間がかかってしまいます(EBSの金額にも影響してきます)。少なすぎるとゲーム自体インストールすることができなくなるし・・・なかなか悩ましいですが、128GB〜256GBが現実的ではないでしょうか。

なお「g4dn.2xlarge」には225GBのMVMe SSDが付属しますが、こちらはインスタンスを起動・再起動した際に内容が消去されるため今回は利用しません。スルーでOKです。(起動時に都度ゲームをインストールする場合は有用かもしれませんが)

プライベートなクラウドゲーミングPCをAWSで構築する

ポート開放はMicrosoft Remote Desktopのみ

セキュリティグループの設定では、Microsoft Remote Desktopで利用する「3389番ポート」だけ開くようにしてください。Microsoft Remote Desktopは初回のセットアップだけ利用し、Parsecインストール後は不要になります。そのためセットアップ完了後は閉じてしまって結構です。

プライベートなクラウドゲーミングPCをAWSで構築する

インスタンスを起動する

インスタンス作成の確認ページで内容を確認して起動します。キーペアの選択画面が表示されますが、都合に合わせて既存のキーを使用するか新規作成するか選択してください。

プライベートなクラウドゲーミングPCをAWSで構築する

起動してから利用するまで10分程度時間がかかります。インスタンスのステータスが「2/2 のチェックに合格しました」とグリーンのテキストで表示されたら準備完了です。

プライベートなクラウドゲーミングPCをAWSで構築する

リモートデスクトップでセットアップ

インスタンスを作成したら、次はリモートデスクトップに接続して初回のセットアップを行います。

リモートデスクトップの接続情報を取得する

サーバの接続情報を表示するため、インスタンス一覧から先ほど作成したインスタンスを右クリックし「接続」をクリックします。

プライベートなクラウドゲーミングPCをAWSで構築する

「RDP クライアント」(❶)をクリックし、「パスワードを取得」(❷)をクリックします。

プライベートなクラウドゲーミングPCをAWSで構築する

「Browse」(❶)をクリックし、表示されるダイアログからインスタンス作成の際に最後に設定したキーペアを選択します。その後「パスワードを復号化」(❷)ボタンをクリックします。

プライベートなクラウドゲーミングPCをAWSで構築する

先ほどのページに戻り、パスワードが表示されていることを確認します。「Public IP」(❶)と「パスワード」(❷)は、この次のリモート接続する際に利用するため、メモるか閉じずにこのままにしておきます。

プライベートなクラウドゲーミングPCをAWSで構築する

Microsoft Remote Desktopでリモート接続する

「Microsoft Remote Desktop」を起動し、先ほど取得した接続情報を入力し接続します。「PC name」(❶)にPublic IPを入力し「Save」(❷)ボタンをクリックします。

その後に認証情報の入力を求めるダイアログが表示されるので、Usernameには「Administrator」(❸)、Passwordには先ほど取得したパスワード(❹)を入力し、「Continue」(❺)をクリックします。

プライベートなクラウドゲーミングPCをAWSで構築する

無事にWindowsのデスクトップが表示されたら成功です!

プライベートなクラウドゲーミングPCをAWSで構築する

Windows Serverの日本語化

立ち上げたばかりのWindows Serverは英語版なので、わかりやすく日本語化します。日本語化の方法は以下の記事にまとめましたので、こちらを参考に変更してください。

自動ログインの設定

プライベートなクラウドゲーミングPCをAWSで構築する

Windows Server起動時に自動ログインするように設定します。そうすることで、インスタンス立ち上げ時に認証をすっ飛ばしてParsecの接続を待機できるようになります。

コマンドプロンプトを起動し「netplwiz」と入力し、「ユーザー アカウント」を開きます。

「ユーザーがこのコンピュータを使うには、ユーザー名とパスワードの入力が必要」のチェック外します。パスワードの入力が求められますので、リモート接続の際に入力したパスワードを入力してください。

バーチャルサウンドデバイスのインストール

AWSのWindws Server 2019にはサウンドデバイスがないため、サウンドを出力することができません。そこでバーチャルサウンドデバイスをインストールし、サウンドを出力できるようにします。今回はVB-AUDIO Softwareの「VB-CABLE Virtual Audio Device」をインストールします。

Nvidia提供のインスタンスは素晴らしいことにGoogle Chromeが最初からインストールされています。Google Chromeを起動し、以下のURLよりドライバーをダウンロードし、「VBCABLE_Setup_x64.exe」を実行します。

プライベートなクラウドゲーミングPCをAWSで構築する

インストールが完了したら音量変更などを行い、効果音が聞こえるかどうか確認してください。

Parsecのインストール

次に「Parsec」をインストールします。以下のURLよりダウンロードしインストールしてください。

プライベートなクラウドゲーミングPCをAWSで構築する

起動後、下準備で作成しておいたアカウントでログインします。最初のログインの際にエラーメッセージが表示され、登録したメールアドレスまで認証メールが送信されます。承認後改めてログインしてください。

プライベートなクラウドゲーミングPCをAWSで構築する

ログイン後、以下の画面が表示されれば成功です。

プライベートなクラウドゲーミングPCをAWSで構築する

Parsecをスタートアップに登録する

プライベートなクラウドゲーミングPCをAWSで構築する

Windows Server起動時にParsecを自動で起動するようにします。

スタートボタンを右クリックし、ファイル名を指定して実行で「shell:startup」と入力するとスタートアップフォルダが開きますので、ここにショートカットを登録します。

スタートメニューからサクッと登録してしまうのが手軽でおすすめです。

プライベートなクラウドゲーミングPCをAWSで構築する

Parsec経由で操作できるようになれば、リモートデスクトップは必要ないため、インスタンスの3389番ポートは閉じてしまって大丈夫です。ただメンテナンス用に空けておくのもいいかもしれません。

インスタンスのイメージを保存する

クラウドゲーミングPCの作成が完了したら、一度インスタンスのイメージを取得しておきましょう。EC2のインスタンス一覧ページに移動し、インスタンスを右クリックして「イメージとテンプレート」→「イメージを作成」をクリックします。

プライベートなクラウドゲーミングPCをAWSで構築する

イメージ作成画面に移動します。イメージ名を適当に入力し保存します。保存完了まで少々時間がかかりますが気長に待ちましょう。

プライベートなクラウドゲーミングPCをAWSで構築する

AMIの取得が完了したらインスタンスを終了してOKです。

AMIの取得はゲームを終了する際に毎回行ってください。AMIの取得すなわち次回起動のためのデータ保存と考えていただいて結構です。

なおAMIを残せば残すだけ料金がかかってしまうため、取得後は古いAMIを自身の判断で削除いただいて結構です。そしてAMI削除後は紐付いているスナップショットを削除しましょう。

クラウドゲーミングPCを起動する

PCを立ち上げる場合は、EC2のAMIページに移動し(❶)、保存してあるAMIを右クリックして起動します。起動時のインスタンスの設定は、はじめにスポットインスタンスを作成した要領とほぼ同じです。毎回インスタンスの設定が面倒な場合は、テンプレートを作成しておくなど工夫してみるのもいいかもしれません。

プライベートなクラウドゲーミングPCをAWSで構築する

立ち上げ後はParsecで接続するだけです。

ポテンシャルが高いプライベートクラウドゲーミングPC

クラウドゲーミングPCはうまく作成できたでしょうか。無事に起動できたら、あとはゲームをインストールしてプレイしてみてください。Parsecで接続してプレイする関係上、ゲーム自体の設定調整の必要があったり、OS自体の調整の必要が出てくるかもしれません。

実際に運用していくと様々な問題が生じるかと思います。たとえばウチの子の場合は起動時に解像度がリセットされるなど、なかなか手間がかかる憎い子です。

ですがそれがまた楽しいのです。起動するごとに、様々な使い方を思いつきそれを実行してAMIを保存してPCを終了する——。

誤解を恐れずに言うと、クラウド上に自前のゲーミングPCを構築する人はヘンタイに間違いありません。今回紹介した構築手順はあくまでとっかかりの部分であって、作成したPCを使いこなすのはあなた次第。あなた流の使い方を是非模索してみてください。

Latest