Upload
morency-latzke
View
116
Download
0
Embed Size (px)
Citation preview
Eucalyptus
Lukasz BialySeminar StuPro cims
13.07.2009
cimscims
<Eucalyptus> <13.07.2009> 2cimscims
Gliederung
• Eucalyptus in der Theorie– Was ist Eucalyptus?– Motivation und Vorteile von Eucalyptus– Architektur von Eucalyptus– Die Netzwerk Modi in Eucalyptus
<Eucalyptus> <13.07.2009> 3cimscims
Gliederung(2)
• Eucalyptus in der Praxis(Installation)– Voraussetzungen – Installation von Eucalyptus– Erste Konfiguration und Start– Installation von EC2 Command Line Tools
<Eucalyptus> <13.07.2009> 4cimscims
Gliederung(3)
• Fragen und Diskussionsrunde• Referenzen
<Eucalyptus> <13.07.2009> 5cimscims
Überblick…
• Eucalyptus in der Theorie– Was ist Eucalyptus?– Motivation und Vorteile von Eucalyptus– Architektur von Eucalyptus– Die Netzwerk Modi in Eucalyptus
<Eucalyptus> <13.07.2009> 6cimscims
Was ist Eucalyptus?
Übersetzung der Beschreibung auf www.eucalyptus.com
„Eucalyptus ist ein Open-Source System zur Implementierung von privaten und hybriden
Clouds, unter Verwendung der Hardware und Software Infrastruktur welche gerade an Ort und
Stelle verfügbar ist, ohne diese Stark zur verändern“
<Eucalyptus> <13.07.2009> 7cimscims
Name „EUCALYPTUS“
Elatic Utility Computing Architeckture for Linking Your Programs to Useful Systems
<Eucalyptus> <13.07.2009> 8cimscims
Allgemeine Informationen
• Entwicklerteam (Universität of California)– Rich Wolski(Projektleiter)– Chris Grzegorczyk– Dan Numri– Graziano Obertelli– Sunil Soman– Lamia Youseff– Dimitrii Zagorodnov
<Eucalyptus> <13.07.2009> 9cimscims
Allgemeine Informationen(II)
• Erstes Release: 29.05.2008• Aktuelle Version: 1.5.1• Programmiersprache: Java, C• Lizenz: BSD License• Betriebssystem: Linux• Implementiert nach den IaaS-Model
(Infrastructure as a Service)
<Eucalyptus> <13.07.2009> 10cimscims
Überblick…
• Eucalyptus in der Theorie– Was ist Eucalyptus?– Motivation und Vorteile von Eucalyptus– Architektur von Eucalyptus– Die Modi in Eucalyptus
<Eucalyptus> <13.07.2009> 11cimscims
Eucalyptus als Lösungsansatz
• Entwickelt für Forschungszwecke– Einsetzbar in „Fremden“ Umgebung– Modulare Gestaltung(Module Austauschbar)– Leicht installierbar und verwaltbar
<Eucalyptus> <13.07.2009> 12cimscims
Vorteile• Amazon EC2 und S3 orientiert/kompatibel• Freie Open Source Software• Grundlegende Administrationstools• Mehrere Cluster in einer Cloud• Sichere interne Kommunikation via SOAP und
WS-Security• Kostenpflichtige Betreuung verfügbar
<Eucalyptus> <13.07.2009> 13cimscims
Überblick…
• Eucalyptus in der Theorie– Was ist Eucalyptus?– Motivation und Vorteile von Eucalyptus– Architektur von Eucalyptus– Die Modi in Eucalyptus
<Eucalyptus> <13.07.2009> 14cimscims
Hierarchie in Eucalyptus
Quelle: Rich Wolski slide von der Cloud Computing Expo (April 2009)
<Eucalyptus> <13.07.2009> 15cimscims
Node Controller(NC)
• Eins auf jeden Physikalischen Rechner im Cluster
• Aufgaben– Startet, Beschreibt, Terminiert VM-Instanzen– Antwortet auf Anfragen der CC
• z.B. describeResource
<Eucalyptus> <13.07.2009> 16cimscims
Cluster Controller(CC)
• Wird auf jeden „Frond-end“ ausgeführt• Aufgaben
– Sammelt und übermittelt Informationen von NCs– Verteilt Aufgaben an einzelne NCs
• Scheduling
– Verwaltet das Netzwerk der Instanzen
<Eucalyptus> <13.07.2009> 17cimscims
Cloud Controller(CLC)
• Ein Cloud Controller für die ganze Cloud– „Globale Kommandozentralle“
• Aufgaben– Benutzer- und Adminstartor Anfragen verarbeiten– Scheduling für High-Level VM-Instanzen.– Verwaltung der Persistenten Benutzer- und
Systemdateien
<Eucalyptus> <13.07.2009> 18cimscims
Überblick…
• Eucalyptus in der Theorie– Was ist Eucalyptus?– Motivation und Vorteile von Eucalyptus– Architektur von Eucalyptus– Die Netzwerk Modi in Eucalyptus
<Eucalyptus> <13.07.2009> 19cimscims
Netzwerk
Quelle der Grafik:Eucalyptus: A Technikal Report on a Elastic Utility…
<Eucalyptus> <13.07.2009> 20cimscims
Netzwerk Modi in Eucalyptus
• System Mode• Static Mode• Managed Mode• Managed NOVLAN Mode
<Eucalyptus> <13.07.2009> 21cimscims
System Mode
• Der Default Mode• Grundlegende Funktionalität, Try-out• Voraussetzung: DHCP-Server• Funktionsweise:
– Instanzen mit zufälligen MAC-Adresse erzeugt– Verbindung des Ethernet Devices mit den lokalen
Netzwerk.
<Eucalyptus> <13.07.2009> 22cimscims
Static Mode
• Mehr Kontrolle über die IP vergabe.• Voraussetzungen
– DHCP Server pro „Front End“– Konfiguration und Angabe der MAC/IP-Paare
• Funktionsweise:– Das erste Freie Paar wird verwendet– Ethernet Device mit den Lokalen Netzwerk
verbunden
<Eucalyptus> <13.07.2009> 23cimscims
Managed Mode
• Eucalyptus kontrolliert das lokale Netzwerk• Größte Anzahl Features
– Definition von Zugangsregeln auf die Security Groups
– Kontrollierte Dynamische IP vergabe(elastic IPs) – Netzwerkisolation zwischen virtuellen Maschinen
• Ganze Eucalyptus Installation auf einen Rechne nicht möglich
<Eucalyptus> <13.07.2009> 24cimscims
Managed Mode
• Voraussetzungen– Definiertes Netzwerk mit einem Spektrum von
unbenutzten IPs– Netzwerk muss „VLAN clean“ sein– Keine oder kompatible Firewall auf Cluster
Controler
• Funktionsweise– Spezifizierung des Security Group– IP Vergabe(DHCP mit statischen Mapping)
<Eucalyptus> <13.07.2009> 25cimscims
Managed-NOVLAN Mode
• Fast gleiche Funktionalität wie Managet Mode– Keine Netzwerkisolation der Virtuellen Maschinen
• Netzwerk muss nicht „VLAN clean“ sein.
<Eucalyptus> <13.07.2009> 26cimscims
Übersicht…
• Eucalyptus in der Praxis(Installation)– Voraussetzungen – Installation von Eucalyptus– Erste Konfiguration und Start– Installation von EC2 Command Line Tools
<Eucalyptus> <13.07.2009> 27cimscims
Beispiel-Unter System Mode-Ubuntu
Quelle der Grafik:https://help.ubuntu.com/community/Eucalyptus
<Eucalyptus> <13.07.2009> 28cimscims
Voraussetzungen• C compilers • Java Developer Kit (SDK) version 1.6 or above • Apache ant 1.6.5 or above • libc development files • pthreads development files • libvirt development files • Axis2C and rampart development files• Curl development files • openssl development files
<Eucalyptus> <13.07.2009> 29cimscims
Voraussetzungen „Front end“
• Java 6• Apache ant• Perl• Postfix• Iproute und iptables packages
<Eucalyptus> <13.07.2009> 30cimscims
Voraussetzungen „Node“
• Perl• Hypervisor
– Xen( + xen-utils package)– KVM
• iproute und iptables packages• libvirt und libvirtd
<Eucalyptus> <13.07.2009> 31cimscims
Übersicht…
• Eucalyptus in der Praxis– Voraussetzungen – Installation von Eucalyptus– Erste Konfiguration und Start– Installation von EC2 Command Line Tools
<Eucalyptus> <13.07.2009> 32cimscims
Installation
• Front End– Installation von eucalyptus-cloud und eucalyptus-cc– z.B. unter Ubuntu durch apt-get
• Node– Installation von eucalyptus-nc– Bridge definieren
<Eucalyptus> <13.07.2009> 33cimscims
Bridge definierenauto loiface lo inet loopback
auto br0 iface br0 inet static
address 192.168.0.10network 192.168.0.0 netmask 255.255.255.0broadcast 192.168.0.255gateway 192.168.0.1bridge_ports eth0 bridge_fd 9 bridge_hello 2 bridge_maxage 12 bridge_stp off
<Eucalyptus> <13.07.2009> 34cimscims
Brige in Eucalyptus festlegen
• Brige Name in Node Controller– eucalyptus.conf VNET_BRIDGE=“br0”
<Eucalyptus> <13.07.2009> 35cimscims
Übersicht…
• Eucalyptus in der Praxis– Voraussetzungen – Installation von Eucalyptus– Erste Konfiguration und Start– Installation von EC2 Command Line Tools
<Eucalyptus> <13.07.2009> 36cimscims
Erstmalige Konfiguration
• Ein Cluster erschaffen– euca_conf -addcluster <clustername> localhost
• Node Hinzufügen– sudo euca_conf -addnode <node_hostname>
<Eucalyptus> <13.07.2009> 37cimscims
Start von Eucalyptus
• Front End:– /etc/init.d/eucalyptus-cloud start– /etc/init.d/eucalyptus-cc start
• Node:– /etc/init.d/eucalyptus-nc start
<Eucalyptus> <13.07.2009> 38cimscims
Erster Login
• Im Web Browser– URL: https://<front-end-ip-address>:8443/
<Eucalyptus> <13.07.2009> 39cimscims
Erste Aufgaben
– Einloggen als „Admin“, Passwort „Admin“– Password ändern– Setzen der Emailadresse für Administration– Walrus-URL bestätigen– Credentials Tab x509 Zertifikate herunterladen
<Eucalyptus> <13.07.2009> 40cimscims
Übersicht…
• Eucalyptus in der Praxis– Voraussetzungen – Installation von Eucalyptus– Erste Konfiguration und Start– Installation von EC2 Command Line Tools
<Eucalyptus> <13.07.2009> 41cimscims
Für Interaktion mit Eucalyptus
• Amazon EC2 command-line tools– ec2-api-tools-1.3-30349– ec2-ami-tools-1.3-26357
• Benötigten packte– ruby– libopenssl-ruby– curl
<Eucalyptus> <13.07.2009> 42cimscims
EC2 command-line Installation
• Apt-get install, danach remove– Neue Versionen nicht kompatibel– Abhängigkeiten erfüllen
• Ordner ~/.euca erstellen• Zertifikat drinnen auspacken• Richtige Versionen in ~/.euca/ec2 bzw.
…/ec2ami auspacken
<Eucalyptus> <13.07.2009> 43cimscims
EC2 command-line Installation(2)
• Variaben setzen– echo 'export JAVA_HOME=/usr/jvm' >> eucarc– echo 'export EC2_HOME=~/.euca/ec2' >> eucarc – echo 'export
EC2_AMITOOL_HOME=~/.euca/ec2ami' >> eucarc – echo 'export PATH=$PATH:$EC2_HOME/bin:
$EC2_AMITOOL_HOME/bin' >> eucarc
<Eucalyptus> <13.07.2009> 44cimscims
EC2 command-line Installation(3)
• Umgebungsvariable „JAVA_HOME“ auf den runtime-Installationsort setzen
• source ~/.euca/eucarc
<Eucalyptus> <13.07.2009> 45cimscims
Fragen?
??
<Eucalyptus> <13.07.2009> 46cimscims
Referenzen
– https://help.ubuntu.com/community/Eucalyptus– http://en.wikipedia.org/wiki/Eucalyptus_(computing)– http://open.eucalyptus.com/wiki/
EucalyptusAdministratorGuide– http://www.eucalyptus.com/– Eucalyptus: A Technikal Report on a Elastic Utility
Computing Architecture Linking Your Programs To Useful Systems. Technical report, Computer Science Department University of California (2008-10)