Google Cloud Platform を使って JATOS サーバを動かす #1 仮想サーバを選ぶ

JATOS サーバは心理学実験のオンライン上での実施とその管理を行うツールです。

上の記事では,手元の PC (localhost) で JATOS サーバを動かす方法について説明しました。しかし,この方法では,手元のPCでしか実験ができず,遠隔でデータ収集を行うことはできません。JATOS は,現時点では,公共に利用可能なサービスがなく,サーバ自体は自前で用意する必要があります。サーバレンタルの方法は色々とありますが,ここでは Google Cloud Platform を使って仮想サーバを立て,そこに JATOS をインストールして,実験を行う手順についてみていきたいと思います。

ネットワーク上に自分のサーバを立てる

JATOS は,ネットワーク上のサーバ上で運用する必要があり,またインストールにあたって,シェルへのアクセスが必要になります。そのため,ブログのみが使える安価なレンタルサーバ(共用サーバ)など,一部のサーバではそもそも JATOS が使えません。そのため,自分がオーナーになっているようなサーバ環境を用意する必要があります。該当するケースとしては,以下のようなものが考えられます。

1. 自分でサーバ機材も含めて購入し,サーバを動かす
2. 所属している大学などで利用可能なサービスを使う
3. サーバを一台丸々使えるレンタルサービスを使う

1. はうまく行けば安く済みますが,物理的なサーバを構築して運用するのは,なかなか大変です。2. については,環境が許せば安く済みそうですが,私が所属している大学のような規模が小さいところだと難しそうです。ですので,最も現実的な手段は 3. ということになります。

さて,3. を使う場合も,いくつかの選択肢があります。"サーバレンタル" といったキーワードで検索すると沢山のサイトがヒットします。このうち,共用サーバは,ユーザ側の自由度が低すぎるため,多くの場合 JATOS を動かすのには向いていないと思います。しかし,いわゆる専用サーバだと,1台のサーバを占有するためちょっとコストがかかりすぎるのが難点です。その中間にあるのが,仮想専用サーバ (VPS) と呼ばれるものです。VPS はサーバの物理的実体は他の契約者と共有していますが,その中に仮想サーバという,契約者ごとに区切られた領域を使っているため,その仮想サーバ内の自由度は占有サーバ並みになっています。しかも,多くの場合,共用サーバよりは高性能です。したがって,今回のような場合は VPS が最良の選択肢となります。

仮想専用サーバ (Virtual Private Server; VPS)

VPS も色々な業者がサービスを提供しているので,そのどれかを選んで選択することになります。非常に沢山の選択肢があり,正直どれが良いか迷いますね。色々な評判などを参考に,どれが一番良いか,各自で選ぶと良いと思います。

とまあ,ここで終わってしまっては意味が無いので,ちょっとここで別の方法を考えてみましょう。仮想専用サーバで検索してヒットする,多くの業者が提供しているのは,月または年額幾ら,という固定費用がかかるタイプのものです。例えば,自分用の Web サイトを作って,日常的に使用するという用途ならこれでも良いかもしれませんが,実験の授業のために一定期間だけ使う,という用途だと,使っていないときにもお金がかかってしまうのでもったいないなあ,という気もします。それに対して,仮想専用サーバについて,使った分だけ課金するという方式をとっているサービスプロバイダもいます。その代表が,ご存知 Google (Google Cloud Platform; GCP) と,Amazon (Amazon Web Service; AWS) です。GCP, AWS のどちらが良いか,というのは中々に難しい問題です。両者とも,VPS の構成(端的に言えば,マシンの性能)を変えるとそれに応じて値段が変わってきますし,単位時間当たりの課金という点では同じです。強いて言えば AWS の方が先行していた分情報が多いが機能が多すぎて逆に困る,構成次第だと GCP の方が単価は安め,といったあたりでしょうか。また,両者はそれぞれ無料利用枠を用意していて,AWS は登録後特定のサーバ構成は一年間無料,GCE は一年間使える $300 分の無料枠などがあります。また,それぞれ,構成次第ですが,ずっと無料で使い続けることができるサービスもあります。ちなみに,Microsoft も Azure という同様のサービスを持っていて。一応 Linux 仮想サーバも立てられるようですが,ここでは扱いません(Microsoft なので Windows サーバしかないのかと思ったら違ったっぽいです)。

とりあえず,ここでは Google Cloud Platform を使うことにします。ただし,特に GCP でなければならない理由はなく,もちろん,AWS を使っても同じ機能は実現できます。

ここで敢えて GCP にしたのは,昔,TurkPrime というサービスを使うのに AWS のアカウントを作る必要があって(結局ほとんど使わなかったですが),無料枠の利用期間が切れてしまった,というのが最大の理由です。あとは,GCP の方が情報が少ないような気がしたので,チャレンジしてみようか,という程度です。

次回は,GCP での仮想サーバの設定方法です。↓へ続く


この記事が気に入ったらサポートをしてみませんか?