コンテンツにスキップ

仮想専用サーバ

出典: フリー百科事典『ウィキペディア(Wikipedia)』

仮想専用サーバ(バーチャル・プライベート・サーバ、英語: virtual private server、略称: VPS)とは、一台の物理的なサーバコンピュータ上で仮想的なサーバコンピュータ(仮想機械)を何台も起動する技術によってつくられた仮想的なサーバコンピュータである。

VPSは、ホスティングサーバ(レンタルサーバ)事業者のサービスの一つとしても提供されている。これらのサービスは、上記の技術を用いることで、管理者権限が付与される自由度の高い専用サーバを、従来的な専用サーバよりも大幅に安い価格で契約者に提供することを可能にしている。VPSは、物理的なサーバを一台占有する「専用サーバ」に比べて処理能力は劣るものの、構成の自由度は専用サーバとほぼ変わらない。

概要

[編集]

VPSとは、個々のユーザーに仮想機械内において管理者権限 (root) を付与し、共用サーバにおいて専用サーバのような環境を実装するものである。これによって管理者権限を必要とするソフトウェアインストール等が可能になる。

また、サーバのリソースを個々のユーザーに配分し、1ユーザーが使用できるサーバのリソースの上限を設定する事が一般的である。

virtual dedicated server」(バーチャル・デディケーティッド・サーバ、VDS)という語があるが、これもVPSとほぼ同義である。国内ではVPSの呼称が一般に使用されているが、英語圏では「専用サーバ」は「dedicated server」と記載するため、海外ではこの名称も一般的に使用されている。

VPSを起動させるOSとしては Linux が多用されており、XenもしくはKVMを使ったものが主流となっている。その他にもOpenVZベースのSWsoftVirtuozzoが使われている。海外では、NTTコミュニケーションズの子会社であるVERIO(NTT/VERIOブランド)のVPSサービスが有名であったが、2015年12月にサービスを終了した。日本国内では さくらインターネット[1]GMOインターネット[2]at+link[3]株式会社リンクのベアメタル クラウド[4]カゴヤ・ジャパン[5]使えるねっと[6]ABLENET[7]DTI[8]のVPSサービスが有名である。

また、アマゾンAWS[9]などはパブリック・クラウドサービスと呼ばれVPSとは区別されている。

VPSのメリット

[編集]

VPSでは、1つの物理的サーバで2つ以上の仮想サーバを起動することが出来る為、サンドボックスを容易に使用することが出来る。具体例では、1つの仮想サーバ(A)上で実稼動させるウェブサイトを公開し、もう1つの仮想サーバ(B)上にそのコピーを製作し、ソフトウェアの重大な変更を行う際には、Aと同等のハードウェア環境を持つB上で、実稼動中のウェブサイトに影響を与えることなくテストを行うことができる。

また、VPSはハニーポットの運営にも適している。VPS上では容易に同じ環境を持った複数の仮想サーバを立ち上げることができるため、容易に既知のセキュリティホールを持ったソフトウェアを故意に起動しておくことができる。それとともに、ログの監視などを行う仮想サーバと実際にハニーポットが設置されている仮想サーバを分けることによってセキュリティを確保することができる。

仮想化方式の違い

[編集]

完全仮想化はエミュレータのようにハードウェアを仮想化して自由なOSを使うことができる。従来の完全仮想化はオーバーヘッドが大きいため速度が必要な用途には使えなかったが、CPU支援による高速化によってオーバーヘッドを低く抑えられるようになった。さらに、高速化のために仮想ドライバが実装されてきており、準仮想化に近づいてきている。CPUの仮想化支援で未対応の命令(リアルモードなど)はソフトウェアエミュレーションを行う。CPUの支援を使った完全仮想化にKVMがある。自由なOSを使うことができるため、Linux上でWindowsを動かすといったこともできる。

準仮想化はゲストOSに互換層を設けたカーネルを用い、ゲストカーネルを低い権限(RING1など)で動作させる。そのため、ゲスト向けにコンパイルされたカーネルが用意されているOSならばゲストOSとして自由に使うことができる。準仮想化としてはXenがある。

OSレベルの仮想化は一つのカーネルしか動かないためにメモリが少なくて済む。カーネルは固定であるが、ユーザランドはchrootのように切り替えることができる。カーネルが一つでも、それぞれにIPが割り当てられ、リソース管理もしっかりと行われる。異なったカーネルを使うことができない、カーネルモジュールを追加できないなどの難点がある。LinuxではOpenVZやcgroupをベースにしたLXCなどがある。

代表的なプラットフォーム

[編集]

脚注

[編集]

関連項目

[編集]