Linux-VServer
Linux-VServer は、LinuxカーネルにOSレベルの仮想化機能を追加することで実装されたバーチャル・プライベート・サーバ。�…
| 開発元 | Herbert Pötzl (コミュニティプロジェクト) |
|---|---|
| 最新版 |
2.6.22.19-vs2.2.0.7[1]
/ 2008年3月14日 |
| 最新評価版 |
4.9.159-vs2.3.9.8
/ 2019年10月5日 |
| リポジトリ | |
| 対応OS | Linux |
| プラットフォーム | x86, x64, SPARC/64, PA-RISC, S390/x, MIPS/64, ARM, PowerPC/64 |
| 種別 | OSレベルの仮想化 |
| ライセンス | GNU General Public License |
| 公式サイト |
linux-vserver |
Linux-VServer は、LinuxカーネルにOSレベルの仮想化機能を追加することで実装されたバーチャル・プライベート・サーバ。オープンソースソフトウェアとして開発・配布されており、GNU General Public License (GPL) でライセンスされている。
概要
プロジェクトの創始者は Jacques Gélinas。現在はオーストラリアの Herbert Pötzl が保守しており、負荷分散の実装を行っている Linux Virtual Server プロジェクトとは無関係である。
Linux-VServer はjail機構であり、コンピュータシステムの各種リソース(ファイルシステム、CPU時間、ネットワークアドレス、メモリなど)をセキュアに分割でき、プロセスは自身の存在するパーティション以外に対してDoS攻撃の影響を与えることができない。
各パーティションを「セキュリティコンテキスト」と呼び、その中で動作する仮想化されたシステムを「バーチャル・プライベート・サーバ」と呼ぶ。セキュリティコンテキストに下降するための chroot のようなユーティリティが用意されている。バーチャル・プライベート・サーバのブートは、単に新しいセキュリティコンテキスト内で init を起動すればよい。同様にシャットダウンするには、そのセキュリティコンテキスト内の全プロセスを停止すればよい。各コンテキストでLinuxディストリビューションを修正なしでブート可能であり、Debian や Fedora Core を並行動作させることができる。
バーチャル・プライベート・サーバは一般にWebホスティングサービスに利用され、顧客アカウントの分離、リソースのプーリング、潜在的セキュリティ違反の封じ込めなどに有効である。インストールにあたって領域を節約するため、各バーチャル・サーバのファイルシステムは「テンプレート」ファイルシステムのコピーオンライト型ハードリンクのツリーとして構築される。そのハードリンクはファイルシステムの特殊な属性付きであり、書き込み時にセキュアかつ透過的にファイルの実際のコピーに置換される。
同様の仮想化機構
OSレベルの仮想化技術の他の実装としては、OpenVZ、Parallels Virtuozzo Containers、FreeBSD jail 機構、Solaris Containers、FreeVPS(Linux-VServer から初期にフォーク)などがある。
利点
- バーチャル・サーバ間でシステムコールインタフェースは共通であり、エミュレータのオーバーヘッドは生じない。
- 各バーチャル・サーバにディスクイメージを持つ必要はなく、ファイルシステムを共有できる(ただし、コピーオンライト型ハードリンク経由)。これにより、システムのバックアップが容易になり、バーチャル・サーバ間でディスク空き領域をプールできる。
- バーチャル・サーバ内のプロセスは、ホストシステムの通常のプロセスと同じである。システム全体をエミュレートする仮想化よりもメモリやI/Oが効率化される。
- バーチャル・サーバ内のプロセスは、ホストシステムのスケジューラでスケジューリングされ、どのプロセスもSMPシステム上で並行動作可能である。システム全体のエミュレーションでは必ずしも簡単ではない。
- ネットワークは仮想化というよりも分離されているだけであり、パケット送受信に余分なオーバーヘッドが生じない。
欠点
- ホストカーネルにパッチをあてる必要がある。
- 全バーチャル・サーバが同じカーネルを共有するため、バグやセキュリティホールも共有する可能性がある。
- クラスタリングやプロセスマイグレーション機能がない。ホストカーネルおよびそのハードウェアで障害が発生すると、全バーチャル・サーバがダウンする危険性がある。
- ネットワークは仮想化ではなく分離されているだけである。このため、バーチャル・サーバが独自にルーティング設定したり、ファイアーウォールを設定したりできない。
- 一部のシステムコール(特にハードウェア関連、例えばリアルタイムクロック関連)、/proc や /sys ファイルシステムの一部は仮想化されていない。
- ディスクI/Oの帯域幅をバーチャル・サーバ毎に割り当てることができない。
脚注
外部リンク
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.