自前アプリを動かすにはVPS

OS サーバー 設定

脱初心者!自前アプリを動かすにはVPSを選ぶべし!

レンタルサーバーを利用していると、時折独自アプリでサイトを運営したくなることがあります。特に、サーバー側で処理をする Java サーブレット (Java Servlet) Java Server Pages (JSP) などを導入したいときは、通常の共用サーバーでは思った設定ができません。
このページでは、レンタルサーバーを選ぶ時の知識として、VPSをどのような時に考慮するべきかについてチェックしていきます。

VPS の基礎知識

VPS(Virtual Private Server)は、日本語では「仮想専用サーバー」と表現されます。
共用サーバーと同じく一台の物理サーバーを複数のユーザーで共有します。
しかし、VPSの場合は、現実には一台のサーバーには複数人が居候しているにもかかわらず、ユーザー側からは専用サーバー(一台丸ごと貸し切りサーバー)同様の自由度をもちつつ、サーバー設定を行い運用できます。

wpg_div_wp_graphviz_2

上の図は簡略化したもので、左側は「共有サーバー」の簡略図で、ひとつのに家に下宿人が居候している状態です。
右側がVPSで、いわばマンションに複数世帯が居住している状態です。CPUなどの一番下の部分は、建物の土台部分、MEMやHDDなどはガスや電気の料金メーター、もしくはブレーカーのようなものです。一棟で管理するか、各部屋・世帯(ユーザー)ごとに管理できるかの大きな違いがあります。
ガスメーター(HDDのデータ)が壊れたくらいでは、VPSの場合は各部屋に影響は出ませんが、ガス爆発(HDDがクラッシュ)でも起こせば一棟全体に影響が及ぶというイメージで、ほぼ間に合います。

BASE OSの部分は建物の入り口、OSは各世帯の玄関だと考えてもらうとわかりやすくなります。
一棟のマンション(VPS)の出入り口(BASE OS)自体は共通ですが、各世帯の入口玄関(OS)は別々に用意されます。
共有サーバーの場合は、出入り口と玄関は共通で、各部屋ので入口(OS)はカスタマイズできません。

なお、専用サーバーの場合は各世帯が独立した一戸建てのようにとらえるとより分かりやすいと思います。

VPS の場合はユーザーごとに選んだ(好きな)カスタマイズしたOSを載せることができるのが特徴です。
かつては、ゲストOSといっても、ほぼ Linux などに限られ、Windows が選べるものはそれほど多くありませんでした。
ライセンスの問題もあり、多くはフリーのUNIX(PC-UNIX)が主流の時代が長かったように思います。
ここ最近は事情が変わってきて、OS に Windows も選べるサーバー会社が増えてきています。Windows サーバーの最大のメリットは、FX などの自動売買に最適な仮想 Windows デスクトップサービスが使える点です。Windows の方が使いやすい方は検討してみるといいと思います。

ヤンブ
かつてのWindows サーバーをのせた VPS は重くて安定しなかったこともあり、あまりオススメではなかったのですが、最近は仮想マシンのスペックが大幅に向上したので、しっかり動くようになっています。

VPS のメリットをおさえる

VPSでユーザー皆が同じ Linux を載せるのなら、わざわざユーザー毎にOSを分ける必要がないように早とちりするかもしれません。
でも、ユーザーごとにOSを分離することにより、ユーザーごとに好みのアプリをインストールしたり、OSをカスタマイズして使うことができます。
例えば、ユーザーAはRubyベースの環境を整えたLinux、ユーザーBはJavaベースの環境などに、独自チューニングしたOS(ゲストOS)を使うことができます。PHPを含め、リソースの割り当てを自分で設定できて、しかもその設定をしたことで、他のユーザーには迷惑をかけないのが特徴です。

VPSには、独自チューニングするためのゲストOSのフルアクセス機能(root権限)もついてきます。よって、Ruby、Perl、Python など好みの環境、好みのバージョンをインストールし設定運用できます。

一方で、普通の共用サーバーの場合は、利用するユーザー間で共通のOSを使いますので、例えば Ruby がOSに整備されていなければ、Ruby のアプリケーションはそのサーバーでは動かせないことになります。

ゲストOSを使うシステムは、メモリなどのリソースをホストOSでゲストOSごとに振り当てますので、仮に全員が同じOSを利用していても、お互いのリソースに干渉しあいません。
ホストOSが安定していればという大前提がつきますが、サーバーを利用しているユーザーが安心して自分の設定したOSを動かすことができます。

また、負荷のかかる作業を共用サーバーで行えば、そのサーバーのユーザー全員が影響を受けますが、VPSの場合は、負荷は一つのゲストOS内で処理されますので、他のゲストOSユーザーに影響することはありません。

VPS というのは専用サーバーの動作を、仮想マシン内で実現したものですので、使い勝手は専用サーバーとほぼ同等です。
専用サーバーの機能を、複数人でリソースを共有することで安く提供されるものです。
そのため、VPSに不満がある場合は、最終的には専用サーバーを契約するなどの選択肢が残ります。

専用サーバー共用サーバーVPS
管理者権限なし
月額料金数千円~数万円程度無料~数千円程度数百円~数千円程度
カスタマイズ性広い×やや広い
OSが選択できるできない限定的にできる
OSをカスタムできる×
保守責任は?ユーザーが負担サーバー会社ユーザーが負担
構築は誰がする?ユーザーが行うサーバー会社ユーザーが行う
独自アプリは動く?×
ハードウェア変更××

上の表から、VPSはかなり専用サーバーに近い使い方ができることがわかります。
VPS そのものは専用サーバーの機能を安全に、安定して、低価格で供給することを目的としているので、専用サーバーは高くて手が出せないけれど、VPSなら月額料金はまだ払えるという場合は、選択肢としては有力です。

VPS のデメリットを抑える

Linux サーバーなどを自分で一から設定できる方は、VPSの方が共用サーバー(普通のレンタルサーバー)よりずっと使い勝手が良いものです。
逆を言えば、設定そのものが素人の方は手を出してはいけないとも言えます。というのも、設定を横着すれば、海外クラッカーの踏み台サーバーにされかねず、身に覚えのない容疑をかけられてしまうリスクがありからです。
全くサーバーOSになじみがない方は、設定そのものに躓きますのでわざわざ利用する必要はありません。

VPS はどのような人に向くか?

サーバーシステムを勉強していて現在のレンタルサーバーでは満足できない、あるいはサーバーシステムそのものに詳しい人なら、VPSそのものは難しいものではないので、積極的に活用するのがおすすめです。

特に、大手クラウドサービス(代表はAWS)でサーバー運用すると、コストがかかりすぎるため、あらかじめ利用できるスペックが限定された VPS でサーバー運用するということは普通にあります。例えば、AWSなどではリソースのアップグレードが可能ですが、その分月額コストもかさみます。将来的にはクラウドサービスに移行することを考えるにしても、まず手頃なVPSから始めるのは、特におすすめできる利用法です。

ヤンブ
AWS は柔軟で何でもできてしまうサービスですが、普通のVPSサービス会社の2倍~3倍、しかも転送量まで課金されるのでかなりの高額になります。サービスそのものは優れている(複雑だが何でもできる)ので、最終的には AWS に移行したい人は、まず普通の VPS をしっかり使えるか自分を試してみるといいかもしれません。

VPS を利用する方がいい人は

  • 独自アプリで運用したいな人
  • OSの微妙なカスタマイズが必須な人
  • クラウドサービスを後々に使ってみたい人

-OS, サーバー, 設定
-, ,

© 2020 ネーテルス