Mittwoch Mai 29, 2013

Linux-Container (LXC) — Teil 1: Überblick

[Dies ist ein Gastartikel von Lenz Grimmer. Er arbeitet bei Oracle im Product Management Team für Oracle Linux.]

Linux-Container (LXC) erlauben die Isolation von einzelnen Diensten und Applikationen oder eines kompletten Linux-Betriebssystems. Jeder Container verfügt dafür über seine eigenen Netzwerk-Schnittstellen, IP-Adressen und Prozess-Tabelle — die laufenden Prozesse anderer Container oder des Host-Systems sind innerhalb des Containers nicht sichtbar. Linux-Container ermöglichen darüber hinaus eine sehr fein granulierte Kontrolle des Ressourcen-Verbrauchs (z.B. RAM, CPU, Disk-I/O).

Generell verfolgen Linux-Container einen komplett anderen Ansatz als klassische Virtualisierungstechnologien wie KVM oder Xen (auf dem z.B. Oracle VM Server für x86 basiert). Eine innerhalb des Containers laufende Anwendung wird direkt auf dem Betriebssystem-Kern des Host-Systems ausgeführt, was eine sehr direkte und faire Verteilung von CPU- und I/O-Ressourcen ermöglicht. Linux-Container bieten daher bestmögliche Performance und sehr ausgefeilte Möglichkeiten, die zur Verfügung stehenden Ressourcen zu verwalten und aufzuteilen.

Im Gegensatz zur "klassischen" Virtualisierung und ähnlich wie bei den Containern (Zonen) in Oracle Solaris oder auch den "Jails" auf FreeBSD, läuft also auf dem Host und in den Containern die gleiche Betriebssystem-Version; es ist nicht möglich, andere Linux-Kernelversionen oder gar andere Betriebssysteme wie z.B. Windows oder Oracle Solaris/x86 innerhalb eines Linux-Containers laufen zu lassen. Vom Host abweichende Linux-Distributionen (z.B. ein Fedora Linux als Container auf einem Oracle Linux Host) sind möglich, so lange sie die auf dem Host laufende Linux-Kernelversion unterstützen. Der Unbreakable Enterprise Kernel (UEK) Release 2 (2.6.39) unterstützt beispielsweise sowohl Oracle Linux 5 und 6. Es ist damit z.B. möglich, Oracle Linux 5 Instanzen als Container auf einem Oracle Linux 6 Host-System zu betreiben. Da Linux-Container vollständig auf Betriebssystem-Ebene realisiert werden, lassen sie sich übrigens ohne Weiteres auch mit anderen Virtualisierungstechnologien kombinieren. So ist es z.B. durchaus möglich, Linux-Container innerhalb einer virtualisierten Linux-Instanz (z.B. auf Oracle VM Server oder Oracle VM VirtualBox) zu erstellen.

Die Anwendungsbereiche für Linux-Container sind vielfältig:

  • Konsolidierung mehrerer einzelner Linux Systeme auf einem Server: Linux-Instanzen, die nicht performance-kritisch sind und unter Umständen nur sporadisch zum Einsatz kommen (z.B. Fax- oder Printserver, Intranet-Services), benötigen oft nicht notwendigerweise einen dedizierten Server für ihren Betrieb. Diese lassen sich energiesparend in separaten Containern auf einem einzelnen Server zusammenfassen.
  • Paralleler Betrieb mehrerer Instanzen einer Applikation, z.B. für unterschiedliche Anwender/Kunden. Jeder Anwender erhält "seine" eigene Applikationsinstanz, bei Bedarf mit einer definierten, zugesicherten Systemleistung. Dies verhindert, daß eine "Amok laufende" Applikation das gesamte Server-System in die Knie zwingt und stellt sicher, dass jeder Anwender nur Zugriff auf seine eigenen Daten hat.
  • Schnell zu erstellende "Sandbox"-Umgebungen für Entwicklungs- oder Testzwecke: einmal erstellte und konfigurierte Linux-Container können als Vorlage (Template) archiviert werden und bei Bedarf schnell dupliziert (geklont) werden. Nach Beendigung der Aktivität kann dieser Klon einfach gelöscht werden. Dies ermöglicht beispielsweise jederzeit reproduzierbare Software-Builds und Test-Ergebnisse, da die Umgebung stets wieder in ihren Urzustand zurück versetzt werden kann. Linux-Container booten üblicherweise auch erheblich schneller als "klassische" virtuelle Maschinen, was einen deutlichen Zeitgewinn bei der Entwicklung und dem Test von Applikationen bedeuten kann.
  • Gesicherter Betrieb einer bestimmten Anwendung: das Host-System und andere Container bleiben geschützt, falls die Anwendung aufgrund einer Sicherheitslücke kompromittiert werden sollte und der Angreifer damit Zugriff auf die Betriebssystem-Instanz erlangen würde. Der angerichtete Schaden kann somit minimiert und direkt vom Host-System aus analysiert und behoben werden.

Achtung: bitte berücksichtigen Sie, dass Linux-Container auf Oracle Linux 6 mit dem Unbreakable Enterprise Kernel Release 2 (2.6.39) derzeit noch den Status "Technology Preview" tragen. Der Einsatz wird daher im Moment nur für Test- und Evaluierungszwecke empfohlen.

Das Open-Source-Projekt "Linux Containers" (LXC) treibt die Entwicklung der auf der "Control Groups"- und "Name Spaces"-Funktionalität des Linux-Betriebssystemkerns basierenden Container-Technologie stetig weiter voran. Control Groups (Cgroups) ermöglichen es, die Ressourcen-Zuteilung für einzelne Prozesse oder Prozessgruppen unter Linux zu regeln und zu überwachen. So lassen sich z.B. die Menge des zur Verfügung stehenden Hauptspeichers, der verfügbare Anteil an CPU-Zeit oder der maximal mögliche Durchsatz zum Festplattenspeicher für eine Applikation festlegen.

Mit Hilfe der "Name Spaces" lassen sich diese Prozessgruppen noch zusätzlich gegeneinander abschirmen, z.B. was die Sichtbarkeit anderer auf dem System laufender Prozesse angeht, oder den exklusiven Zugriff auf eine Netzwerk-Schnittstelle. Auch eine Einschränkung der sichtbaren Dateisystem-Hierarchie lässt sich mit Hilfe von Name Spaces realisieren (ähnlich wie es bei einer klassischen "chroot"-Umgebung der Fall ist).

CGroups und Name Spaces bilden das Fundament, auf dem Linux-Container basieren; sie lassen sich allerdings auch unabhängig davon nutzen.

Wie genau das Erstellen von Linux-Containern funktioniert erläutert der zweite Teil dieses Artikels, inkl. eines Beispiels.

Weitere Links zum Thema Linux Container:


Dienstag Mrz 26, 2013

Umfangreiches neues Oracle VDI 3.5 und Sun Ray 5.4 Release

[Dies ist ein Gast-Artikel von Rolf-Per Thulin. Er ist Principal Sales Consultant bei der Firma Oracle in Deutschland und arbeitet in der globalen Oracle Desktop Virtualisierungs Geschäftseinheit, zuständig für Europa. Die folgenden Themen wie Oracle Desktop Virtualization Infrastructure, VirtualBox, Ultra Thin Client 'Sun Ray', Oracle Virtual Desktop Client und Secure Global Desktop werden von ihm technologisch betreut.]


Einführung in die Desktopvirtualisierung

Die Virtualisierung von Servern und Storage ist inzwischen aufgrund der folgenden Vorteile weit verbreitet: Ressourcen lassen sich flexibel zuweisen, mehrere Services bzw. Anwendungen können über den selben Server betrieben werden und durch die dadurch verbesserte Auslastung der Hardware werden Kosten eingespart.

Doch wie verhält es sich mit den Arbeitsplätzen der Endanwender? In der Regel werden dort immer noch viele einzelne, dedizierte PCs mit gängigen Desktop-Betriebssystemen verwendet, obwohl dies im Zeitalter von Webanwendungen und Cloud Computing für viele Anwendungsfälle gar nicht mehr nötig ist. Auf der anderen Seite können und wollen viele Anwender nicht auf z.B. "ihr" eigenes (sprich: "lokales") Office-Programm verzichten.

Desktopvirtualisierung - auch bekannt unter dem Begriff "Virtual Desktop Infrastructure" (VDI) - ist daher ein Ansatz, die o.g. Vorteile der Servervirtualisierung mit den Anforderungen von Endanwendern zu kombinieren:

Bei der Virtualisierung von PC Betriebssystemen werden auf einem Server individuell konfigurierte Betriebssystem-Instanzen für einzelne Anwender bereitgestellt. Jeder Anwender arbeitet in seiner eigenen virtuellen Systemumgebung. Dies grenzt sich gegenüber einer Terminalserverlösung ab, wo sich mehrere Anwender die Ressourcen eines angepassten Betriebssystems teilen.
Durch diese Basistechnologie können die Desktops mit ihren jeweiligen Daten, Anwendungen und Betriebssystemen zentral im Rechenzentrum betrieben werden. Diese "private Cloud" wird durch die Inhouse-IT zentral kontrolliert und kann exklusiv von einer einzigen Organisation genutzt werden. Der Arbeitsplatz nutzt somit keinen lokalen Speicher und über das Netzwerk werden keine unternehmenskritischen Daten zum jeweiligen Arbeitsplatz transportiert. Sowohl Mandantenfähigkeit als auch globale VDI-Lösungsarchitekturen können mit der Oracle Virtual Desktop Infrastructure  Software problemlos abgebildet werden.
Der bevorzugte eigene Hypervisor Oracle VM VirtualBox bietet die umfangreichsten Funktionen im Zusammenspiel mit der Oracle VDI Software. Die Offenheit der Lösung wird durch die Anbindung anderer Hypervisors, wie VMware vSphere, Microsoft Hyper-v und Citrix XenDesktop, gewährleistet.

Der gesicherte Zugriff auf virtuelle Desktops erfolgt über den Ultra Thin Client 'Sun Ray' (ein spezialisiertes und kompaktes Endgerät), die Oracle Virtual Desktop Client (OVDC) Software oder über einen Secure Global Desktop (SGD) im Internet Browser.

Im folgenden habe ich die Highlights aus den Ankündigungen der Oracle VDI 3.5 und der Sun Ray 5.4 Produkte zusammengefasst. Es hat sich viel getan, nicht nur neue Features, sonden auch die Kombination von Oracle Hardware und Software (VDI on a Single Server - 'VDI in a Box') kann für Desktop Virtualisierungsprojekte sehr interessant sein.

Oracle VDI 3.5 Neuigkeiten

  • Neue Plattformen für den Betrieb: Solaris 11.1 und Oracle Linux 6.3
  • Oracle "VDI in a Box -  Enterprise Computing Ready".
    Es wurde die Verfügbarkeit für VDI Server mit internen Storage verbessert. Der 'Reference Virtual Desktop' auch Template oder Golden Master Image genannt, wird automatisch auf alle im Verbund bestehenden Server kopiert.  Beim Ausfall eines Desktop Providers bekommt der Anwender den Desktop von einem anderen Server.
    Ein Kunde startet sehr einfach z.B. mit einem kleinen x86-basierten Testserver vom Typ Oracle X3-2L M3 und skaliert durch das Hinzufügen weiterer Server in Richtung Enterprise Computing.
    Dazu gibt es noch das folgende Dokument mit zusätzlichen Informationen:
    White Paper "Oracle Single Server VDI Solution"
    Diese Lösung ist zertifiziert von der VDI Entwicklung für die Oracle Hardware. Man spart sich damit die Kosten eines komplexen externen Storagesystems. Das ist sehr wirtschaftlich und mit einem geringen Risiko für den Kunden verbunden.
  • Oracle VDI Enterprise Manager Cloud Control 12c Integration
    Nun kann eine VDI Umgebung mit dem Enterprise Manager überwacht und verwaltet werden.
    Besonders interessant ist dies für die Perfomance Analyse.
  • Personal Hard Drive for User Windows Roaming Profiles
    verhindert Netzwerk - und Storage I/O Bottlenecks
  • Personal Hard Drive for Microsoft App-V
    verhindert Netzwerk - und Storage I/O Bottlenecks für Application Streaming Caches. Der Application Cache wird zur Verfügungstellung von zeitlich begrenzten Anwendungen genutzt, ohne sie im Betriebssystem zu installieren. 
  • Erweiterte "Location Awareness"
    In großen Unternehmen arbeiten viele Nutzer nicht mehr von festen Arbeitsplätzen (Stichwort "Hot Desking"). In diesem Zusammenhang ermöglicht "Location Awareness" dennoch die Zuordnung von Druckern, Anwendungen- und VoIP-Telefonen.
    Das Prinzip verdeutlicht folgendes Video:
    http://www.youtube.com/watch?v=K1GRTRk5E0M&list=UU0j6KJgI09ccYqyNY3-CPSQ&index=24
    Oracle Location Awareness White Paper Download:
    http://www.oracle.com/us/technologies/virtualization/vdi-location-awareness-1899163.pdf
  • Neuer Hypervisor: VirtualBox 4.2.8
    • Unterstützung neuer Guest VM OS Versionen wie OL 6.3, Windows 8, Ubuntu 12.04, Solaris 11.1, ....
    • USB SmartCard Reader Unterstützung über VirtualBox RDP (VRDP)
    • Verbesserte Windows Multimedia Redirection, codiert wird im Client, was die virtuelle Maschine (VM) entlastet

Oracle Sun Ray Server (SRS) Neuigkeiten

  • Neue Plattformen für den Betrieb: Solaris 11 und Oracle Linux 6.3
  • Remote Desktops
    Windows 8 und Windows Server 2012 Desktop Mode
  • Neues Sicherheitsfeature - IPsec Unterstützung
    Die IPsec Option bietet Verschlüsselungsstufen bis zu AES 256 Bit. Das sichert die Kommunikation zwischen den Sun Ray Ultra Thin Clients und der Sun Ray Server Software ab. Der grosse Vorteil ist, dass die Firewall-Systeme nur noch einen Datenstrom (IP/ESP) durchlassen müssen und nicht mehr mehrere Ports öffnen müssen. Die Voraussetzung dafür: Sun Ray Firmware 11.1.1
  • Multimedia Erweiterungen für Windows 7/2008
    Zur Entlastung von Desktop virtuellen Maschinen auf dem Server, nutzen wir unsere eigene Multimediaunterstützung, um HD Videos abzuspielen. Die 720p (1280x720 Auflösung) HD MPEG-2, H.264 undVC-1 Videos werden nun im Sun Ray Thin Client dekodiert.
  • PC SmartCard Framework Service unter Linux
    Dieses gab es schon vorher für Solaris und wurde nun auf Linux portiert. Es ist gut geeignet für eine Zwei-Faktor-Authentifizierung, PIN Login sowie Identitäts- und Signatur-Services.
  • Dynamic Session Resizing auf Tablets
    Auf dem iPad und Android-Tablets wird die Bildschirmgröße bei Nutzung im Hochformat automatisch angepasst. Siehe dazu auch weiter unten die Neuerungen des Oracle Virtual Desktop Client 3.2.
  • Oracle VDI Enterprise Manager Cloud Control 12c Integration
    Nun kann auch eine Sun Ray Umgebung von Cloud Control 12c überwacht und verwaltet werden. Es gibt jetzt die Möglichkeit über My Oracle Support einen Sun Ray Software Self Update mit dem Enterprise Manager durchzuführen. 
  • HID Single TouchScreen Display
    Bsp: Planar PT1710MX -, PT2285PW - und 3M  M2167PW Touchscreens
    Voraussetzung: Sun Ray Firmware 11.1.1

Oracle Virtual Desktop Client 3.2 Neuigkeiten

Wir sehen im Markt die Ausweitung von BYOD (Bring Your Own Device) Konzepten in Unternehmen. Dafür eignet sich unsere Lösung besonders und erhöht dabei die Sicherheit.
Die meisten neuen Funktionen sind für die einfachere Bedienbarkeit eines Desktops auf Tablets programmiert worden.

  • Neue Pattformen: Windows 8, Ubuntu 12.04, OL 6.3 ....
    Windows 8 Desktop Mode only
  • USB Redirection on Windows OS with OVDC 3.2
    kennt man vom Sun Ray Thin Client
  • Dynamic Session Resize
    Voraussetzung SRS 5.4 oder VDI 3.5
  • Android Tablets
    • Android OS 4.x
    • externe Tastatur und Maus Unterstützung
    • erweiterte Tastaturfunktionstasten
      gut für die Benutzbarkeit des Windows Desktops
    • Copy und Paste von Texten
    • Clipboard bis zu 10MB
    • Neue Gestensteuerungen
    • Display Rotation
  • iPad Tablets
    • iOS 5.1 und iOS 6.x
    • iPad 1 - 4 und iPad Mini
    • Copy und Paste von Texten
    • Clipboard bis zu 10MB
    • Display Rotation
    • Benutzbarkeit bei höheren Auflösungen:
      Nach Ändern der Auflösung in den iPad Einstellungen hat man durch das Dynamic Session Resize Feature sofort grössere Desktop Icons auf dem Tablet.
    • externes Bluetooth Keyboard
    • Neue Gestensteuerungen

Dokumentation

 Downloads


      Mittwoch Mrz 20, 2013

      Virtualisierung ist überall...

      "Virtualisierung von und mit Oracle?"

      Auf diese Frage erhält man - je nachdem wen man fragt - eine Reihe von unterschiedlichen Antworten, vor allem:

      "Oracle VM"
      "VirtualBox"
      "Zonen" bzw. "Container"

      Alles richtig - aber ist "Oracle VM" inzwischen nicht ein Oberbegriff? Und wo liegen eigentlich die Unterschiede, und welche Lösung ist für welchen Einsatzzweck sinnvoll?

      Im folgenden möchte ich daher - zumindest für den Bereich Server und Betriebssysteme - kurz die verfügbaren Möglichkeiten von Oracle aufzählen und einige interessante Fakten dazu nennen.

      Oracle VM (x86) ist bekanntermassen eine Lösung für Servervirtualisierung: Ein auf dem "bare metal" laufender Hypervisor ermöglicht das Betreiben mehrerer komplett eigenständiger Virtueller Maschinen auf der gleichen physischen Hardware. Weniger bekannt ist vielen jedoch, dass es neben dem "Standalone-Betrieb" zur Virtualisierung von z.B. Datenbankservern auch noch weitere Szenarien gibt in denen Oracle VM zum Einsatz kommt:

      • So ist Oracle VM (x86) z.B. die Basis für Virtualisierung in einigen "Engineered Systems":
        Sowohl auf den Oracle Exalogic als auch auf den Oracle Exalytics Maschinen kann optional Oracle VM eingesetzt werden, um eine größere Flexibilität bei der Aufteilung von Ressourcen zu gewährleisten.
        Seit relativ kurzer Zeit ist es außerdem möglich, Oracle VM auch auf der Oracle Database Appliance (ODA) einzusetzen. Dadurch wird es möglich, die ODA nicht nur als reine "Datenbankmaschine" zu betreiben, sondern auf der gleichen Hardware auch noch (z.B.) VMs mit Application Servern laufen zu lassen, um so alle Teile einer Gesamtanwendung in einer Appliance zu betreiben. Dies ist besonders für Oracle-Partner mit eigenen Lösungen sehr interessant.
      • OVM (x86) ist außerdem die Basis für die "Infrastructure as a Service" (IaaS)-Features im Enterprise Manager Cloud Control.

      Neben Oracle VM (x86) gibt es auch noch das "Schwesterprodukt" Oracle VM (SPARC), welches vielen Nutzern von Sun Hardware noch als "Logical Domains" (LDoms) in Erinnerung sein dürfte. (Wer sich näher mit OVM (SPARC) befassen möchte, sollte übrigens mal auf dem Blog meines Kollegen Stefan Hinker vorbeischauen. Dort finden sich häufig Tipps und Artikel zu diesem Thema - größtenteils auch in deutscher Sprache.)

      Oracle VM VirtualBox hingegen ist nicht nur "Virtualisierung auf dem Desktop" - also die Möglichkeit VMs "auf" einem bereits installierten Windows/Linux/Mac-System laufen zu lassen - sondern wird auch bei "Virtualisierung VON Desktops" eingesetzt. Das Stichwort dazu lautet VDI (Virtual Desktop Infrastructure.) Wie dies im einzelnen funktioniert und welche Produkte von Oracle hierfür zur Verfügung stehen, wird in Kürze Bestandteil eines Gastartikels auf diesem Blog sein.
      [Nachtrag: Der Artikel zu VDI ist inzwischen erschienen.]

      Bei "Containern" (manchmal auch Zonen genannt) reden wir hingegen nicht über Virtualisierung von Servern, sondern über Virtualisierung innerhalb eines Betriebssystems: Verschiedene Programme "sehen" jeweils ein "eigenes" OS, obwohl sie in Wirklichkeit alle innerhalb des gleichen Betriebssystems laufen.
      Diese Fähigkeit ist schon lange eine beliebte Möglichkeit, in Oracle Solaris verschiedene voneinander unabhängige Umgebungen mit sehr geringem Overhead auf einer einzigen physischen Maschine zu betreiben, und deren Ressourcen-Nutzung zentral zu steuern.
      Weniger bekannt ist, dass es inzwischen mit den "Linux Containern" (LXC) auch für Linux eine Möglichkeit gibt, vergleichbares zu erreichen. Auch zu LXC wird es demnächst einen Artikel auf diesem Blog geben.

      About

      Dieses Blog befasst sich mit Themen rund um Oracle Linux, Virtualisierung (primär mit Oracle VM) sowie Cloud Computing mit Oracle Produkten. Es wird betreut von Manuel Hoßfeld
      - - - - - - - - - - - - - - - - - - - -
      DISCLAIMER: Die Artikel und Kommentare in diesem Blog entsprechen den Meinungen der jeweiligen Autoren, und nicht notwendigerweise denen der Oracle Deutschland B.V. & Co. KG oder der Oracle Corporation.

      Search

      Categories
      Archives
      « April 2014
      MoDiMiDoFrSaSo
       
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
          
             
      Heute