„Linux-VServer“ – Versionsunterschied
[gesichtete Version] | [gesichtete Version] |
K Typo fixed |
Linkvorschlag-Funktion: 2 Links hinzugefügt. Markierungen: Visuelle Bearbeitung Mobile Bearbeitung Mobile Web-Bearbeitung Einstiegs-Aufgabe Vorgeschlagen: Links hinzufügen |
||
(24 dazwischenliegende Versionen von 21 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{Dieser Artikel| |
{{Dieser Artikel|behandelt das Open-Source-Projekt. Zu virtuellen Server siehe [[virtuelle Server]].}} |
||
{{Infobox Software |
{{Infobox Software |
||
| Name = |
| Name = |
||
| Logo = <!--[[ |
| Logo = <!--[[Datei:Linux-VServer-logo.png|Linux-VServer]] muss noch jemand herholen--><!-- 190 is to make 48px height image --> |
||
| Screenshot = |
| Screenshot = |
||
| Hersteller = Herbert Pötzl (Community |
| Hersteller = Herbert Pötzl (Community-Projekt) |
||
| AktuelleVersion = |
| AktuelleVersion = |
||
| AktuelleVersionFreigabeDatum = |
| AktuelleVersionFreigabeDatum = |
||
| Betriebssystem = [[Linux|Linux 2.6 und 2.4]] |
| Betriebssystem = [[Linux|Linux 2.6 und 2.4]] |
||
| Platform = [[x86]], [[x86 64]], [[SPARC|SPARC/64]], [[HPPA|PA-RISC]], [[S390|S390/x]], [[MIPS architecture|MIPS/64]], [[ARM architecture|ARM]], [[PowerPC|PowerPC/64]] |
|||
| Kategorie = [[Virtualisierung (Informatik)|Virtualisierung]]<!-- [[OS-level virtualization]] --> |
| Kategorie = [[Virtualisierung (Informatik)|Virtualisierung]]<!-- [[OS-level virtualization]] --> |
||
| Lizenz = [[GNU GPL]] |
| Lizenz = [[GNU General Public License|GPL]] 2 ([[Freie Software]]) |
||
| Deutsch = |
| Deutsch = |
||
| Website = [http://linux-vserver.org/ Linux-VServer.org] |
| Website = [http://linux-vserver.org/ Linux-VServer.org] |
||
}} |
}} |
||
'''VServer''' ist ein Open-Source-Projekt, das virtuelle Linux-Server auf Basis von [[Virtualisierung (Informatik)|Betriebssystemvirtualisierung]] für den [[Linux (Kernel)|Linux-Kernel]] implementiert. Das Produkt ist [[ |
'''VServer''' ist ein Open-Source-Projekt, das virtuelle [[Linux]]-Server auf Basis von [[Virtualisierung (Informatik)|Betriebssystemvirtualisierung]] für den [[Linux (Kernel)|Linux-Kernel]] implementiert. Das Produkt ist [[freie Software]], die unter der [[GNU General Public License]] (GPL) veröffentlicht wird. Es verfolgt damit einen grob vergleichbaren Ansatz wie [[OpenVZ]]. |
||
Das Projekt wurde von Jacques Gélinas begonnen und wird jetzt von dem Österreicher Herbert Pötzl betreut. Das Produkt hat nichts mit dem [[Linux Virtual Server]] |
Das Projekt wurde von Jacques Gélinas begonnen und wird jetzt von dem Österreicher Herbert Pötzl betreut. Das Produkt hat nichts mit dem [[Linux Virtual Server]] zu tun, der für eine gleichmäßige [[Lastverteilung (Informatik)|Lastverteilung]] (Load Balancing) sorgen soll. |
||
Linux-VServer schafft die Möglichkeit<!--( is a jail mechanism to partition)-->, Teile eines Computersystems wie das [[Dateisystem]], die [[Prozessorzeit]], [[IP-Adresse|Netzwerkadressen]] und den [[Hauptspeicher]] so aufzuteilen und sicher voneinander abzugrenzen, |
Linux-VServer schafft die Möglichkeit<!--( is a jail mechanism to partition)-->, Teile eines Computersystems wie das [[Dateisystem]], die [[Prozessorzeit]], [[IP-Adresse|Netzwerkadressen]] und den [[Hauptspeicher]] so aufzuteilen und sicher voneinander abzugrenzen, dass einzelne Prozesse keine Möglichkeit haben, außerhalb ihrer Partition, des ihnen zugestandenen Arbeitsbereiches, zuzugreifen<!--cannot mount a [[denial-of-service attack]] on anything outside their partition. ??reichlichst unverständlich!!-->. |
||
Jede Partition bzw. jeder Arbeitsbereich stellt einen sogenannten ''Security Context'' dar, in dem das virtualisierte Computersystem einen '' |
Jede Partition bzw. jeder Arbeitsbereich stellt einen sogenannten ''Security Context'' dar, in dem das virtualisierte Computersystem einen ''virtuellen Server'' bildet. Ein dem [[Chroot]]-Mechanismus vergleichbares Werkzeug bietet Zugriff auf diesen ''Security Context''. Das [[Booten]] dieses ''virtuellen Servers'' beschränkt sich dann auf Durchführen eines [[Init]] in diesem ''Security Context'', das Herunterfahren entspricht vergleichbar einem Beenden der in diesem ''Security Context'' ablaufenden Prozesse. Die ''Security Contexte'', also die virtuellen Maschinen, sind leistungsfähig genug, um beispielsweise viele Linux-Distributionen unmodifiziert verwenden und verarbeiten zu können, dazu gehören auch [[Debian]] und [[Fedora (Linux-Distribution)|Fedora]]. |
||
''Virtuelle Server'' werden normalerweise von [[Webhosting]] |
''Virtuelle Server'' werden normalerweise von [[Webhosting]]-Dienstleistern verwendet, da sie bei gleichzeitiger Zusammenfassung der Computerressourcen eine saubere Trennung verschiedener virtueller Kundenmaschinen sowie eine Abschottung dieser Maschinen untereinander erlauben. Um bei solchen Installationen mit möglichst wenig Plattenplatz auszukommen, wird das Dateisystem jedes ''virtuellen Servers'' als ein [[Copy-On-Write]] [[Harter Link|Hard Link]] auf ein [[virtuelles Dateisystem]] aufgesetzt<!--a tree of [[Copy-on-write]] [[Harter Link|hard link]]s to a "template" file system ? noch nicht gut-->. Dieser Hard Link besitzt spezielle Dateisystemattribute, die bei einer erkannten Änderung die zu schreibende Datei durch eine sicher und transparent geschriebene reale Kopie der Datei ersetzen. |
||
Linux-VServer existiert in zwei verschiedenen Versionen, einer stabilen Version V.2.2.x und einer Entwicklerversion V.2.3.x für den Linux-Kernel 2.6, sowie einer stabilen Version für den Linux-Kernel 2.4. |
Linux-VServer existiert in zwei verschiedenen Versionen, einer stabilen Version V.2.2.x und einer Entwicklerversion V.2.3.x für den Linux-Kernel 2.6, sowie einer stabilen Version für den Linux-Kernel 2.4. |
||
== Vergleichbare Virtualisierungsmechanismen == |
== Vergleichbare Virtualisierungsmechanismen == |
||
Andere vergleichbare Virtualisierungstechniken sind [[OpenVZ]], von [[FreeBSD]] das ''FreeBSD Jail''-Verfahren, ''Solaris Containers'' und ''FreeVPS'' (eine frühe Ableitung ([[Abspaltung (Softwareentwicklung)|Fork]]) von Linux-VServer). |
Andere vergleichbare Virtualisierungstechniken sind [[OpenVZ]], von [[FreeBSD]] das ''[[FreeBSD Jail]]''-Verfahren, ''[[Container (Solaris)|Solaris Containers]]'' und ''FreeVPS'' (eine frühe Ableitung ([[Abspaltung (Softwareentwicklung)|Fork]]) von Linux-VServer). |
||
== Vorteile == |
== Vorteile == |
||
* Virtuelle Server benutzen die gleiche [[System Call]] Schnittstelle und erzeugen keine zusätzliche Last durch [[Emulator|Emulation]]. |
* Virtuelle Server benutzen die gleiche [[System Call]] Schnittstelle und erzeugen keine zusätzliche Last durch [[Emulator|Emulation]]. |
||
* Die virtuellen Server müssen nicht durch ein intransparentes [[Disk |
* Die virtuellen Server müssen nicht durch ein intransparentes [[Disk-Image]] gesichert werden, sondern können ein allgemeines, gemeinsames Dateisystem <!--and common sets of files -->benutzen (durch copy-on-write hard links). Das macht die Sicherung eines virtuellen Servers einfacher und erlaubt, den vorhandenen Plattenplatz für mehrere virtuelle Server zu nutzen. |
||
* Prozesse innerhalb der virtuellen Server laufen wie normale Prozesse auf einem Rechnersystem. Das ist weit effizienter in Bezug auf Speicherausnutzung und I/O-Last als die vollständige Emulation eines Rechners, die unbenutzten Hauptspeicher oder Plattenplatz |
* Prozesse innerhalb der virtuellen Server laufen wie normale Prozesse auf einem Rechnersystem. Das ist weit effizienter in Bezug auf Speicherausnutzung und I/O-Last als die vollständige Emulation eines Rechners, die unbenutzten Hauptspeicher oder Plattenplatz nur über Umwege ([[Ballooning (Virtualisierung)|Ballooning]], [[Thin Provisioning]]) dem [[Hostrechner]] oder anderen virtuellen Servern zur Verfügung stellen kann. |
||
* Prozesse innerhalb eines virtuellen Servers werden mit dem [[Prozess-Scheduler|Scheduler]] des Hostrechners abgearbeitet, was für die |
* Prozesse innerhalb eines virtuellen Servers werden mit dem [[Prozess-Scheduler|Scheduler]] des Hostrechners abgearbeitet, was für die Gastprozesse des virtuellen Servers eine gleichzeitige Ausführung auf Multiprozessorsystemen (SMP) erlaubt. Eine derartige Implementation für Komplettemulationen eines Rechners wäre aufwendig. |
||
* Die Netzwerkverbindungen werden durch Pakettrennung statt durch Virtualisierung realisiert; auch hier wird eine zusätzliche Paketverarbeitung vermieden. |
* Die Netzwerkverbindungen werden durch Pakettrennung statt durch Virtualisierung realisiert; auch hier wird eine zusätzliche Paketverarbeitung vermieden. |
||
== Nachteile == |
== Nachteile == |
||
* Linux-VServer erfordert auf dem Host einen modifizierten Betriebssystem-Kernel. |
* Linux-VServer erfordert auf dem Host einen modifizierten Betriebssystem-Kernel. |
||
* Alle virtuellen Server benutzen diesen selben Kernel und sind daher auch für darin enthaltene Bugs und |
* Alle virtuellen Server benutzen diesen selben Kernel und sind daher auch für darin enthaltene Bugs und Sicherheitslücken anfällig. |
||
* Es sind weder [[Computercluster|Clustering]] noch Prozessübernahme <!--[[process migration]]--> möglich; der Kernel des Hostrechners sowie der Hostrechner |
* Es sind weder [[Computercluster|Clustering]] noch Prozessübernahme <!--[[process migration]]--> möglich; der Kernel des Hostrechners sowie der Hostrechner selbst bilden immer noch einen [[Single Point of Failure]] für alle virtuellen Server. |
||
* Da die Netzwerkverbindungen auf einer Pakettrennung und nicht auf einer Virtualisierung beruhen, kann keiner der virtuellen Server eigene interne [[Routingtabelle]]n aufbauen oder als Firewall-Rechner benutzt werden. |
* Da die Netzwerkverbindungen auf einer Pakettrennung und nicht auf einer Virtualisierung beruhen, kann keiner der virtuellen Server eigene interne [[Routingtabelle]]n aufbauen oder als Firewall-Rechner benutzt werden. |
||
* Einige besonders hardwarespezifische Systemaufrufe wie beispielsweise der [[Echtzeituhr]] und von Teilen des /proc und /sys Dateisystems sind nicht virtualisierbar. |
* Einige besonders hardwarespezifische Systemaufrufe wie beispielsweise der [[Echtzeituhr]] und von Teilen des /proc und /sys Dateisystems sind nicht virtualisierbar. |
||
* Linux-VServer erlaubt noch keine Zuweisung von I/O-Bandbreite zu einzelnen virtuellen Servern. Diese Option ist erst in den Development-Versionen verfügbar, aber noch nicht in der stabilen Version. |
* Linux-VServer erlaubt noch keine Zuweisung von I/O-Bandbreite zu einzelnen virtuellen Servern. Diese Option ist erst in den Development-Versionen verfügbar, aber noch nicht in der stabilen Version. |
||
== Siehe auch == |
|||
* [[Liste von Virtualisierungsprodukten]] |
|||
== Weblinks == |
== Weblinks == |
||
* [http://linux-vserver.org/ |
* [http://linux-vserver.org/ Website des Projekts] (englisch) |
||
== Einzelnachweise == |
|||
[[Kategorie:Virtualisierung]] |
|||
<references /> |
|||
⚫ | |||
⚫ | |||
{{SORTIERUNG:Linuxvserver}} |
|||
[[en:Linux-VServer]] |
|||
⚫ | |||
[[es:Linux-VServer]] |
|||
⚫ | |||
[[fr:Linux-VServer]] |
|||
[[ |
[[Kategorie:Linux-Software|Vserver]] |
||
[[lt:Linux-VServer]] |
Aktuelle Version vom 25. Februar 2025, 07:09 Uhr
Linux-VServer
| |
---|---|
![]() | |
Basisdaten
| |
Entwickler | Herbert Pötzl (Community-Projekt) |
Aktuelle Version | 0.30.215[1] (17. März 2008) |
Betriebssystem | Linux 2.6 und 2.4 |
Programmiersprache | C[2] |
Kategorie | Virtualisierung |
Lizenz | GPL 2 (Freie Software) |
Linux-VServer.org |
VServer ist ein Open-Source-Projekt, das virtuelle Linux-Server auf Basis von Betriebssystemvirtualisierung für den Linux-Kernel implementiert. Das Produkt ist freie Software, die unter der GNU General Public License (GPL) veröffentlicht wird. Es verfolgt damit einen grob vergleichbaren Ansatz wie OpenVZ.
Das Projekt wurde von Jacques Gélinas begonnen und wird jetzt von dem Österreicher Herbert Pötzl betreut. Das Produkt hat nichts mit dem Linux Virtual Server zu tun, der für eine gleichmäßige Lastverteilung (Load Balancing) sorgen soll.
Linux-VServer schafft die Möglichkeit, Teile eines Computersystems wie das Dateisystem, die Prozessorzeit, Netzwerkadressen und den Hauptspeicher so aufzuteilen und sicher voneinander abzugrenzen, dass einzelne Prozesse keine Möglichkeit haben, außerhalb ihrer Partition, des ihnen zugestandenen Arbeitsbereiches, zuzugreifen.
Jede Partition bzw. jeder Arbeitsbereich stellt einen sogenannten Security Context dar, in dem das virtualisierte Computersystem einen virtuellen Server bildet. Ein dem Chroot-Mechanismus vergleichbares Werkzeug bietet Zugriff auf diesen Security Context. Das Booten dieses virtuellen Servers beschränkt sich dann auf Durchführen eines Init in diesem Security Context, das Herunterfahren entspricht vergleichbar einem Beenden der in diesem Security Context ablaufenden Prozesse. Die Security Contexte, also die virtuellen Maschinen, sind leistungsfähig genug, um beispielsweise viele Linux-Distributionen unmodifiziert verwenden und verarbeiten zu können, dazu gehören auch Debian und Fedora.
Virtuelle Server werden normalerweise von Webhosting-Dienstleistern verwendet, da sie bei gleichzeitiger Zusammenfassung der Computerressourcen eine saubere Trennung verschiedener virtueller Kundenmaschinen sowie eine Abschottung dieser Maschinen untereinander erlauben. Um bei solchen Installationen mit möglichst wenig Plattenplatz auszukommen, wird das Dateisystem jedes virtuellen Servers als ein Copy-On-Write Hard Link auf ein virtuelles Dateisystem aufgesetzt. Dieser Hard Link besitzt spezielle Dateisystemattribute, die bei einer erkannten Änderung die zu schreibende Datei durch eine sicher und transparent geschriebene reale Kopie der Datei ersetzen.
Linux-VServer existiert in zwei verschiedenen Versionen, einer stabilen Version V.2.2.x und einer Entwicklerversion V.2.3.x für den Linux-Kernel 2.6, sowie einer stabilen Version für den Linux-Kernel 2.4.
Vergleichbare Virtualisierungsmechanismen
[Bearbeiten | Quelltext bearbeiten]Andere vergleichbare Virtualisierungstechniken sind OpenVZ, von FreeBSD das FreeBSD Jail-Verfahren, Solaris Containers und FreeVPS (eine frühe Ableitung (Fork) von Linux-VServer).
Vorteile
[Bearbeiten | Quelltext bearbeiten]- Virtuelle Server benutzen die gleiche System Call Schnittstelle und erzeugen keine zusätzliche Last durch Emulation.
- Die virtuellen Server müssen nicht durch ein intransparentes Disk-Image gesichert werden, sondern können ein allgemeines, gemeinsames Dateisystem benutzen (durch copy-on-write hard links). Das macht die Sicherung eines virtuellen Servers einfacher und erlaubt, den vorhandenen Plattenplatz für mehrere virtuelle Server zu nutzen.
- Prozesse innerhalb der virtuellen Server laufen wie normale Prozesse auf einem Rechnersystem. Das ist weit effizienter in Bezug auf Speicherausnutzung und I/O-Last als die vollständige Emulation eines Rechners, die unbenutzten Hauptspeicher oder Plattenplatz nur über Umwege (Ballooning, Thin Provisioning) dem Hostrechner oder anderen virtuellen Servern zur Verfügung stellen kann.
- Prozesse innerhalb eines virtuellen Servers werden mit dem Scheduler des Hostrechners abgearbeitet, was für die Gastprozesse des virtuellen Servers eine gleichzeitige Ausführung auf Multiprozessorsystemen (SMP) erlaubt. Eine derartige Implementation für Komplettemulationen eines Rechners wäre aufwendig.
- Die Netzwerkverbindungen werden durch Pakettrennung statt durch Virtualisierung realisiert; auch hier wird eine zusätzliche Paketverarbeitung vermieden.
Nachteile
[Bearbeiten | Quelltext bearbeiten]- Linux-VServer erfordert auf dem Host einen modifizierten Betriebssystem-Kernel.
- Alle virtuellen Server benutzen diesen selben Kernel und sind daher auch für darin enthaltene Bugs und Sicherheitslücken anfällig.
- Es sind weder Clustering noch Prozessübernahme möglich; der Kernel des Hostrechners sowie der Hostrechner selbst bilden immer noch einen Single Point of Failure für alle virtuellen Server.
- Da die Netzwerkverbindungen auf einer Pakettrennung und nicht auf einer Virtualisierung beruhen, kann keiner der virtuellen Server eigene interne Routingtabellen aufbauen oder als Firewall-Rechner benutzt werden.
- Einige besonders hardwarespezifische Systemaufrufe wie beispielsweise der Echtzeituhr und von Teilen des /proc und /sys Dateisystems sind nicht virtualisierbar.
- Linux-VServer erlaubt noch keine Zuweisung von I/O-Bandbreite zu einzelnen virtuellen Servern. Diese Option ist erst in den Development-Versionen verfügbar, aber noch nicht in der stabilen Version.
Siehe auch
[Bearbeiten | Quelltext bearbeiten]Weblinks
[Bearbeiten | Quelltext bearbeiten]- Website des Projekts (englisch)
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Release 0.30.215. 17. März 2008 (abgerufen am 21. September 2018).
- ↑ The vserver Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 21. September 2018).