Installation einer Private Cloud mit OpenNebula

Dieser Artikel beschreibt das Einrichten einer Private Cloud mit OpenNebula auf Ubuntu. Die Infrastruktur besteht dabei aus drei physikalischen Maschinen. Einem Front-End und zwei Nodes, auf denen die virtuellen Maschinen ausgeführt werden. Auf den Nodes muss zusätzlich eine Bridge konfiguriert werden, damit die virtuellen Maschinen das lokale Netzwerk erreichen können. Für das Einrichten der Brigde siehe den Bereich Bridging.

Installation

Auf dem System für das Front-End installieren wir OpenNebula mit folgendem Befehl:

sudo apt-get install opennebula

Für jeden Node installieren wir den OpenNebula-Node:

sudo apt-get install opennebula-node

Um später die SSH Schlüssel zu kopieren, benötigt der oneadmin (wird von OpenNebula erstellt) ein Passwort. Dazu führen wir auf jeder Maschine folgenden Befehl aus:

sudo passwd oneadmin

Nachfolgend müssen die Namen für node01 und node02 entsprechend der eigenen Installation angepasst werden.

Nun kopieren wir den SSH Schlüssel des oneadmin auf jeden Node und in die Datei authorized_keys des Front-Ends.

sudo scp /var/lib/one/.ssh/id_rsa.pub oneadmin@node01:/var/lib/one/.ssh/authorized_keys
sudo scp /var/lib/one/.ssh/id_rsa.pub oneadmin@node02:/var/lib/one/.ssh/authorized_keys
sudo sh -c "cat /var/lib/one/.ssh/id_rsa.pub >> /var/lib/one/.ssh/authorized_keys"

Der SSH Schlüssel jedes Nodes muss in die Liste der bekannten Hosts unter /etc/ssh/ssh_known_hosts auf dem Front-End hinzugefügt werden. Nun muss die SSH Session beendet werden und der SSH Schlüssel von ~/.ssh/known_hosts nach /etc/ssh/ssh_known_hosts kopiert werden.

sudo sh -c "ssh-keygen -f .ssh/known_hosts -F node01 1>> /etc/ssh/ssh_known_hosts"
sudo sh -c "ssh-keygen -f .ssh/known_hosts -F node02 1>> /etc/ssh/ssh_known_hosts"

Diese Schritte erlauben dem oneadmin SCP ohne ein Passwort oder manuellen Eingriff zu nutzen, um eine Image auf den Nodes bereitzustellen.

Auf dem Front-End muss ein Verzeichnis zum Speichern der Images für die virtuellen Maschinen erstellt und dem oneadmin Zugriff auf das Verzeichnis gegeben werden.

sudo mkdir /var/lib/one/images
sudo chown oneadmin /var/lib/one/images/

Nun kann eine virtuelle Maschine in das Verzeichnis /var/lib/one/images kopiert werden.

Eine virtuelle Maschine auf Basis von Ubuntu kann mit dem vmbuilder erstellt werden, siehe dazu JeOS and vmbuilder.

Konfiguration

Der OpenNebula Cluster kann nun konfiguriert werden. Weiterhin können virtuelle Maschinen dem Cluster hinzugefügt werden.

Auf dem Front-End geben wir dazu folgenden Befehl ein:

onehost create node01 im_kvm vmm_kvm tm_ssh
onehost create node02 im_kvm vmm_kvm tm_ssh

Als nächstes erstellen wir eine Template-Datei mit dem Namen vnet01.template für das virtuelle Netzwerk:

NAME = "LAN"
TYPE = RANGED
BRIDGE = br0
NETWORK_SIZE = C
NETWORK_ADDRESS = 192.168.0.0

Die NETWORK_ADDRESS sollte dem eigenen lokalen Netzwerk entsprechen.

Mit dem onevnet Befehl fügen wir das virtuelle Netzwerk OpenNebula hinzu:

onevnet create vnet01.template

Jetzt erstellen wir eine Template-Datei für eine virtuelle Maschine mit dem Namen vm01.template:

NAME = vm01

CPU = 0.5
MEMORY = 512

OS = [ BOOT = hd ]

DISK = [
source = "/var/lib/one/images/vm01.qcow2",
target = "hda",
readonly = "no" ]

NIC = [ NETWORK="LAN" ]

GRAPHICS = [type="vnc",listen="127.0.0.1",port="-1"]

Mit dem Befehl onevm starten wir die virtuelle Maschine:

onevm submit vm01.template

Mit dem Befehl onevm list können wir weitere Informationen über die gestarteten virtuellen Maschinen abfragen. Mit dem Befehl onevm show vm01 erhalten wir detaillierte Informationen zu einer bestimmten virtuellen Maschine.

Quelle



Eigenschaften einer Cloud Platform

Ich habe bisher einige Cloud Computing Plattformen, darunter openQRM, OpenNebula oder OpenECP vorgestellt und ein paar weitere werden noch folgen. Daher erläutere ich in diesem Artikel die grundsätzlichen Eigenschaften die eine Cloud Plattform (meiner Meinung nach) hat bzw. haben sollte.

1. Zunächst sollten ausreichend virtualisierte Serverressourcen zur Verfügung stehen. Weiterhin müssen, (vor allem dann) wenn sich mehrere Kunden auf einem System befinden, jedem Kunden diese virtualisierten Serverressourcen garantiert werden und die einzelnen virtuellen Instanzen isoliert und damit vollständig von einander getrennt betrieben werden.

2. Zum Bereitstellen von umfangreichen Enterprise-Class-Services wie z.B. hohe Verfügbarkeit, Systemwiederherstellungen nach Datenverlusten, automatische Skalierung während Lastspitzen und Ressourcenoptimierungen muss eine große (unbegrenzte) Menge an virtualisierten Serverressourcen vorhanden sein.

3. Für ein zustandsbehaftetes Lifecycle Management, wozu Snapshots, schnelles Cloning (duplizieren) und eine dynamische Versorgung mit Ressourcen über große Server Infrastrukturen gehören, wird ein virtualisierter Cloud Speicher benötigt.

4. Für die Anpassung der virtuellen Topologie - durch das Hinzufügen weiterer Netzwerkfunktionen für Sicherheit, Routing, Load Balancing, Application Firewalls, Protokol Optimierung, etc. in den OSI Schichten 3 bis 7 - und die Möglichkeit die jeweiligen (Teil)-Netzwerke auf Multi-Kunden Systemen zu isolieren und Ressourcen zu garantieren, werden virtuelle Netzwerk Ressourcen benötigt.

5. Es müssen umfangreiche und offene APIs zur Kontrolle sämtlicher Ressourcen vorhanden sein, damit Cloud Computing Anbieter ihren Kunden die vollständige Kontrolle über deren privaten virtuellen Rechenzentren anbieten können.

6. Die Cloud Plattform muss für allen gängigen Virtualisierungs-Plattformen vollständige Kompatibilität bieten und jede virtuelle Maschine unterstützen, um u.a. einen Vendor Lock-in zu vermeiden. Des Weiteren müssen Funktionen für die Migration von virtuellen Maschinen zwischen unterschiedlichen Virtualisierungs-Technologien (P2V, V2P und V2V) vorhanden sein.

7. Zu guter letzt sollte die Cloud Plattform auf Open Source basieren, um eine größtmögliche Kompatibilität zu allen möglichen Clouds aufzuweisen und um einfach adaptiert und angenommen zu werden.



OpenECP

Sam Johnston hat mit OpenECP (Open Elastic Computing Platform) einen Fork von Enomalys ECP entwickelt und veröffentlicht, den ich in diesem Artikel vorstelle.

Bei OpenECP handelt es sich um einen Open Source Fork von Enomaly's Elastic Computing Platform (ECP), welche im November 2009 kommerzialisiert wurde. Der Fork beinhaltetdabei die vollständige ECP und behebt darüber hinaus einige schwerwiegende Sicherheitslücken.

OpenECP ist eine Web basierte Management Plattform für Linux basierte Hypervisor, einschließlich KVM und Xen und kann dafür genutzt werden um Public und Privat Cloud Computing Umgebungen aufzubauen.

OpenECP soll immer frei verfügbar sein, weshalb es unter die Affero General Public License v3 gestellt wurde.

Funktionen

  • Unterstützung von Xen, KVM, Qemu, OpenVZ und Amazon EC2
  • Unterstützung von mehreren OpenECP Server
  • REST Web Service API
  • Ein Dashboard zur Auswertung und Steuerung (Last-Ausgleich)
  • Automatisiertes Deployment von virtuellen Maschinen

Screenshots

OpenECP Cluster Manager

OpenECP Repository

OpenECP User Manager

Quelle

Vielen Dank auch an Andre Westbunk



Enomaly's Elastic Computing Platform

Enomaly’s Elastic Computing Platform (ECP) dient Internet Carriern, Hosting-Providern und deren Kunden dazu, die Stärken von Cloud Computing, wie Flexibilität und Kosteneinsparungen zu nutzen. Mit ECP können vollständige Cloud Computing Plattformen verwaltet und Infrastrukturen on-Demand bereitgestellt werden. Weitere Möglichkeiten bestehen in der dynamischen Versorgung mit Ressourcen und der Skalierung nach Bedarf.

Enomaly's Elastic Computing Platform bietet folgende Funktionen:

Unbegrenzte Skalierbarkeit
Mit der ECP Architektur können große Cloud Plattformen über mehrere Rechenzentren in unterschiedlichen geographischen Regionen hinweg aufgebaut werden.

Eigene Konfigurationsmöglichkeiten für die optimale Anpassung an das Unternehmen
Unternehmen können, unterstützt durch eine Echtzeit-Überwachung, sowie umfangreichen Befehls- und Kontrollmöglichkeiten, ihre Cloud Infrastrukturen bzgl. Lastspitzen entsprechend anpassen.

Sicherheit trotz mehrerer unterschiedlicher Nutzer auf einer Plattform
Auf Basis von sehr fein granular einstellbaren Zugriffskontrollen kann ein Benutzer den Zugriff auf die Cloud Plattform (für Multi-User) so einstellen, dass nur die jeweils eigenen Ressourcen eingesehen und verwaltet werden können. Darüber hinaus kann ein Anbieter eine unbegrenzte Anzahl von VLANs für jeden Kunden erstellen und damit das Netzwerk zwischen mehreren Kunden so aufteilen und die Teilnetzwerke so isolieren, dass jedem Kunden innerhalb der Cloud die Privatsphäre seiner Daten garantiert wird. Ein Quota System schützt die Cloud gegen den Missbrauch.

Automatisierte Versorgung mit Ressourcen
ECP verfügt über eine Regelbasis zur automatischen Versorgung mit Ressourcen und kann damit den optimalen Standort einer virtuellen Anwendung bestimmen. Dazu stellt ECP sicher, dass ein Node einem optimalen physikalischen als auch virtuellen Standort zugeordnet ist. Weiterhin ist ECP in der Lage, ein offline Image einer virtuellen Maschine zu ändern, um den Speicherplatz, die Vernetzung, den Zustand des Clusters, etc. für schnelle Deployments und Off-Site Migrationen vorzunehmen.

Integration in vorhandene Infrastrukturen
ECP verfügt über eine API, mit der Benutzer die Verwaltung ihrer Cloud Infrastruktur automatisieren können, um z.B. externe SLAs oder andere Systeme für die Verwaltung zu integrieren. Darüber hinaus stellt ECP eine Back-Office API bereit, mit der weitere Systeme zur Ressourcenversorgung und Abbrechnung von (anderen) Anbietern integriert und administrative Aufgaben automatisiert werden können.

Integration von ECP im Rechenzentrum

Quelle



Die Xen Cloud Platform

In diesem Artikel stelle ich die Xen Cloud Platform (XCP) vor, die im August 2009 erstmals veröffentlicht wurde. Dabei handelt es sich um eine Initiative, mit der eine vollständige Open Source Lösung auf Basis einer von der Industrie unterstützenden API für Cloud Anbieter zur Verfügung stehen soll. Mit einer XCP Infrastruktur sollen andere Open Source Projekte wie z.B. Eucalyptus, Convirture, OpenNebula, OpenXenCenter, Xen VNC Proxy, und Nimbus in der Lage sein den Xen Hypervisor besser nutzen zu können, in dem die neue API speziell auf das Cloud Computing ausgerichtet ist.

Die Xen Cloud Platform versteht sich als eine Kombination der Eigenschaften der Xen Virtualisierung Platform (Mobilität, Offenheit, Isolation und der Möglichkeit mehrere Instanzen parallelen auszuführen) mit neuen und verbesserten Speicher-, Sicherheits- und Netzwerk- Virtualisierungstechnologien. Damit soll eine Vielzahl von virtuellen Infrastruktur Cloud Services angeboten werden können. Darüber hinaus werden Anforderungen bzgl. der Sicherheit, Verfügbarkeit, Performance und Isolation von Hybrid Clouds erfüllt.

Aktuelle Funktionen

  • Xen 3.4.1
  • Linux 2.6.27 Kernel
  • Windows PV Treiber, Microsoft Zertifiziert
  • XAPI Enterprise-class Management Tool Stack
    • Lebenszyklus einer virtuellen Maschine: Live Snapshots, Checkpoint, Migration
    • Ressourcen Pools: Sichere Neuverteilung (Live), Autokonfiguration, DR
    • Host Konfiguration: Flexibles Speichermanagement, Netzwerkbetrieb, Power Management
    • Verfolgen von Ereignissen: Fortschritt, Benachrichtigung
    • Sichere Kommunikation durch SSL
    • Möglichkeit für Upgrades und Patching
    • Überwachung und Benachrichtung bzgl. der Perfomance in Echtzeit
  • Unterstützung von Single-Root I/O Virtualization
  • Installation des Host per CD-ROM und Netzwerk
  • Vollständige "xe" Kommandozeile und Web Service API
  • Openvswitch
  • Fehlertoleranz (Marathon FT products)
  • VNC Console Proxy und Web Front-End
  • Unabhängiges Front-End

Roadmap für XCP 1.0

  • VSwitch Integration
    Mehrere Nutzer einer Netzwerkinfrastruktur; Übernahme der Firewall- und Routingregeln von migrierten virtuellen Maschinen; Flexible Überwachung des Datenverkehrs von virtuellen Ports
  • Netchannel 2 Integration
    Verbesserung der Skalierbarkeit der Xen Vernetzung auf größeren Systemen; Beschleunigung des Datenverkehrs zwischen virtuellen Maschinen
  • Single-Root I/O Virtualization (SR-IVO) Vernetzung
    Xen unterstützt bereits SR-IVO Netzwerkkarten, allerdings müssen diese noch manuell konfiguriert werden.
  • Starten der Gast Systeme von SR-IOV Host-Bus-Adapters (HBAs)
  • Libvirt bindings
  • Native Unterstützung für das Open Virtualization Format (OVF)
  • DMTF (Distributed Management Task Force) Standards für Virtualisierung und Cloud
  • Intelligente Fehlerbehebung um die Auswirkungen von Hardware-Fehlern zu minimieren
  • Unterstützung von Web-basierten Management mehrere Nutzer für unterschiedliche Anbieter wie z.B. Eucalyptus, Enomaly oder OpenNebula
  • Verbesserung der Skalierbarkeit des Managements für die Verwaltung von mehr als 1.000 Xen-Hosts
  • Zusammenschluss von günstigen lokalen Speicher durch die Integration von DRDB und Parallax
  • Oracle Cluster File System 2 (ocfs2) Integration

Quelle

Xen Cloud Platform



ChromeOS in der VirtualBox

In diesem Artikel zeige ich heute, wie man Googles ChromeOS mit der Virtual Box ausführen kann.

Voraussetzungen

In Kürze

Zunächst laden wir uns das ChromeOS VMWare Image herunter, das auch für die VirtualBox genutzt werden kann. Anschließend erstellen wir eine virtuelle Machine für den Typ Linux/Ubuntu und weisen ihr das VMWare Image zu. Ist die virtuelle Machine gestartet, können wir uns mit einem vorhandenen Google Account an ChromeOS anmelden. Achtung!!! Das Tastaturlayout ist auf Englisch voreingestellt.

In Bildern

Nach der Installation starten wir die VirtualBox.

Anschließen öffnen wir den Manager für virtuelle Maschinen über Datei >> Manager für virtuelle Maschinen. Hier fügen wir das ChromeOS VMWare Image als Festplatte hinzu.

Jetzt erstellen wir eine neue virtuelle Maschine, indem wir den blauen Punkt auswählen, geben der virtuellen Maschine einen Namen, hier ChromeOS und wählen als Betriebssystem Linux und Version Ubuntu.

Im nächsten Schritt weisen wir der virtuellen Maschine den für sie verfügbaren Arbeitsspeicher zu, hier 384 MB.

Nun weisen wir der virtuellen Maschine die Festplatte zu, die wir oben über den Manager für virtuelle Maschinen angelegt haben.

VirtualBox zeigt uns am Ende eine Zusammenfassung.

Mit einem Klick auf den grünen Pfeil wird die virtuelle Maschine mit dem ChromeOS gestartet.

Nun können wir uns mit unserem Google Benutzernamen und Passwort bei ChromeOS anmelden.



Erste Schritte mit Amazon EC2 – Windows

Dieses Tutorial beschreibt das Einrichten einer virtuellen Instanz mit einem Windows Server 2008 AMI (Amazon Machine Image) auf Basis der Amazon Elastic Compute Cloud (Amazon EC2). Dazu gehören die vollständige Einrichtung der Instanz und der anschließende Zugriff per Remote Desktop Verbindung von einem Windows 7 Computer.

Voraussetzungen

  • Amazon Web Service Account
  • Amazon EC2 ist für den Account bereits aktiviert
  • RDP Client

Auswahl, Einrichten und Starten der Instanz

Zuerst öffnen wir die Webseite der Amazon Web Services und melden uns dort an.

Anschließend starten wir die AWS Management Console für EC2.

Hier klicken wir auf Launch Instance.

Ein weiteres Fenster öffnet sich, in dem bereits fertig vor-konfigurierte Amazon Machine Images (AMIs) von Amazon angezeigt werden. Hier wählen wir das erste AMI - Getting Started on Microsoft Windows Server 2008 (AMI Id: ami-a4698bcd)

Nun wählen wir folgende Konfiguration:

  • Number of Instances: 1
  • Availability Zone: No Preference
  • Instance Type: Small (m1.small 1.7 GB)

Als erweiterte Konfiguration wählen wir:

  • Kernel ID: Use Default
  • RAM Disk ID: Use Default
  • Monitoring: Nein

Anschließend erstellen wir ein Schlüsselpaar, hier mit dem Namen clouduser_key und speichern es auf unserem Rechner.

Im nächsten Schritt konfigurieren wir die Firewall, indem wir für unsere AMI eine Security Group erstellen. Die Standardvorgabe ist der externe Zugriff auf die Ports 3389 (RDP), MS SQL Server (1433) und 80 (HTTP). Die Freigaben für den Port 80 und 1433 habe ich entfernt, da wir sie in diesem Fall nicht benötigen. Wir geben der Security Group einen Namen, hier Security_Group_2 und eine Beschreibung, hier RDP_Only und wählen continue.

Danach erhalten wir eine Zusammenfassung unserer Konfiguration, wo wir mittels Launch unsere Instanz starten.

Über Your instances are now launching kommen wir zur Console zurück.

Dort sehen wir, dass unsere soeben erstellte Instanz aktiv ist und wir uns nun mit ihr verbinden können. Dazu notieren wir uns zunächst den Namen in der Spalte Public DNS.

Verbinden mit der Instanz

Um uns mit der Instanz zu verbinden öffnen wir zunächst die Datei mit unserem erstellten Private Key und kopieren den gesamten Inhalt inkl. der Kommentare -----BEGIN RSA PRIVATE KEY----- und -----END RSA PRIVATE KEY-----.

Nun gehen wir zurück zur AWS Management Console, klicken mit der rechten Maustaste auf die Instanz und wählen Get Windows Password

In das Feld Private Key* fügen wir den privaten Schlüssel inkl. der Kommentare -----BEGIN RSA PRIVATE KEY----- und -----END RSA PRIVATE KEY----- ein.

Nach dem Klick auf Decrypt Password wird uns der Benutzername und das Passwort für die Anmeldung an unserer Instanz angezeigt.

Jetzt öffnen wir die Remote Desktop Verbindung und tragen dort den Public DNS Namen ein.

Nach dem Klick auf Verbinden geben wir den Benutzernamen und das Passwort, das wir oben erhalten haben, ein.

Die Verbindung wird hergestellt.

Nun müssen wir noch das Zertifikat unserer Instanz akzeptieren.

Wir sind mit unserer Instanz verbunden.

Beenden der Instanz

Um die Instanz wieder zu beenden gehen wir zurück zu der AWS Management Console klicken mit der rechten Maustaste auf die Instanz und wählen Terminate.

Nach dem Bestätigen wird die Instanz beendet.

In der AWS Management Console ist am gelben Punkt zu sehen, dass die Instanz beendet wird. Das benötigt ein wenig Zeit.



Erste Schritte mit Amazon EC2 – Linux

Dieses Tutorial beschreibt das Einrichten einer virtuellen Instanz mit einem Fedora Linux AMI (Amazon Machine Image) auf Basis der Amazon Elastic Compute Cloud (Amazon EC2). Dazu gehören die vollständige Einrichtung der Instanz und der anschließende Zugriff per SSH von einem Windows 7 Computer.

Voraussetzungen

Auswahl, Einrichten und Starten der Instanz

Zuerst öffnen wir die Webseite der Amazon Web Services und melden uns dort an.

Anschließend starten wir die AWS Management Console für EC2.

Hier klicken wir auf Launch Instance.

Ein weiteres Fenster öffnet sich, in dem bereits fertig vor-konfigurierte Amazon Machine Images (AMIs) von Amazon angezeigt werden. Hier wählen wir das erste AMI - Getting Started on Fedora Core 8 (AMI Id: ami-b232d0db)

Nun wählen wir folgende Konfiguration:

  • Number of Instances: 1
  • Availability Zone: No Preference
  • Instance Type: Small (m1.small 1.7 GB)

Als erweiterte Konfiguration wählen wir:

  • Kernel ID: Use Default
  • RAM Disk ID: Use Default
  • Monitoring: Nein

Anschließend erstellen wir ein Schlüsselpaar, hier mit dem Namen clouduser_key und speichern es auf unserem Rechner.

Im nächsten Schritt konfigurieren wir die Firewall, indem wir für unsere AMI eine Security Group erstellen. Die Standardvorgabe ist der externe Zugriff auf die Ports 22 (SSH) und 80 (HTTP). Die Freigabe für den Port 80 habe ich entfernt, da wir sie in diesem Fall nicht benötigen. Wir geben der Security Group einen Namen, hier Security_Group_1 und eine Beschreibung, hier SSH_Only und wählen continue.

Danach erhalten wir eine Zusammenfassung unserer Konfiguration, wo wir mittels Launch unsere Instanz starten.

Über Your instances are now launching kommen wir zur Console zurück.

Dort sehen wir, dass unsere soeben erstellte Instanz aktiv ist und wir uns nun mit ihr verbinden können. Dazu notieren wir uns zunächst den Namen in der Spalte Public DNS.

Verbinden mit der Instanz

Um uns mit der Instanz zu verbinden starten wir zunächst PuTTYgen und laden uns über Load den privaten Schlüssel den wir uns oben erstellt haben.

Wenn dieser geladen ist, klicken wir auf Save private Key und ignorieren das Fenster mit der Passphrase!

Jetzt öffnen wir unseren PuTTY SSH Client und tragen den Public DNS Namen in das Feld Host Name. Der Port 22 (SSH) ist der Standardwert.

Wir navigieren im PuTTY SSH Client auf der linken Seite zu dem Punkt SSH >> Auth. Dort laden wir bei dem Punkt Authentication parameters unseren oben mit PuTTYgen erzeugten privaten Schlüssel.

Nach einem klick auf Open wird eine Verbindung zu unserer Instanz hergestellt.

Dort melden wir uns mit dem Benutzer root an. Nun können wir mit unserer erstellten Linux Instanz arbeiten.

Beenden der Instanz

Um die Instanz wieder zu beenden gehen wir zurück zu der AWS Management Console klicken mit der rechten Maustaste auf die Instanz und wählen Terminate.

Nach dem Bestätigen wird die Instanz beendet.

In der AWS Management Console ist am gelben Punkt zu sehen, dass die Instanz beendet wird. Das benötigt ein wenig Zeit.



CloudCamp

Das CloudCamp ist eine sogenannte Unconference, also eine Veranstaltung die von ihren Teilnehmern lebt und organisiert wird. Das CloudCamp dient dazu, um "Early Adopters" von Cloud Computing Technologien die Möglichkeit zu geben, Erfahrungen und Ideen miteinander auszutauschen. In offenen Diskussionen kann jeder seine Gedanken über die Weiterentwicklungsmöglichkeiten des Cloud Computing der Teilnehmerschaft - die aus Endanwendern, IT-Profis und Anbietern besteht - frei mitteilen.

Auf einem CloudCamp werden Diskussionen über Themen aus folgenden Bereichen geführt:

  • Infrastructure as a Service
  • Platform as a Service
  • Software as a Service
  • Anwendungen / Daten / Speicherplatz

Termine in Deutschland für 2010

  • Berlin, 30.April 2010
  • Köln (Brühl), 17. und 18.März 2010 (im Rahmen des WebHostingDay)
  • München, August 2010
  • Frankfurt/Wiesbaden, Termin steht noch nicht fest

Termine weltweit für 2010

  • CloudCamp | Schedule
  • CloudCamp | City Organizers

Webseite



Die Microsoft Online Services

Die Microsoft Online Services sind das Software as a Service bzw. "Software plus Service" Angebot von Microsoft. Dabei handelt es sich um eine Reihe von Messaging-und Collaboration-Lösungen, die in den Rechenzentren von Microsoft gehosted werden. Zu den Services gehören Microsoft Office Communications Online, Microsoft SharePoint Online, Microsoft Exchange Hosted Services, Microsoft Exchange Online und Microsoft Office Live Meeting.

Diese einzelnen Services und ihre Funktionen stelle ich in diesem Artikel kurz vor.

Microsoft Office Live Meeting
Microsoft Office Live Meeting ist eine durch Microsoft gehostete Webkonferenzlösung, mit der online und ortsunabhängig mit Kollegen und Kunden in Echtzeit z.B. für Trainingszwecke oder Veranstaltungen kommuniziert werden kann.

Zu den Funktionen gehören:

  • Webclientunterstützung
  • Anwendungs-/Desktopfreigabe und Whiteboardtools
  • Videoumschaltung auf den aktiven Sprecher
  • Videos mit mehreren Teilnehmern
  • Webkonferenzen
  • Webcamfunktionen
  • Trainings- und Veranstaltungsverwaltung
  • Veranstaltungs- und Kursregistrierung und virtuellen Vorführungsräumen

Microsoft Exchange Online
Microsoft Exchange Online ist die gehostete Messaginglösung auf Basis des Microsoft Exchange Server 2007. Mitarbeitern steht damit der vollständige Zugriff auf ihre E-Mails, Kalender, Kontakte auf unterschiedlichen Systemen wie dem Desktop-PC, Laptop oder mobilen Geräten zur Verfügung.

Zu den Funktionen gehören:

  • E-Mail-Zugriff von jedem beliebigen Ort
  • 5 GB Postfachspeicher pro Standardlizenz
  • Postfächer sind auf 25 GB erweiterbar
  • Unterstützung von Windows Mobile 6.0
  • Unterstützung von BlackBerry

Der Microsoft Exchange Server kann sowohl intern im eigenen Rechenzentrum oder extern durch Microsoft, oder als Hybrid Ansatz genutzt werden.

Microsoft Exchange Hosted Services
Die Microsoft Exchange Hosted Services dienen zur Archivierung aller E-Mails im Rahmen gesetzlicher Vorschriften. Dazu gehören ein Spam- und Malwarefilter sowie Verschlüsselungstechnologien.

Zu den Funktionen gehören:

  • Archivierung
    E-Mail-Aufbewahrung im Rahmen gesetzlicher Bestimmungen
  • Ausfallsicherheit
    E-Mail-Kontinuität bei Ausfällen
  • Verschlüsselung
    Richtlinienbasierte E-Mail-Verschlüsselung
  • Schutz durch Filter
    Vielschichtiger Spam- und Virenschutz

Microsoft SharePoint Online
Bei Microsoft SharePoint Online handelt es sich um ein zentralisiertes Ressourcen und Workflowmanagement. Dabei können Dokumente, Kontakte, Kalender und Aufgaben gemeinsam von einem zentralen Standort genutzt und ausgetauscht werden und so effektiver zusammengearbeitet werden. Eine weitere Möglichkeit besteht im Aufbau von Intranetseiten und Plattformen, in denen Projektteams zusammenarbeiten, Informationen freigeben, sowie Workflows für Genehmigungs-, Prüf- und Archivierungsprozesse automatisieren können. Die Verwaltung der Inhalte (Content Management) erfolgt dabei mit Microsoft Office.

Microsoft Office Communications Online
Microsoft Office Communications Online stellt eine vollständig integrierte und zentralisierte Anwesenheits- und IM-Funktionen bereit, die mit den Produkten des Microsoft Office Systems zusammenarbeiten. Dabei kann in Echtzeit mittels Text, Sprache und Video mit anderen Kollegen innerhalb des Unternehmens kommuniziert werden.

Microsoft Business Productivity Online Standard Suite
Die Microsoft Business Productivity Online Suite umfasst sämtliche gehostete Lösungen von Microsoft aus dem Bereich Messaging-und Collaboration. Dazu gehören Exchange Online, SharePoint Online, Office Live Meeting und Office Communications Online.

Quelle



Ein Cloud Desktop mit openQRM

Nachdem ich eyeOS in zwei Artikeln ausführlich vorgestellt habe, möchte ich in diesem Artikel eine weitere interessante Möglichkeit aufzeigen, einen persönlichen Cloud Desktop zu nutzen. Dazu dient das von mir ebenfalls schon vorgestellte Cloud Management Tool openQRM, auf dessen Portal Webseite (http://www.openqrm-portal.de) ich die Idee (von Matt Rechenburg beschrieben) entdeckt habe.

Cloud Desktops wie auch Desktop-Virtualisierung sind für mich die Megatrends der Zukunft, die bei jedem auf der Roadmap stehen sollten!

Um uns einen Cloud Desktop mit openQRM zu erstellen gehen wir wir folgt vor:

1. Bestellen einer Cloud Appliance von openQRM

Zunächst legt man sich einen Account unter https://demo.openqrm.com und erstellt einen neuen Cloud-Request.

2. Installation von vncserver und Gnome auf der Cloud Appliance

Die Pakete vnc4server, xorg und gnome müssen per apt-get auf der Cloud Appliance wie folgt installiert werden.

root@cloud-91-1-x:~# apt-get install tightvncserver vnc4server xorg gnome

3. Erstellen eines VNC Users

Mit dem Befehl adduser wird ein neuer Benutzer erstellt.

root@cloud-91-1-x:~# adduser matt
Adding user `matt' ...
Adding new group `matt' (1001) ...
Adding new user `matt' (1001) with group `matt' ...
Creating home directory `/home/matt' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for matt
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [y/N] y
root@cloud-91-1-x:~#

Danach mit dem su Befehl zum eben erstellten Benutzer wechseln.

root@cloud-91-1-x:~# su - matt
matt@cloud-91-1-x:~$

4. Erstellen einer VNC Passwortdatei

Mit dem vnc4passwd Tool wird eine neue VNC Passwortdatei erzeugt.

matt@cloud-91-1-x:~$ vnc4passwd
Password:
Verify:
matt@cloud-91-1-x:~$

5. Erstellen eines xstartup Skript

Für den automatischen Start einer Gnome Session nach dem VNC-Login muss eine xstartup Datei im .vnc/ Verzeichnis angelegt werden.

matt@cloud-91-1-x:~$ vi .vnc/xstartup
matt@cloud-91-1-x:~$ cat .vnc/xstartup
#!/bin/sh

xrdb $HOME/.Xresources
xsetroot -solid grey
gnome-session &

matt@cloud-91-1-x:~$

Die Datei muss nun noch ausführbar gemacht werden.

matt@cloud-91-1-x:~$ chmod -x
matt@cloud-91-1-x:~$ .vnc/xstartup

6. Start des vncserver

Nun muss der vncserver gestartet werden.

matt@cloud-91-1-x:~$ tightvncserver
xauth: creating new authority file /home/matt/.Xauthority

Creating default startup script /home/matt/.vnc/xstartup
Starting applications specified in /home/matt/.vnc/xstartup
Log file is /home/matt/.vnc/cloud-91-1-x:1.log

7. Verbindung mit dem Cloud Desktop herstellen

Mit einem vncviewer Tool (Linux/Windows) kann man sich nun mit dem Befehl vncviewer[IP-Adresse der Cloud-Appliance]:1 mit dem Gnome Desktop in der Cloud verbinden.

matt@matt-laptop:~$ vncviewer x.x.x.x:1

Nach der Anmeldung steht ein vollständiger Gnome Desktop in der Cloud zur Verfügung.

Quelle

Your Desktop in the Cloud (DE)



Skalierung eines Cluster mit Amazon EC2

Dieses Beispiel zeigt welche Komponenten erstellt und konfiguriert werden müssen, um einen Mini Cluster innerhalb eines privaten Netzwerks unter der Verwendung von NIS und NFS aufzubauen. Zusätzlich werden externe Amazon EC2 Nodes per VPN mit dem Server verbunden und am Ende der Cluster mittels der Sun Grid Engine (SGE) aufgebaut.

Architektur

Folgende technische Voraussetzungen werden benötigt:

  • Das private Netzwerk darf nur über ein VPN erreichbar sein, damit die Nodes die sich darin befinden vollständig isoliert sind.
  • Der Server muss NFS, NIS und VPN unterstützen.
  • Die internen Nodes müssen den NFS und NIS Dienst automatisch vom Server starten.
  • Die externen Nodes sind von Amazon EC2.
  • Die externen Nodes müssen automatisch eine Verbindung in das VPN aufbauen und den NFS und NIS Dienst vom Server starten.

Auf Basis dieser Anforderungen werden 3 Images benötigt.

  • 2 Xen Images - einen Server und einen internen Node
  • 1 Amazon Machine Image (AMI) von Amazon EC2 mit derselben Konfiguration wie der interne Node.

Die Konfigurationen sehen in diesem Beispiel wie folgt aus:

Server

  • Private IP-Adresse: eth0 10.1.1.99
  • Öffentliche IP-Adresse: eth1 147.96.1.100
  • Hostname: oneserver

Xen Node (lokal)

  • Private IP-Adresse: eth0 10.1.1.55
  • Hostname: local01

Amazon EC2 Node (IP-Adress Bereich: 10.1.1.100 bis 10.1.1.254)

  • VPN IP-Adresse: tap0 10.1.1.100 (wird durch den VPN Server vergeben)
  • Öffentliche IP-Adresse: eth0 - wird automatisch von Amazon vergeben
  • Hostname: workernode0

Konfiguration

Konfiguration der Images

Nun wird eine Kopie des Image erstellt und die /etc/hostname und /etc/network/interfaces für den Server (oneserver) editiert. Eine weitere Kopie des Image dient als Node, die oben genannten Dateien müssen für diesen ebenfalls angepasst werden. Nach dem unmount der Images werden diese mit Xen gestartet. Für die Konfiguration von NFS und NIS helfen die beiden nachfolgend verlinkten Howtos.

Bei der Konfiguration des VPN Server ist darauf zu achten, dass alle Clients die Zertifikate doppelt verwenden können. Das liegt daran, da keine separaten Amazon EC2 Instanzen erstellt werden sollen und es sich bei den EC2 Instanzen daher um dieselben handelt. Dazu muss in der Konfigurationsdatei von OpenVPN /etc/openvpn/server.conf in Zeilt "duplicate-cn" eingefügt werden. Die Konfiguration von OpenVPN findet nur auf dem Server statt. Eine Howto für die Konfiguration von OpenVPN ist unter dem folgenden Link zu finden.

Für das Erstellen eines Amazon Machine Images wird der Befehl bundle benötigt, dazu kann der lokale Node genutzt werden. Weiterhin muss der VPN Client und die Sun Grid Engine installiert und konfiguriert werden. Auf dem schnellsten Wege sollte das funktionieren, indem eine Kopie des lokalen Node erstellt und konfiguriert wird, anschließend wird es mit dem Befehl ec2-bundle-image gebündelt.

Während des Boot-Vorgangs wird nun noch ein Skript benötigt, in welchem der IP-Adressbereich von OpenVPN für die Amazon EC2 Instanzen von 10.1.1.100 bis 10.1.1.254 reserviert wird. die Konfiguration erfolgt in der /etc/hosts auf dem Server (oneserver).

EC2 Konfiguration mit OpenNebula

Nach der Konfiguration werden nun die Templates benötigt, um die Maschinen zu starten. Für alle lokalen Maschinen wie den oneserver und die Nodes wird jeweils ein Template benötigt, für die EC2 Maschinen reicht ein Template aus.

clouduser@machine:bin$ ec2-describe-images
IMAGE ami-e4a94d8d one-w2/image.manifest.xml 587384515363 available private i386 machine
IMAGE ami-cdb054a4 sge-dolphin/image.manifest.xml 587384515363 available private i386 machine
IMAGE ami-d8b753b1 sge-parrot/image.manifest.xml 587384515363 available private i386 machine
IMAGE ami-dcb054b5 sge-squirrel/image.manifest.xml 587384515363 available private i386 machine

Auf Basis des Images "ami-dcb054b5" wird das EC2 Template erstellt.

CPU=1

MEMORY=1700

EC2=[ AMI="ami-dcb054b5", KEYPAIR="gsg-keypair", ELASTICIP="75.101.155.97", INSTANCETYPE="m1.small", AUTHORIZED_PORTS="22-25"]

REQUIREMENTS = 'HOSTNAME = "ec2"'

Deployment und Tests

Um den Test zu starten muss zunächst OpenNebula gestartet und der EC2 Host hinzugefügt werden.

clouduser@machine:one$ one start
oned and scheduler started
lgonzalez@machine:one$ onehost create ec2 im_ec2 vmm_ec2
lgonzalez@machine:one$ onehost list
HID NAME RVM TCPU FCPU ACPU TMEM FMEM STAT
0 ec2 0 0 100 on

Als nächstes wird die EC2 Instanz gestartet.

clouduser@machine:one$ onevm create ec2.template
ID: 0

Die virtuelle Maschine wird später automatisch auf Amazon EC2 bereitgestellt.

clouduser@machine:one$ onevm list
ID NAME STAT CPU MEM HOSTNAME TIME
0 one-0 pend 0 0 00 00:00:05
lgonzalez@machine:one$ onevm list
ID NAME STAT CPU MEM HOSTNAME TIME
0 one-0 boot 0 0 ec2 00 00:00:15

Mittels onevm show id können alle Informationen eingesehen werden.

clouduser@machine:one$ onevm show 0
VID : 0
AID : -1
TID : -1
UID : 0
STATE : ACTIVE
LCM STATE : RUNNING
DEPLOY ID : i-1d04d674
MEMORY : 0
CPU : 0
PRIORITY : -2147483648
RESCHEDULE : 0
LAST RESCHEDULE: 0
LAST POLL : 1216647834
START TIME : 07/21 15:42:47
STOP TIME : 01/01 01:00:00
NET TX : 0
NET RX : 0

....: Template :....
CPU : 1
EC2 : AMI=ami-dcb054b5,AUTHORIZED_PORTS=22-25,ELASTICIP=75.101.155.97,INSTANCETYPE=m1.small,KEYPAIR=gsg-keypair
IP : ec2-75-101-155-97.compute-1.amazonaws.com
MEMORY : 1700
NAME : one-0
REQUIREMENTS : HOSTNAME = "ec2"

In diesem Beispiel ist die EC2 Instanz über die Adresse ec2-75-101-155-97.compute-1.amazonaws.com zu erreichen.

Nun muss geprüft werden, ob alle virtuellen Maschinen im Cluster gestartet sind. Es existiert eine lokale virtuelle Maschine auf Basis von Xen (local01) und eine von Amazon EC2 (workernode0).

oneserver:~# qstat -f
queuename qtype used/tot. load_avg arch states
----------------------------------------------------------------------------
all.q@local01 BIP 0/1 0.05 lx24-x86
----------------------------------------------------------------------------
all.q@workernode0 BIP 0/1 0.04 lx24-x86
----------------------------------------------------------------------------

Um den Cluster zu testen können ein paar Jobs mittels qsub an die Sun Grid Engine geschickt werden.

oneserver:~# qsub test_1.sh; qsub test_2.sh;

Nun ist zu sehen, welche Jobs im Hybrid Cluster geplant und gestartet sind.


clouduser@oneserver:~$ qstat -f
queuename qtype used/tot. load_avg arch states
----------------------------------------------------------------------------
all.q@local01 BIP 0/1 0.02 lx24-x86
----------------------------------------------------------------------------
all.q@workernode0 BIP 0/1 0.01 lx24-x86
----------------------------------------------------------------------------
############################################################################
- PENDING JOBS - PENDING JOBS - PENDING JOBS - PENDING JOBS - PENDING JOBS
############################################################################
1180 0.00000 test_1.sh clouduser qw 07/21/2008 15:26:09 1
1181 0.00000 test_2.sh clouduser qw 07/21/2008 15:26:09 1

clouduser@oneserver:~$ qstat -f
queuename qtype used/tot. load_avg arch states
----------------------------------------------------------------------------
all.q@local01 BIP 1/1 0.02 lx24-x86
1181 0.55500 test_2.sh clouduser r 07/21/2008 15:26:20 1
----------------------------------------------------------------------------
all.q@workernode0 BIP 1/1 0.07 lx24-x86
1180 0.55500 test_1.sh clouduser r 07/21/2008 15:26:20 1
----------------------------------------------------------------------------

Es können beliebig viele externe Amazon EC2 Instanzen automatisch zum Cluster als Nodes hinzugefügt werden und damit die Skalierbarkeit dynamisch erhöht werden.

Quelle



Skalierung von Web-Servern auf Amazon EC2

Dieses Beispiel zeigt, wie eine skalierbare Web Anwendung auf einer virtuellen Infrastruktur bereitgestellt wird. Um dies zu erreichen wird ein Load Balancer als Master Node für diese Web Anwendung eingesetzt. Hinter dem Load Balancer werden Slave Nodes eingesetzt, die über eine Kopie dieser Web Anwendung verfügen, für den Fall, dass eine Anfrage zu ihnen weitergeleitet wird. Die Leistung (Anfragen pro Sekunde) der Web Anwendung kann durch das Starten oder Herunterfahren von virtuellen Instanzen, die als Nodes des Load Balancer dienen, dynamisch erhöht oder verringert werden.

Ein Teil dieses Beispiels zeigt, wie Remote Nodes (Amazon EC2) eingesetzt werden, wenn die lokale Infrastruktur (auf Basis von Xen) ausgelastet ist.

Architektur

Folgende Komponenten werden für den Aufbau der virtuellen Infrastruktur genutzt:

  • Ein NGinx Server als Load Balancer - zur Aufteilung der Anfragen an die Webserver.
  • Mehrere NGinx Server als Webserver (die einzelnen Nodes des Load Balancer), die jeweils auf einer virtuellen Maschine ausgeführt werden.

Mit den folgenden Eigenschaften:

  • Die virtuellen Maschinen, auf welchen die Webserver ausgeführt werden, können sich lokal (auf dem Xen Hypervisor innerhalb der lokalen Infrastruktur) oder remote (auf Amazon EC2 Instanten) befinden.
  • Die Verwaltung (Monitoring, Deployment, Miration, ...) der virtuellen Maschinen wird mit OpenNebula vorgenommen.

Die obere Graphik beschreibt folgende Eigenschaften:

  • Die grünen Pfeile stehen für Web-Anfragen durch die Web-Clients an den Load Balancer.
  • Die roten Pfeile sind die Anfragen der Web-Clients, die von dem Load Balancer an die Webserver weitergeleitet werden.
  • Die orangen Pfeile stehen für das Monitoring und der Verwaltung durch den Virtual Machine Manager (OpenNebula).

Durch das dynamische Bereitstellen und Hinzufügen weiterer virtueller Webserver zu dem Load Balancer, verfügt diese Infrastruktur über eine hohe Fehlertoleranz, Verfügbarkeit und Skalierbarkeit. Darüber hinaus unterstützt die (virtuelle) Infrastruktur zwei unterschiedliche Virtualisierungs-Technologien (Xen und Amazon EC2), wodurch eine Erweiterung der lokalen Infrastruktur durch eine externe Infrastruktur möglich ist.

Konfiguration
Zunächst muss OpenNebula für das Deployment der virtuellen Infrastruktur konfiguriert werden. Weiterhin muss NGinx auf die Systeme installiert werden, die später den Load Balancer und die Webserver beherbergen sollen. Das Vorgehen dazu ist in dem folgenden Howto beschrieben.

Für die Konfiguration des Load Balancer gelten dieselben Schritte wie in dem oben genannten Howto. Als Konfigurationsdatei kann die nachfolgend aufgeführte genutzt werden. Hier ist der Host definiert, der als Load Balancer verwendet wird und welche Auswahlmethode (round-robin, gewichtet) genutzt werden soll.


clouduser@machine:one$ vim nginx.conf

user www-data;
worker_processes 1;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
sendfile on;
keepalive_timeout 65;
tcp_nodelay on;
gzip on;
server {
listen 80;
server_name localhost;
access_log /var/log/nginx/localhost.access.log;
location / {
proxy_pass http://one_loadbalancer;
}
}
upstream one_loadbalancer {
server 10.1.1.11:80 ;
server 10.1.1.22:80 ;
server 10.1.1.33:80 ;
server 10.1.1.44:80 ;
}
}

Im Bereich upstream der Konfigurationsdatei werden die virtuellen Webserver definiert, auf welche die Anfragen für den Lastausgleich aufgeteilt werden. Hier müssen ggf. weitere virtuelle Webserver hinzugefügt werden.

In diesem Beispiel haben die Webserver die IP-Adressen 10.1.1.11, 10.1.1.22, 10.1.1.33 und 10.1.1.44. Damit können also vier Nodes verwendet werden.

Der Load Balancer verfügt über:

  • eine private IP-Adresse für die Kommunikation mit den Nodes im privaten Netzwerks. (in diesem Beispiel 10.1.1.99)
  • eine öffentliche IP-Adresse für die Kommunikation mit den Web-Clients und den Amazon EC2 Instanzen.

Die Amazon EC2 haben öffentliche IP Adressen und kommunizieren mit OpenNebula und dem Load Balancer über das Internet.

Um OpenNebula für die Kommunikation mit Amazon EC2 zu konfigurieren und die Instanzen mit NGinx bereitzustellen sind folgende Schritte notwendig.

Jetzt können die Templates für die lokalen und remote Machinen erstellt werden.

Für den Load Balancer wird folgendes Template verwendet:

clouduser@machine:one$ cat xen.loadbalancer
CPU = 0.5
MEMORY = 128
OS = [kernel="/boot/vmlinuz",initrd= "/boot/initrd",root="sda1" ]
DISK = [source="/images/loadbalancer.disk",target="sda",readonly="no"]

Die lokalen Maschinen verwenden diese Templates:

clouduser@machine:one$ cat xen.local01
CPU = 0.5
MEMORY = 128
OS = [kernel="/boot/vmlinuz",initrd= "/boot/initrd",root="sda1" ]
DISK = [source="/images/local01.disk",target="sda",readonly="no"]

Die Pfade zu den Images und dem Kernel müssen entsprechend der eigenen Umgebung angepasst werden. Aus den Images können beliebig viele Klone für die lokalen Nodes erstellt werden.

Die folgenden Templates werden für die remote Maschinen (Amazon EC2) verwendet.

clouduser@machine:one$ cat ec2.template
CPU=1
MEMORY=1700
EC2=[
AMI="ami-yao044b1",
KEYPAIR="gsg-keypair",
INSTANCETYPE="m1.small",
AUTHORIZED_PORTS="22-25"
]
REQUIREMENTS = 'HOSTNAME = "ec2"'

Die Parameter AMI Identifier, Key-Pair, Memory etc. müssen entsprechend der eigenen Umgebung angepasst werden.

Deployment und Test

Jetzt wird der virtuelle Cluster initialisiert. Zunächst wird der OpenNebula Daemon gestartet und mit dem onehost Befehl eine Host in die Liste der Ressourcen aufgenommen.

clouduser@machine:one$ one start
oned and scheduler started
clouduser@machine:one$ onehost create ec2 im_ec2 vmm_ec2
clouduser@machine:one$ onehost create ursa03 im_xen vmm_xen

Anschließend werden die virtuellen Maschinen mit dem onevm Befehl erstellt.

clouduser@machine:one$ onevm create xen.loadbalancer
ID: 0
clouduser@machine:one$ onevm create xen.local01
ID: 1
clouduser@machine:one$ onevm create xen.local02
ID: 2
clouduser@machine:one$ onevm create xen.local03
ID: 3
clouduser@machine:one$ onevm create xen.local04
ID: 4
clouduser@machine:one$ onevm create ec2.template
ID: 5
clouduser@machine:one$ onevm create ec2.template
ID: 6
clouduser@machine:one$ onevm create ec2.template
ID: 7
clouduser@machine:one$ onevm create ec2.template
ID: 8

Mit dem onevm Befehl kann anschließend der Status der Instanzen überprüft werden.

clouduser@machine:one$ onevm list
ID NAME STAT CPU MEM HOSTNAME TIME
0 one-0 runn 12 512 ursa03 00 00:01:15
1 one-1 runn 8 512 ursa03 00 00:01:11
2 one-2 runn 10 512 ursa03 00 00:01:10
3 one-3 runn 11 512 ursa03 00 00:01:02
4 one-4 runn 23 512 ursa03 00 00:00:51
5 one-5 runn 0 512 ec2 00 00:00:48
6 one-6 runn 0 512 ec2 00 00:00:48
7 one-7 runn 0 512 ec2 00 00:00:45
8 one-7 runn 0 512 ec2 00 00:00:43

Nachdem alle virtuellen Maschinen gestartet sind, kann der Load Balancer die Anfragen der Webclients annehmen. Nun muss noch für jede virtuelle Maschine die IP-Adresse in die /etc/nginx/nginx.conf eingetragen werden. Darüber wird dem NGinx Load Balancer mitgeteilt welcher Node bereit ist.

Die Leistung der Webanwendung kann durch das Hinzufügen weiterer lokaler oder Amazon EC2 Nodes mittels xen.localXX oder ec2.template und der Aktualisierung der Load Balancer Konfigurationsdatei erhöht werden.

Das Hinzufügen kann durch die Entwicklung eines Service Managers automatisiert werden.

Quelle



On-Demand Infrastruktur für virtuelle Labore

OpenNebula kann dazu genutzt werden um virtuelle Labore bereitzustellen. Dabei erhält jeder Student Zugriff auf eine eigene "virtuelle" Infrastruktur, die nur er verwalten kann. Bei der Infrastruktur kann es sich um ein einzelnes System oder ein vollständig verteiltes System handeln. Hierbei kapselt die virtuelle Maschine die Installation für einen Kurs.

Architektur

Aufbau & Bereitstellung

Um das virtuelle Labor bereitzustellen muss zunächst das Netzwerk, wie in den Howtos [1] und [2] beschrieben, konfiguiert werden.

Als nächstes muss ein Master Image erstellt werden. Dieses wird als Basis benutzt um die virtuellen Maschinen für eine Sitzung zu erstellen. In diesem Image muss sämtliche Software, für die späteren virtuellen Hosts des Labor, installiert sein. Aus dem Master Image können anschließend Instanzen von virtuellen Maschinen erstellt werden, indem von der Masterdatei jeweils eine Kopie erstellt wird.

Sobald die Master Virtual Machine konfiguriert ist, kann diese repliziert und als Virtual Machine Template für alle Instanz verwendet werden.

Dabei ist zu beachten, dass sich jede virtuelle Maschine in zwei Dingen voneinander unterscheiden muss:

  • Der Pfad zu dem Image, um die virtuelle Maschine zu mounten.
  • Die MAC-Adresse, da jede virtuelle Maschine eine eigene IP-Adresse benötigt.

Angenommen es sollen 10 virtuelle Computer für ein Labor erstellt werden. Dazu werden 10 unterschiedliche Kopien der Master Virtual Machine und 10 unterschiedliche Virtual Machine Templates benötigt. Die Templates könnten z.B. mit dem Namen VMachineXX.template - wobei XX den Zahlen 1 bis 10 entspricht - bezeichnet werden.

Um die virtuellen Maschinen zu starten wird der Befehl onevm mit folgenden Parametern benötigt.

$ onevm create VMachineXX.template

Dieser Befehl muss 10 mal wiederholt werden, wobei der Platzhalter XX durch die Zahlen 1 bis 10 ersetzt wird. Die IP-Adresse der virtuellen Maschine erhält man entsprechend der Netzwerk-Konfiguration.

Nun reicht es aus, dem Seminarteilnehmer einen Benutzernamen, ein Passwort und die IP-Adresse der virtuellen Maschine mitzuteilen.

Quelle



On-Demand Skalierung eines Computer Cluster

Nachdem ich OpenNebula und die Funktionen bereits kurz vorgestellt habe, möchte ich - angeregt durch die Projekte auf der OpenNebula Webseite - die Einsatzmöglichkeiten auf Basis von vier Anwendungsbeispielen vorstellen. Dazu werde ich in den nächsten Tagen jedes Beispiel auf Grund der Menge und Übersichtlichkeit in einem eigenen Artikel behandeln.

Auch wenn sich diese Beispiele speziell auf OpenNebula beziehen, kann die Umsetzung dieser Ansätze ebenfalls mit anderen Cloud Infrastruktur Management Tools, wie z.B. openQRM erfolgen.

On-Demand Skalierung eines Computer Cluster

Mit OpenNebula können auf einem pyhsikalischen Cluster dynamisch mehrere virtuelle Cluster parallel betrieben werden. Dadurch können Ressourcen wie z.B. Rechenleistung on-Demand bereitgestellt werden, indem die Anzahl der verfügbaren Hosts mit den Bedürfnissen der Benutzer wächst. Da virtuelle Hosts weniger physikalische Ressourcen benötigen, kann ein Cluster dadurch optimiert und konsolidiert werden, da die Anzahl der tatsächlich vorhandenen physikalischen Systeme reduziert werden kann, was dazu führt, dass weniger räumlicher Platz, Strom, Kühlung und Administration erforderlich ist.

Die Zuweisung der physikalischen Ressourcen zu den virtuellen Hosts wird dabei dynamisch und abhängig von den Anforderungen (benötigte Ressourcen) von dem Virtual Machine Manager übernommen. Des Weiteren kann ein Cluster in mehrere Partitionen aufgeteilt werden, da die physikalischen Ressourcen eines Clusters genutzt werden können, um sie einem Host bereitzustellen, der mit einem (anderen) virtuellen Cluster verknüpft ist.

Dieses Beispiel zeigt, wie das Bereitstellen der Ressourcen von der eigentlichen Ausführung, auf einem speziellen Service Layer durch den Local Resource Manager (LRM) getrennt werden kann.

Architektur

Bereitstellung mit der Sun Grid Engine (SGE)

Zunächst muss das Netzwerk, wie in den Howtos [1] und [2] beschrieben, konfiguiert werden, um neue virtuelle SGE Hosts mit unterschiedlichen Namen zu erstellen.

Um das grundlegende Virtual Machine Image zu erstellen kann der Befehl xen-create-image benutzt, ein Image von einem frisch installiertes Betriebssystem verwendet oder ein bereits verwendetes Virtual Machine Image genutzt werden.

Zusätzlich muss der virtuelle SGE Host genau so konfiguriert werden wie der physikalische SGE Host (NFS, NIS, execd, etc.)

Dieses Image dient als Grundlage für alle neuen virtuellen SGE Hosts. Jeder virtuelle Hosts muss an einem eigenen Ort abgelegt werden. Hierzu existiert das zentrale Verzeichnis sgebase, dass alle Images beinhaltet. Für jedes Image wird anschließend ein eigenes Verzeichnis mit dem Namen des Images erstellt.

$ cp -R sgebase sgehost01

Nun muss ein neues Virtual Machine Template erstellt werden. (Es kann auch ein bereits bestehendes kopiert werden und angepasst werden.)

MEMORY=64
CPU=1
OS=[
kernel="/boot/vmlinuz-2.6.18-4-xen-amd64",
initrd="/boot/initrd.img-2.6.18-4-xen-amd64",
root="sda1",
boot="hd"]
DISK=[
source="/local/xen/domains/xen/domains/sgehost/disk.img",
target="sda1",
readonly=no]
DISK=[
source="/local/xen/domains/xen/domains/sgehost/swap.img",
target="sda2",
readonly=no]
NIC=[mac="00:16:3e:01:01:03"]

Jetzt muss noch der Pfad zu dem Image, dem Kernel, der Ramdisk etc. angepasst werden.

Zum Starten des neuen virtuellen Host benötigen wir folgenden Befehl:

$ onevm create

Um Aufgaben entgegen zu nehmen muss der neue Host mit SGE anschließend bekannt gemacht werden .

$ qconf -ah sgehost01
$ qconf -as sgehost01
$ qconf -se

Soll der neue Host einer Gruppe zugeordnet werden, benötigen wir folgenden Befehl:

$ qconf -mhgrp @allhosts

Quelle



Google Apps

Google Apps ist die webbasierte Office & Collaboration Suite von Google. Sie umfasst in der kostenlosen Standard Edition und der Edition für Non-Profit Organisationen die Programme Mail, Kalender, Text & Tabellen, Sites, Talk und Kontakte. Die Premier- und Education Editionen verfügen zusätzlich noch über Video, Groups und APIs für Erweiterungen und die Integration in die eigene Infrastruktur sowie weitere Services von Partnern.

Dieser Artikel stellt zunächst die einzelnen oben genannten Programme jeweils kurz vor und vergleicht am Ende die kostenlose mit der kommerziellen Version.

Mail

Google Mail verfügt je nach Edition über einen Speicherplatz von 7 GByte bis 25 GByte. Die Ablage der E-Mails erfolgt nicht klassisch in einer Ordnerstruktur, stattdessen können Labels definiert werden mit der jede E-Mail beliebig getaggt werden kann.

Auch die Art der Verwaltung einer E-Mail Kommunikation ist anders als bei herkömmlichen E-Mail Clients. Werden bei Thunderbird, Outlook etc. für jede E-Mail die hin und her geschickt wird eine separate "physische" E-Mail erstellt die dann im Posteingang und/oder Postausgang liegt, werden die E-Mails bei Google Mail in sogenannten Konversationen verwaltet. Dabei entsteht ein "Objekt" an das jede E-Mail die zu dieser Konversation (Betreff) gehört angehängt wird. Jede Benutzer der an dieser Konversation teilnimmt, erhält zur Unterscheidung eine andere Farbe.

Die Technologie des Spamfilter halte ich für einzigartig. Ich nutze Google Apps nun seit mehreren Jahren und hab in der Zeit nicht eine Spam E-Mail im Posteingang gefunden, dafür ist der Spamordner immer randvoll! Auch die Suche nach E-Mails oder Inhalten von E-Mails funktioniert sehr gut, da merkt man gut, welchen Kernbereich Google normalerweise abdeckt.

Der verschlüsselte Zugriff auf die Postfächer kann lokal von jedem Benutzer oder global über die Managementkonsole festgelegt werden. Seit kurzem ist allerdings nur noch der SSL-Zugriff möglich. Der mobile Zugriff auf Google Mail ist ebenfalls möglich. dazu sind Anwendungen für Android, iPhone, Blackberry und weitere Smartphones wie z.B. Nokia vorhanden. Migrationstools erlauben zusätzlich das Importieren von E-Mail Konten aus anderen Systemen wie Microsoft Exchange oder Lotus Notes.

Google Mail verfügt weiterhin über ein integriertes Messaging System, welches ich weiter unten für die Anwendung Talk beschreibe.

Kalender

Der Google Kalender ist vollständig mit Google Mail verknüpft. Nachdem ein Eintrag erstellt wurde, können Freunde/ Bekannte oder Mitarbeiter darüber direkt per E-Mail informiert bzw. eingeladen werden. Weiterhin können die eigenen Kalender lesend und/oder schreibend anderen Personen freigegeben werde, um ihnen den Zugriff darauf zu gewähren. Dadurch haben Kollegen z.B. die Möglichkeit die Termine eines anderen Kollegen in ihrem Kalender zu sehen und ggf. sogar zu bearbeiten.

Google Kalender ist ebenfalls mit Google Sites verknüpft, damit kann ein Kalender(eintrag) auf einer Webseite veröffentlicht werden. Kalender können darüber hinaus - z.B. für Veranstaltungen - grundsätzlich öffentlich verfügbar gemacht und in Googles Kalendergallerie aufgenommen werden.

Der mobile Zugriff ist ebenso wie bei Google Mail möglich. Zusätzlich können Kalenderbenachrichtigungen per SMS verschickt werden.

Text & Tabellen

Text & Tabellen ermöglicht das gemeinsame Bearbeiten (inkl. Versionierung) von Dateien in Echtzeit. Das beschränkt sich entweder nur auf die Benutzer in der eigenen Domain, aber auch externe Partner und Kunden können darauf den Zugriff erhalten und aktiv mitarbeiten.

Die erarbeiteten Dokumente, Tabellen und Präsentationen können anschließend z.B. auf den Webseiten von Google Sites oder im Intranet eingebettet werden. Päsentationen können über das Internet abgehalten werden, ohne dass sich die Zielgruppe am selben Ort befindet, die benötigt nur einen Browser mit aktiver Internetverbindung.

Text & Tabellen bietet bereits vorgefertigte Vorlagen für Formulare, z.B. für Umfragen oder Registrierungen die auf Webseiten verfügbar gemacht, per E-Mail verschickt oder in Dokumente eingebunden werden. Die eingegeben Daten werden dabei automatisch in einer verknüpften Tabelle gespeichert. Darüber hinaus existieren Vorlagen für Geschäftsdokumente, Visitenkarten, Briefköpfe, Zeiterfassungsformulare etc., die ebenfalls in vorhandene Dokumente integriert werden können.

Texte & Tabellen unterstützt und kann folgende Dateiformate importieren und exportieren: DOC, XLS, CSV, PPT, TXT, HTML, PDF.

Der mobile Zugriff mit Android, Blackberry oder iPhone ist ebenfalls möglich.

Sites

Mit Google Sites kann jede beliebige Art von Webseite erstellt werden, wie z.B. Seiten für das Intranet in einem Unternehmen, für Teams, Projekte, Abteilungen, Schulungen oder Wikis. Der Zugriff ist per se nur für Leute innerhalb der Domain erlaubt. Die Seiten können aber für externe Partner, Kunden ider Lieferanten zugänglich gemacht werden.

Innerhalb eine Google Sites Webseite können unterschiedliche Arten von Inhalten eingebettet werden. Dazu gehören Textdokumente, Tabellen, Präsentationen, Videos, Formulare oder Photos. Darüber hinaus ist die Google Suchfunktion vorab in jeder Site integriert, wodurch der gesamte Inhalt indiziert ist und schnell gefunden werden kann.

Talk

Google Talk ist in zwei Varianten verfügbar. Die erste ist die klassische Software, die auf dem PC installiert und von dort genutzt wird. Damit stehen auf dem PC Chat-, Sprach- und Videofunktionen zur Verfügung.

Die zweite Variante ist eine integrierte Instant Messaging Funktion innerhalb von Google Mail, mit der direkt eine Verbindung mit den Kontakten im eigenen Addressbuch oder per Mausklick auf den Absender einer E-Mail hergestellt werden kann. Vorausgesetzt, der Kontakt verfügt über ein Google-Talk Konto bzw. einen ICQ/AIM Account. Über ein zusätzliches Plugin kann das Instant Messaging um Voice- und Video-Chat Funktionen erweitert werden. Der Chat-Verlauf innerhalb von Google Mail kann dabei in einem Chat-Protokoll für jede einzelne Sitzung (pro Tag) aufgezeichnet werden. Das Protokoll wird nach dem Beenden der Sitzung wie eine E-Mail im Archiv abgelegt.

Ist man im Besitz eines Android Smartphones, kann die Chat-Funktion von Google Talk auch unterwegs genutzt werden.

Kontakte

Google Kontakte ist keine Anwendung im eigentlichen Sinne. Vielmehr hat man damit die Möglichkeit seine Kontakte in einem separaten "großen" Fenster zu verwalten. Normalerweise erreicht man die Kontakte in Google Mail über den Button "Kontakte" auf der linken Seite. Dabei werden die Kontakte dann in dem Bereich angezeigt, wo sonst die E-Mail Konversationen aufgelistet werden. Das kann auf Geräten, wie z.B. Netbooks ziemlich eng werden, wodurch das Auslagern in ein weiteres Fenster wesentlich komfortabler ist.

Managementkonsole

Mit der Managementkonsole wird der gesamte Google Apps Account verwaltet. Hier werden die hier beschriebenen Anwendungen aktiviert oder deaktiviert, weitere Benutzer hinzugefügt, E-Mail Adressen Benutzern zugeordnet, Benutzergruppen verwaltet, das Layout bestimmt und alle weiteren Einstellungen rund um die Domain vorgenommen.

Groups (Premium)

Mit Google Groups können Online Communities erstellt werden. Das Erstellen beschränkt sich nicht nur auf den Administrator, sondern gilt für alle Mitglieder einer Google Apps Domain. Die Google Groups sind in der Premier sowie in der Education Edition enthalten.

Mit Google Groups können Text & Tabellen, Kalender, Sites und Videos für eine gesamte Gruppe anstatt einer einzelnen Person freigegeben werden. Die Gruppenzugehörigkeit und damit die Sichtbarkeit der Inhalte steuert der Besitzer der jeweiligen Gruppe.

Die Gruppenmitglieder können selber bestimmen wie und wie oft sie über Neuigkeiten innerhalb einer Gruppe informiert werden wollen. Dazu haben sie die Auswahl zwischen einzelnen E-Mails, täglichen Zusammenfassungen oder keine Benachrichtigungen.

Video (Premium)

Mit Google Videos können Unternehmensinhalte visuell intern oder extern verfügbar gemacht werden. Die Videos können ebenfalls in Google Sites oder ein beliebigen Webseite integriert werden. Benutzer haben die Möglichkeit die einzelnen Videos zu bewerten, Kommentare hinzuzufügen oder zu taggen, um sie damit leichter wiederzufinden. Durch die zentrale Verwaltung können Administratoren alle Videoinhalte von einer Stelle aus verwalten.

Vergleich Standard vs. Premium

Wie der oberen Graphik zu entnehmen ist, verfügt die Premium Edition gegenüber der Standard Edition über mehr Funktionen. Weitere Unterschiede sind:

  • Telefonsupport rund um die Uhr (24/7)
  • SLA für eine 99,9-prozentige Verfügbarkeitsgarantie
  • 25 GB Speicherplatz pro Mitarbeiter
  • Single Sign-On, SSL, Viren- und Spamschutz von Postini
  • Einbinden von Google Apps die eigene bestehende IT-Infrastruktur
  • Konferenzraumbelegung, private Videofreigabe, BlackBerry- und Microsoft Outlook-Kompatibilität

Wer nutzt bereits Google Apps?

Eine Viehlzahl von Unternehmen, darunter z.B. General Electric und Twitter nutzen Google Apps. Hier ist eine Liste ausgewählter Unternehmen die Google Apps produktiv einsetzen.

Preise:

  • Standard Edition: kostenlos
  • Education Edition: kostenlos
  • Non-Profit Organisation: kostenlos
  • Premier Edition*: 40 EUR pro Benutzerkonto pro Jahr

    * die "Premier Edition" heißt in Deutschland "Professional Edition"

Versionen

Quelle

Google Apps



OpenNebula

OpenNebula ist ein Open Source Virtual Infrastructure Manager mit dem aus vorhandenen Rechenzentren jede Art von Cloud Computing Umgebung aufgebaut und bereitgestellt werden kann. In erster Linie dient OpenNebula als Tool zur Verwaltung der virtualisierten Infrastruktur des eigenen Rechenzentrums bzw. der eigenen Cluster, also der eigenen Private Cloud.

Darüber hinaus ist OpenNebula in der Lage Hybrid Clouds aufzubauen, also die eigene lokale Infrastruktur mit einer Public Cloud Infrastruktur zu verbinden/kombinieren, um die Skalierbarkeit der eigenen Umgebung noch weiter zu erhöhen. OpenNebula verfügt zusätzlich über spezielle Schnittstellen für die Verwaltung von virtuellen Maschinen, Speicherplatz und des Netzwerks von Public Clouds.

Funktionen

    Private Cloud Computing >> Virtual Infrastructure Management

    • Internal Interfaces for Administrators and Users
      Mit einer Unix ähnlichen Kommandozeile und einer XML-RPC API kann der Lebenszyklus der virtuellen Maschinen und physikalischen Server verwaltet werden. Weitere Administrationsmöglichkeiten bietet die libvirt API.
    • Steuerung
      Die Verwaltung der Arbeitslast und Zuweisung der Ressourcen kann nach bestimmten Regeln wie z.B. der aktuellen Auslastung automatisch vorgenommen werden. Des Weiteren wird der Haizea VM-based lease manager unterstützt
    • Virtualisierungsmanagement
      Es existieren Konnektoren für Xen, KVM und VMware, sowie einem generischen libvirt Konnektor für weitere Virtual Machine Manager. Die Unterstützung von Virtual Box ist in Planung.
    • Image Management
      Es sind Funktionen für den Transfer und das Clonen von Virtual Machine Images vorhanden.
    • Netzwerk Management
      Es lassen sich isolierte virtuelle Netze festlegen um virtuelle Maschinen miteinander zu verbinden.
    • Service Management
      Unterstützung von Multi Tier Services bestehend aus Gruppen von miteinander verbundenen virtuellen Maschinen und deren Auto Konfiguration während des Boot Vorgangs.
    • Sicherheit
      Die Verwaltung der Benutzer wird durch den Administrator der Infrastruktur vorgenommen.
    • Fehlertoleranz
      Eine persistente Datenbank dient zum Speichern aller Informationen der Hosts und virtuellen Maschinen.
    • Skalierbarkeit
      Tests zeigten bisher, das OpenNebula mehrere hundert Server und virtuelle Maschinen verwalten kann.
    • Installation
      Die Installation erfolgt auf einem UNIX Cluster Front-End ohne das weitere Services benötigt werden. OpenNebula wird mit Ubuntu 9.04 (Jaunty Jackalope) ausgeliefert.
    • Flexibilität und Erweiterbarkeit
      Die Architektur, Schnittstellen und Komponenten sind offen, flexibel und erweiterbar. Dadurch kann OpenNebula mit jedem aktuellen Produkt aus dem Bereich Virtualisierung, Cloud Computing oder Management Tool für Rechenzentren integriert werden.
    • Hybrid Cloud Computing

      • Cloud Plugins
        Konnektoren für Amazon EC2 und ElasticHosts.
      • Zusammenschluss
        Unterstützung für den gleichzeitigen Zugriff auf mehrere Remote-Clouds.
      • Erweiterbarkeit
        Modulare Konzepte für die Entwicklung neuer Konnektoren.

      Public Cloud Computing >> Cloud Interfaces

      • Cloud Schnittstellen für Benutzer
        Implementierung einer Teilmenge der Amazon EC2 Query API und der OGF OCCI API
      • Erweiterbarkeit
        Die OpenNebula Cloud API ermöglicht die Implementierung neuer/weiterer Cloud Schnittstellen.

    Seminare und Forschung

    Quelle



CloudBerry Backup

Das CloudBerry Online Backup ist ein Tool zum Erstellen und Wiederherstellen von Backups für Windows Betriebssysteme. Die Daten werden dazu in der Cloud von Amazon genauer auf Amazon S3 abgelegt, wodurch sie jederzeit und unabhängig zur Verfügung stehen.

Mit einem Wizard können Backups und Restores der Daten verschlüsselt erstellt werden um die Daten vor unberechtigten Zugriff zu schützen. Mit Hilfe einer Terminplanung können zeitgesteuerte Backups erstellt und jederzeit, rund um die Uhr, wiederhergestellt werden.

Auf Grund der bekannten Windows Oberfläche kann ein Backup/Restore ohne großen Aufwand vorgenommen werden. Ein weitere interessanter Aspekt ist die Ablage der Daten in der Amazon Cloud. Es wird kein CloudBerry proprietäres Format verwendet. Dadurch kann anschließend mit jedem beliebigen Amazon S3 Tool auf die Daten zugegriffen werden und ein Vendor Lock-in wird damit vermieden.

Funktionsübersicht

  • Backup Wizard
    Der Backup Wizard wird benötigt um Backups zu erstellen und zu konfigurieren. Dabei werden die Ordner und Dateien einem Backup Vorgang hinzugefügt, sowie die Art der Kompression und der Verschlüsselung konfiguriert. Des Weiteren wird damit die Vorhaltezeit des Backups und die Zeit wann das Backup durchgeführt werden soll festgelegt. Beim ersten Start müssen dazu der Amazon S3 Account, die Security Keys und ein Bucket angegeben werden, in welchem das Backup abgelegt werden soll. Wird kein Bucket angegeben, erzeugt CloudBerry Backup automatisch einen Neuen.
  • Backup Plans
    Im Bereich Backup Plans erhält man einen Überblick über die aktuell konfigurierten Backup-Jobs. Diese können hier überwacht, angehalten oder gestoppt werden. Der "Storage Capacity Monitor" zeigt, wieviel Speicherplatz aktuell für das Backup genutzt wird.
  • Storage Browser
    Mit dem Storage Browser erhält man einen Einblick in seine Backups. Hier kann nach Dateien und deren Versionsständen gesucht werden. Darüber hinaus dient der Storage Browser für das Wiederherstellen von einzelnen oder mehreren Dateien.
  • Restore Wizard
    Mit dem Restore Wizard werden einzelne Dateien oder ein gesamtes Backup wiederhergestellt.
  • Windows Home Server Plugin
    CloudBerry Backup kann über ein Plugin vollständig in die Windows Home Server Console integriert werden um ein Backup der Daten eines Windows home Servers auf Amazon S3 zu speichern.
  • Funktionen

    • Zeitgesteuerte Backups
    • Verschlüsselung der Daten
    • Versionierung der Daten
    • Differenzielles Backup
    • Wiederherstellung der Daten von einem bestimmten Zeitpunkt
    • Verifizierung des Backups
    • Erweitern des Backups mit eigenen Routinen
    • Unterstützung der C# API
    • Paralleler Datentransfer
    • Zeitplanung unabhängig vom Windows Task Planer

    Kommende Funktionen

    • Block Level backup und Restore
    • Virtual Disk - Einbinden des Amazon S3 Speicher als lokale Festplatte
    • Speicherkosten mittels http://cloudsplit.com verringern
    • Web Interface für den Zugriff auf die Daten von jedem beliebigen Ort
    • FTP Unterstützung
    • Nirvanix Storage Delivery Network Unterstützung
    • Microsoft Azure Blob Storage Unterstützung
    • Sun Cloud Storage Service Unterstützung
    • EMC Atmos Unterstützung

    Systemvoraussetzungen

    • Windows XP/2003/Vista/2008/Windows 7 (32 und 64 bit)
    • Microsoft .NET Framework 2.0
    • Amazon S3 Account

    Preise etc.

    • 29,99 $ pro Lizenz inkl. einem Jahr Support
    • Der Support für die nachfolgenden Jahre beträgt 20% des ursprünglichen Preis
    • Mengenrabatte sind erhältlich
    • Partner und Affiliate-Programm ist vorhanden
    • Für Blogger, Schulen und Non-Profit Organisationen ist CloudBerry Backup kostenlos

    Quelle

    CloudBerry Backup



    Die Microsoft Windows Azure Plattform

    Mit der Windows Azure Plattform ist Microsoft nun auch mit einer Plattform in den Bereich des Cloud Computing eingestiegen. Dabei handelt es sich um ein Platform as a Service Angebot, da sich das Hauptaugenmerk auf die Entwicklung und Bereitstellung eigener Anwendung innerhalb von Microsofts Cloud Infrastruktur handelt.

    Windows Azure Platform

    Die Windows Azure Plattform stellt neben Entwicklungsfunktionen, auch Speicherplatz, Rechnerleistung und weitere Netzwerkdienste innerhalb der Microsoft Cloud zur Verfügung, womit Anwendungen, Onlinedienste und Websites bereitgestellt werden können.

    Die Windows Azure Plattform setzt sich aus mehreren Bestandteilen zusammen. Dazu gehört das Cloud Betriebssystem Windows Azure und die Azure Services - SQL Azure zur Bereitstellung von relationalen Datenbank in der Cloud und Windows Azure AppFabric für die Integration/ Verbindung bestehender IT-Systeme im eigenen Rechenzentrum mit der Cloud.

    Windows Azure

    Windows Azure ist ein Cloud basiertes Betriebssystem, welches als Umgebung für die Entwicklung, Bereitstellung und Verwaltung von Software- und IT-Systemen dient. Es richtet sich speziell an Unternehmen, IT-Dienstleister, Softwarehersteller und Entwickler, die Webseiten, Web-Anwendungen, Web-Dienste oder Speicherplatz in einem Microsoft Rechenzentrum nutzen und/oder bereitstellen wollen.

    Die Abrechnung erfolgt auf Basis des Verbrauchs, d.h. das nur für die Rechenzeit Kosten entstehen, die auch tatsächlich genutzt wurde. Um dem Endanwender eine optimale Performance zu bieten, stehen weltweit und an mehreren Orten Rechenzentren zur Verfügung.

    Microsoft SQL Azure

    Bei Microsoft SQL Azure handelt es sich um einen relationale Datenbank Cloudservice auf Basis Microsoft SQL Server Technologien, der in den Rechenzentren von Microsoft gehostet wird. Da SQL Azure Transact SQL (T-SQL) unterstützt, kann auf das bereits angeeignete Wissen bzgl. der T-SQL Entwicklung zurückgegriffen und bekannte relationale Datenbankmodelle genutzt werden. SQL Azure kann mit den eigenen Cloud-Anwendungen als auch mit den Anwendungen genutzt werden, die im eigenen Rechenzentrum ausgeführt werden.

    • Microsoft SQL Azure Data Sync

      Microsoft SQL Azure Data Sync dient dazu, um die Datenbanken im eigenen Rechenzentrum mit den SQL Azure Datenbanken zu synchronisieren. Die Synchronisation kann bidirektional stattfinden und Datenänderungen zu einem späteren Zeitpunkt mit SQL Azure abgeglichen werden, wodurch Windows Azure Anwendungen offline genutzt werden können.

    Windows Azure Platform AppFabric

    Die Windows Azure Platform AppFabric, ehemals auch ".NET Services" genannt, sind Web Services, mit denen vorhandene Applikationen und Datenbanken mit Windows Azure Applikationen und SQL Azure Datenbanken kommunizieren können.

    Die Windows Azure Platform AppFabric besteht derzeit aus zwei Kernkomponenten:

    • Service Bus
      Der Service Bus dient zum Verbinden von Anwendungen über das Internet und der Verbindung von Cloud Anwendungen mit den Anwendungen im eigenen Rechenzentrum. Sobald sich ein Service am Service Bus registriert hat, kann auf diesen auch durch ein Firewall hindurch zugegriffen werden. Die Kommunikation kann in allen Fällen bi-direktional erfolgen.
    • Access Control
      Das Access Control basiert auf dem Identitätsmodell von Claims. Dazu müssen für die Anwendungen keine eigenen Authentisierungs- und Autorisierungssteuerung implementiert werden. Es reicht aus den Service am Service Bus zu registrieren und anschließend mit Zugriffsrechten zu konfigurieren.

    Einsatzgebiete der Windows Azure Platform aus der Sicht von Microsoft

    • Softwarehersteller stellt SAAS (Software as a Service) Anwendung bereit
    • Softwarehersteller erweitert existierende Anwendung um Cloud Funktionalitäten
    • IT-Dienstleister baut Abteilungslösung für Mittelständler
    • IT-Dienstleister baut eine integrierte Anwendung für Mittelständler
    • Web-Agentur entwickelt Webpräsenz und Shop-System für großen Unternehmenskunde
    • Web 2.0 Website / Startup

    Microsoft Pinpoint Marketplace

    Mit dem Microsoft Pinpoint Marketplace stellt Microsoft Kunden und Partnern einen Marktplatz für Cloud Applikationen bereit. Die Partner können ihre Anwendungen in den Marktplatz einstellen, wodurch Kunden die Möglichkeit haben Anwendungen von diesem Marktplatz zu beziehen und direkt aus einem Microsoft Rechenzentrum zur Verfügung gestellt zu bekommen.

    Der Microsoft Pinpoint Marketplace ist hier zu erreichen.

    Quelle

    Microsoft Windows Azure Platform | DE
    Microsoft Windows Azure Platform | US



    eyeOS – Installation, Demo und erste Schritte

    Nachdem ich eyeOS bereits ausführlich vorgestellt habe, zeige ich nun wie die Installation auf dem eigenen Webspace funktioniert und wie man die ersten Schritte mit eyeOS "wagt".

    Systemvoraussetzungen

    Für die Installation auf einem gewöhnlichen Webspace wird ein Apache 2.x Webserver mit PHP 5.x Unterstützung benötigt. Da eyeOS auf ein eigenes virtuelles Dateisystem aufbaut, ist eine Datenbank nicht notwendig.

    Um den vollen Leistungsumfang von eyeOS zu nutzen wird allerdings ein eigener Root-Server benötigt. Darauf muss anschließend OpenOffice installiert und in eyeOS integriert werden, um Word, Excel, PowerPoint und die OpenOffice Dateiformate lesen und schreiben zu können.

    Alternativ kann ein eyeOS Image für VirtualBox 3.x inkl. Server mit Office Unterstützung und Client heruntergeladen werden.

    Die Installation - Textversion

    1. 1. Download der Installationsroutine von http://eyeos.org/downloads
    2. 2. Entpacken der Dateien
    3. 3. per FTP auf den Webspace kopieren
    4. 4. CHMOD 777 für ./ ; ./index.html ; ./installer/ ; ./package.eyepacke
    5. 5. Domain/ Subdomain wählen, z.B. eyeOS-Demo.meinedomain.de
    6. 6. URL zum Installationspfad wählen
    7. 7. root Passwort wählen
    8. 8. fertig

    Die Installation - in Bildern

    Nach dem Download und Entpacken der Dateien werden diese auf den Webspace kopiert und einer Domain/ Subdomain zugewiesen.

    Der Aufruf des Installers ohne vorherige Änderungen der Zugriffsrechte führt zu folgender Ausgabe:

    Nachdem die Rechte mittels CHMOD 777 für

    1. ./
    2. ./index.html
    3. ./installer/
    4. ./package.eyepacke

    vorgenommen wurden, muss der Systemname und ein Root Password vergeben werden.

    Erste Schritte

    Der erste Schritt besteht natürlich darin sich erstmal bei dem System anzumelden. Das machen wir zunächst mit dem Benutzer Root.

    Wie ich bereits in meinem vorherigen Artikel geschrieben habe, erkennt man bei eyeOS den Einfluss anderer bekannter graphischer Oberflächen wieder.

    Der Nächste Schritt sollte darin bestehen, ein neuen Benutzer ohne Administrationsrechte anzulegen. Dazu klicken wir rechts unten neben dem Datum/Uhrzeit auf das "Auge" und wählen anschließend "System Preferences".

    Dort wählen wir den Punkt "Manage Users".

    Dort legen wir einen weiteren Benutzer inkl. seiner persönlichen Daten wie Name, Vorname, E-Mail Adresse, Benutzername, Passwort und den "Permissions = User" an. Wir können zusätzlich bestimmen, dass der Benutzer das Passwort, dass wir ihm vergeben haben bei der ersten Anmeldung ändern muss.

    Neben den Berechtigungen "Administrator" gibt es noch den "Maintainer". Dieser kann Systemeinstellungen vornehmen, die nicht als kritisch erachtet werden. Da Root nur für die Installation von weiteren Anwendungen benötigt wird, reicht "Maintainer" bzw. "User" vollkommen aus.

    Anschließend melden wir uns mit dem zuvor angelegten Benutzer am System erneut an.

    Für einen ersten Test starten wir z.B. den Browser "eyeNav" indem wir oben in der Leiste "Network >> Navigator" auswählen.

    eyeOS im Betrieb

    Ein Betriebssystem lebt von seinen Anwendungen. Daher stelle ich kurz vier Anwendungen vor, die zu der mitgelieferten Office Suite gehören. Dabei handelt es sich um eyeFiles, eyeDocs, eyeCalender und eyeShow. Zusätzlich erkläre ich euch eyeSync, mit dem Daten vom lokalen System zu eyeOS übertragen werden können.

    Die Anwendungen der Office Suite erreichen wir durch einen Klick in der oberen Leiste auf "Office".

    eyeFiles

    eyeFiles ist z.B. vergleichbar mit dem Windows Explorer oder Nautilus von Gnome. Er dient lediglich dazu, Dateien die sich im eyeOS befinden zu verwalten und benötigt daher keine umfangreichen Funktionen. Über den Menüpunkt "Actions" stehen die gewohnten Funktionen zum Kopieren, Verschieben und Löschen von Dateien bereit.

    eyeDocs

    eyeDocs erinnert stark an die einfache Version von Wordpad was z.B. von Windows XP bekannt ist. Viel mehr als ein besserer Editor mit Formatierungsfunktionen ist die Anwendung derzeit auch nicht und steht in keinster Weise in Konkurrenz z.B. zu Google Docs. Aber für das Schreiben eines einfachen Textes reicht eyeDocs völlig aus.

    eyeCalendar

    eyeCalendar ist, ... ein einfacher, gewöhnlicher Kalender wie wir ihn aus anderen Betriebssystemen etc. her kennen. Die Ansicht kann auf Tag, Woche und Arbeitswoche eingestellt werden und ein Termin kann lediglich einen Betreff enthalten. Mehr sollte man von dieser Anwendung aber bisher leider nicht erwarten.

    eyeShow

    eyeShow stellt das Pendant zu Microsoft Powerpoint dar. Der erste Eindruck täuscht nicht, so bescheiden die Anwendung nach Aussen wirkt, so ist sie auch Innen. Eine Präsentation kann über mehrer Slides verfügen, die wiederum optisch mittels Formatierungen und Bilder aufgewertet werden können. Designvorlagen um das Äußere eines Slides von der weißen Seite etwas abzuheben sind derzeit aber noch nicht vorhanden.

    eyeSync

    eyeSync kann unter http://eyeos.org/de/downloads/eyesync für Windows, Mac und Linux heruntergeladen werden und dient als Synchronisationstool zwischen dem lokalen PC und eyeOS.

    eyeSync bedarf keiner Installation, das Ausführen der eyeSync.exe reicht aus um das Programm zu starten.

    Über "Preferences" wird die URL zu dem eyeOS-Server, sowie der Benutzername und das Passwort hinzugefügt, mit dem Daten ausgetauscht werden sollen.

    Anschließend muss mit dem Benutzer der zuvor für die Synchronisation ausgewählt wurde ein Ordner auf eyeOS angelegt werden, hier: "TestSync"

    Auf dem lokalen PC wird ebenfalls ein Ordner angelegt, der für den Datenaustausch mit eyeOS dient. Anschließend klicken wir in dem eyeSync Tool links Oben auf den Punkt "Add" und fügen den Pfad bzw. den Namen der Ordner hinzu.

    Der Austausch-Ordner erscheint nun auf der linken Seite.

    Zum Test erstellen wir einen Ordner - hier mit dem Namen "tmp" auf unserem lokalen PC.

    Ein Blick in den Ordner "TestSync" in eyeOS zeigt, das der Ordner angelegt wurde. Allerdings mit dem Namen "Neuer Ordner".

    eyeSync kann aktuell nur Daten vom lokalen PC zu eyeOS kopieren, nicht in die andere Richtung. Von einer Synchronisation können wir an dieser Stelle daher nicht reden. Um Daten aber unkompliziert und schnell zu übertragen reicht das Tool völlig aus.

    Demo
    Zur Demonstration habe ich unter http://eyeos-demo.clouduser.de eine eyeOS Installation bereitgestellt. Fühlt euch frei eyeOS auf Herz und Nieren zu prüfen.

    Benutzername: guest
    password: guest

    Fazit
    eyeOS kann noch nicht das bieten, was wir von den gängigen Betriebssystemen gewohnt sind. Allerdings stimmen die Ansätze und auch wenn dieser Artikel an der einen oder anderen Stelle etwas kritisch geworden ist, die Richtung ist klar und deutlich erkennbar, was uns für Möglichkeiten offen stehen und wie wir in Zukunft arbeiten werden.

    Quelle
    eyeOS