VPSのメリット・デメリット

カテゴリ:基礎知識

メリット

デメリット

VPSの導入に対するメリットとデメリットをまとめてみたいと思います。

コストパフォーマンス

VPSは同じ価格帯の共用サーバに比べて遥かにパフォーマンスが高いため、移行前の共用サーバによっては、VPSに移行した直後はあまりの軽快さに感動するかもしれません。

共用サーバはプランによっても性能に雲泥の差がありますが、同程度のスペックのVPSと比較して価格は数倍になります。

これはVPSはOSやアプリの管理なども含めてすべてユーザー任せの分、価格が抑えられるためです。
悪く言えば、ホストサーバ側の障害を除けば何があってもすべて自己責任ということになります。

しかしこれは障害発生時の対処もOSも含めてすべて自分で行えるという事なので、スキルさえ身につければ迅速なトラブルシュートができます。
例えば Apache のクラッシュならログを参照して原因を突き止め、取り除き、Apache を再起動する事ができます。

共用サーバの場合は Apache を複数の人が共用しているし、そもそも Apache を再起動する権限はユーザー側にはありません。
もちろんクラッシュを自動検出し、再起動を実施するような監視プログラムはあるとは思いますが、それで復旧できるという保証はありません。

自由度

VPSは1から仮想サーバを構築するため使用するアプリやバージョン、開発言語等、完全に自由です。

共用サーバではプランごとに最初からインストールもしくはオプションとして用意されているアプリやバージョン、開発言語しか使えません。
またアプリの設定はユーザー単位で変更が可能な設定(PHPのバージョン等)以外は基本的にできません。

例えば Apache の同時接続数や使用するモジュールの追加などは、他のユーザーにも影響するためできません。

設定の共通化

VPSではデータベースの接続先はローカル(127.0.0.1)の指定で問題ないので、すべてのサイトで共通化でき、またローカルのみを許可すればいいので外部からの接続を完全にシャットアウトでき、セキュリティ面も安心です。
※もちろん直接ではなく、phpMyAdmin 経由で攻撃を受ける可能性はありますが、これは Apache 側でアクセス制限を行えば済みます。

更に他のVPSにサイトを移行する場合も設定変更は最小限で済みます。

一方、一般的な共用サーバではデータベースの接続先は別サーバなので、IPアドレスかFQDNで指定する必要があります。

また多くの場合ユーザー名やデータベース名も決められたプリフィックス(ユーザー名+データベース名等)が付きます。
これは複数の人が同じデータベースを共用するため、ユーザー名やデータベース名が被るのを防ぐためです。
※共用サーバによってはデータベースは1つしか与えられない事さえあります。

この場合、複数サイトを構築する場合、1つのデータベースにすべてのサイトのテーブルが混在することになり、テーブル名も被ってはいけません。

基本はコマンドベース

Linuxの設定はWebminなどGUIでも可能な設定もありますが、すべての設定をできるわけではなく、またどの設定パラメータや設定ファイルがどのように変更されたのかが、Webmin上ではかえって分かりにくくなるため、ツールの使用は必要最低限にとどめる方が無難です。

従って、Linuxの基本構造や、基本コマンド(cpやmkdir、lsコマンド等)は習得する必要があります。

ただよく使う基本コマンドは限られているため、それほど構える必要はありません。
Linuxコマンドの書籍が1冊あれば十分でしょう。
慣れてくれば、コマンドベースですべての操作が行えるという事は非常に便利に感じます。

Linuxの知識は後から習得すればいい

基本的なWebサーバやメールサーバの構築については、本サイトも含めて解説サイトは多数存在するので、実際にはユーザーに依存する所さえ設定できれば、後は初期設定のままで殆ど問題ありません。
セキュリティ面も初期設定では厳し目に設定されているため、概ねそのままでも問題ありません。

逆にrootでの接続を許可したりなど、セキュリティを緩める設定が必要になるかもしれません。
例えば、SSHの接続に公開鍵認証のみを使用する場合は、安全なのでrootでログインできるようにしておくと便利です。
インストール手順や設定すべき箇所は本サイトの記事等を参照してください。

Linuxサーバーは侮ると危険

とはいえ、Linuxの知識が乏しい状態では、予期しないセキュリティ設定上の見落としがあり、気づかないまま運用してしまうこともあります。
VPSはWebサーバーだけではなく、通常、メールサーバーやSSH、データベースサーバーなども稼働させるため、様々なセキュリティ上の脆弱性対策や設定が必要になります。

また、何が起きているかを分析・調査し、原因を特定して問題を修正する能力も求められます。
そのためにはLinux全般に対する広い知識が必要になります。

これらの能力を短期間で独学で身に着けるのは難しいことでもあるため、スクールなども利用し、知識豊富な講師の方から直接教わる方が近道であり、長い目で見ると自分の資産になり、また今後の仕事の選択肢を増やす事に繋がる可能性もあります。
Linuxについて体系的に本格的な授業を受けたことがない場合は、自分への投資としてスクールに通ってみるのも1つの手ですね。

スクールとしてはLPICの教科書を執筆している講師による講義が受けられるリナックスアカデミーがイチオシです。

公開日時: 2015年05月08日  17:07:31

基礎知識に戻る

このページのトップに戻る