VultrとAnyDeskによるリモートデスクトップ環境でWindowsアプリを動かす(1)


おことわり

VPS(Virtual Private Server)を使用する目的は様々だと思います。この記事は、筆者のやりたいことに特化した方法を、後から個人的に再現できるように記録したものです。この記事を真似して実行した結果、生じた障害、損失については、筆者は一切の責任を負いません。

やりたいこと

  • WindowsアプリであるMetaTrader(MT4, MT5)をVPS上で動かし、そのアプリ上で自動売買ソフト(EA)を動かす。
  • VPSは、EAが取引を行う可能性のある期間(週5日以下)だけ利用できればよい。
  • EAの動作状況は、必要に応じてWindowsPC、スマホなどからモニターできるようにする。
  • コスパを重視する。

Vultrを選んだわけ

VPSをやっている業者は国内外にたくさんあります。Vultrはアメリカの業者でウェブサイトとか英語なのですが、慣れるとシンプルでいいです。

ウェブサイトはこちら。https://www.vultr.com/

Vultrを選んだ決め手は以下の通り、個人的な理由です。

  • VPSが週5日だけ利用でき、使わないときは課金されない。(ただし、VPSを毎週削除しなくてはいけませんが。)
  • VPSは削除しても、スナップショットが無料で作れるので、元の環境にすぐに戻せる。
  • 支払いはクレジットカード、PayPalなどに対応していて、米ドル建てである。(PayPalに米ドル口座をもっているので、為替の手数料がかからない。)
  • 月4ドルくらいでやりたいことができてしまう。

VultrでVPSを作る

Vultrで具体的にVPSを作る手順です。

Create account

多くのWebサービスと同様に、まずはアカウントを作ります。最初にメールアドレスとパスワードを送信すると、アカウント作成の手順がメールで送られてくる、というよくあるやつです。あとは個人情報として氏名を登録するくらいで、割とお手軽にアカウント作成できます。

Billing

アカウント作成してログインすると、Billingというメニューから、VPS使用料をデポジットします。クレジットカードやPayPalが使えます。最低\$10のデポジットが必要で、無料でお試しができないのが難点です。\$10寄付してもいい人しかお勧めできません。

Deploy New Server

どのページにも右上に「+」のアイコンがあり、それをクリックすると、新しいサーバーを作成するメニューに移ります。

Choose Server

サーバーのモデルを選びます。いくつかありますが、エントリーの場合、Cloud Computeか、High Frequency のどちらかでしょう。

ログインしたページだと、サーバーの比較ができないので、あらかじめログインする前のウェブサイトでサーバーのパフォーマンスを確認しておくとよいでしょう。
https://www.vultr.com/products/cloud-compute/
これを見ると、Cloud Computeと、High Frequencyとで、1CPU メモリ1024MBという同じエントリーモデルがあります。


上がCloud Computeで、下がHigh Frequencyです。使用料は、月\$5と\$6で、High Frequencyの方がちょっと高いのですが、パフォーマンスは倍くらい違います。またSSDの容量も若干多いので、個人的にはHigh Frequencyの方をお勧めします。

Server Location

サーバーの場所を選びます。MT4, MT5で自動売買させるのであれば、業者のサーバーに近い方がいいでしょうが、特になければ、Tokyoを選べばよいでしょう。

Server Type

OSの種類を選択します。Windowsも選べますが、コスパが悪いのでLinuxのなかから選びます。種類は好みの問題なので、ここでは、個人的に慣れているUbuntu 18.04を選びます。

Server Size

サーバーサイズの種類は、最初に選んだサーバーモデルによりますが、High Frequencyの場合、3種類しかありません。SSDの容量は32GBあれば十分なので、月\$6という一番安いサイズを選びます。

Additional Features

その他、追加で設定可能な項目がありますが、ここでは何も指定しません。実際毎週サーバーを新規にDeployするのであれば、余計な設定は極力ない方が都合がいいからです。

これで「Deploy Now」のボタンをクリックすると、数分でサーバーが作成されます。

サーバーの初期設定

作成されたサーバーは、Productのメニューに表示されます。ここで、Cloud Instanceをクリックすると、Server Informationとしてサーバーを管理する画面となります。右上に次のようなアイコンが表示されます。

ログイン

とりあえず、一番左のアイコン(View Console)をクリックすると、コンソール画面が表示されます。「vultr login:」と表示されていればちゃんと起動しています。

ここで、username、passwordはサーバー管理画面の左下あたりに表示されているので、これを入力すればログインできます。が、初期パスワードは記号が混ざっている上に、このコンソール画面では、日本語キーボードからうまく入力できない記号があったりして、ログインできないことがあります。

その場合、このコンソールでのログインは諦めて、teratermやWindows Subsystem for Linuxからsshでログインします。

ユーザーアカウントの作成

rootでログインするのは最初だけにして、通常の利用のために、個人のユーザーアカウントを作っておきます。例えば、「user1」というアカウントを作ってroot権限を与える場合、以下のようにします。

$ adduser user1
$ gpasswd -a user1 sudo

一旦ログアウトして、このアカウントでログインできることを確認したら、安全のため、sshではrootでログインできないようにしておきます。

$ sudo vi /etc/ssh/sshd_config

でsshdの設定ファイルを開いて

PermitRootLogin yes

PermitRootLogin no

に変えておきます。なお、viは、昔の人向けのエディタで、今の人だとvimとかnanoとかでしょうか。

$ sudo systemctl restart sshd

で、sshdを再起動すると、sshではrootでログインできなくなっているはずです。

アップデート

とりあえず、最新の状態にアップデートしておきます。

$ sudo apt update
$ sudo apt upgrade

サーバーの削除

初期設定だけして、続きの設定はまた今度ということでしたら、課金されないようにサーバーを削除しましょう。ただし、そのまま削除してしまうと、今行った設定はなくなってしまうので、スナップショットを取ってから削除します。

Server Stop

スナップショットを取る前に、念のためにサーバーを止めておきます。先ほどのアイコンの左から2番目をクリックすると、サーバーが停止します。

Snapshots

スナップショットは、

のメニューのSnapshotsから行います。

あとでわかるように「Label」に説明を書いて、「Take Snapshot」のボタンを押すとスナップショットの作成が始まります。作成時間はSSDのサイズによっても変わりますが、32GBだと10分前後です。statusがAvailableになれば、作成完了です。

Server Destroy

スナップショットができれば、サーバーは削除しても構いません。一番右のアイコンをクリックすると、サーバーを削除することができます。ここまでの作業が1時間以内であれば、課金は\$0.01、1円程度です。

これで課金はされなくなったので、一旦休憩して、続きは次の記事で。↓

VultrとAnyDeskによるリモートデスクトップ環境でWindowsアプリを動かす(2)