• Keine Ergebnisse gefunden

18.12.2009 FlorianWeispfenning Cloud-Plattform:AppscaleHochschuleMannheim

N/A
N/A
Protected

Academic year: 2021

Aktie "18.12.2009 FlorianWeispfenning Cloud-Plattform:AppscaleHochschuleMannheim"

Copied!
28
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Cloud-Plattform: Appscale Hochschule Mannheim

Florian Weispfenning

Fakult¨at f¨ur Informatik Hochschule Mannheim

florian.weispfenning@stud.hs-mannheim.de

18.12.2009

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 1/28

(2)

Agenda

Appscale

1

Einf¨ uhrung

Voraussetzung

Komponenten

Aufbauten

Werkzeuge

Demo

(3)

Appscale - Open-source platform-as-a-service (PaaS)

Projekt der UCSB (University of California, Santa Barbara) 7.3.2009 Ver¨ offentlichung von 1.0

2

“emuliert” Google App Engine (GAE) Java & Python Programme

Version 1.3 Beta Anfang Dezember Version 1.3 seit Montag 14.12.09

2

http://en.wikipedia.org/w/index.php?title=AppScale

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 3/28

(4)

Appscale - Auslieferung

Server (als VM-Dateisystem)

6 GB Dateisystem (komplettes Appscale-System) 2.6.27 Kernel

Xen-Konfiguration Administrations-Konsole

ein Archiv

Komandozeilen-Werkzeug

(5)

Warum Appscale

Abh¨ angigkeit zu PaaS-Anbietern aufweichen kompatibel zu GAE

eingebaute Authentifizierung (ohne Google-Accounts) Datenbanken

3

HBase Hypertable MySQL Cassandra Voldemort MongoDB MemcacheDB

komplettes transparentes System Forscher

Verhalten einer Cloud

Verhalten von Anwendungen in einer Cloud

3

http://code.google.com/p/appscale/

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 5/28

(6)

Voraussetzungen

Virtualisierungsschicht (Xen oder KVM) eigene Hardware

pro VM 0,5GB - 4GB RAM 1 (besser 2) Kerne

EC2 Eukalyptus

Ohne Virtualisierung (Ubuntu Jaunty)

(7)

Komponenten

AppController (AC) AppLoadBalancer (ALB) Database Master/Peer (DBM) AppServer (AS)

Database Slave/Peer (DBS)

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 7/28

(8)

AppController (AC)

in Ruby geschrieben

Verwaltete alle Appscale-Instanzen Darstellung aller Anwendungen

Startet zum Start den “Database Master” (DBM) Iniziiert das “deployment”

Startet konfigurierte Appscale-VMs

“heartbeat” von 10 Sekunden zu allen VMs

(9)

AppLoadBalancer (ALB)

Ruby on Rails - Programm nginx

4

Benutzer-Login

Verteilt die Anfragen der Anwender zuf¨ allig leitet direkt zum AppServer weiter

Situationen um ALB anzufragen Erster Aufruf des Programms Logout

aktueller AppServers offline

4

http://nginx.org/

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 9/28

(10)

AppServer (AS)

in Python

basiert auf “dev appserver.py” (GAE) Mini-Entwicklungsserver von Google Datei als Datenbank (Google)

Generische Datenbankschnittstelle (AppScale)

Speichert HTTP-Cookie lokal

(11)

Datenbankschnittstelle

Funktionalit¨ at

“put” - neues Element in Tabelle

“get” - Element ¨ uber ID aufrufen Abfragen (Sprache ist SQL-¨ ahnlich)

“delete” - L¨ oschen eines Elements anhand einer ID

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 11/28

(12)

Project Voldemort - Verteilte Datenbank

Key-Value Datenbank Alternativen

5

Amazon’s Dynamo

Google’s BigTable

(13)

Entwicklungsaufbau

eine AppScale-Instanz

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 13/28

(14)

Produktivlandschaft

mehrere AppScale-Instanzen

(15)

Aufbau in der Hochschule Mannheim

ein Desktop-Rechner 2.4 GHz

2 Kerne 3 GB RAM

250 GB Festplattenspeicher Platz f¨ ur 3 AppScale Instancen

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 15/28

(16)

Aufbau in der Hochschule Mannheim

(17)

Werkzeuge

F¨ ur Entwickler Administrator ruby-Skripte

Nutzt SSH-Schl¨ ussel zur Authentifizierung

Befehl Beschreibung

1 appscale-add-keypair Erstellt SSH-Schl¨ ussel f¨ ur jede Server Instanz

2 appscale-describe-instances Beschreibt Status aller Server Instanzen 3 appscale-remove-app L¨ oscht ein Programm von allen Servern 4 appscale-reset-pwd Administrator-Passwort setzen

5 appscale-run-instances Alle Server Instanzen starten 6 appscale-terminate-instances Alle Server Instanzen stoppen

7 appscale-upload-app Progamm auf allen Servern installieren Keyname-Konzept (mehrere Clouds von einem Konfigurationstool

verwaltbar)

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 17/28

(18)

Server-Konfiguration

Nur bei appscale-add-keypair 1x Hauptserver (Load-Balancer + Datenbank) 2x Server

ips.yaml

:controller: 192.168.10.10 :servers:

- 192.168.10.11

(19)

Schritte zu einer funktionierenden Anwendung

Ziel: Beispielprogramm guestbook.tar.gz (Administrator-Werkzeugen) Eine ips.yaml erzeugen

appscale-add-keypair –ips ips.yaml

appscale-run-instances –file guestbook.tar.gz –table voldemort Uber “Controller” kann nun auf die Cloud zugegriffen werden. ¨

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 19/28

(20)

Demo

Demo AppScale Maschinen starten

“Cloud” starten

Beispielprogramm hochladen

(21)

Demo

Demo Verteilte Datenbank demonstrieren.

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 21/28

(22)

wachsende Firma

Zeit

1 2 3 4 5

Kosten

(23)

Alternativen

Google App Engine

6

AppDrop (speziell f¨ ur Amazon EC2)

7

proof-of-concept

in 4 Tagen implementiert Datenspeicherung in Datei Alles auf einem Server keine Flexibilit¨ at keine Datenredundanz

6

http://code.google.com/intl/de-DE/appengine/

7

http://jchris.mfdz.com

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 23/28

(24)

Fazit

komplexes System

keine “One-Click” Installation :-(

32 Sekunden lange Berechnungen

;-)

h¨ aufig neue Versionen ben¨ otigt Hardware

kompatible zu GAE

dynamisch wachsendes System komplette Kontrolle ¨ uber die Daten

keine Internetanbindung n¨ otig

aktive Entwicklung sichtbar

(25)

Danke

AppScale - Support Appscale Community

8

Xen - Support

Maximilian Hoecker Benjamin Simroth Tobias Mache Amazon EC2 - Support

Peter Gehrt AppEngine - Support

Peter Sutter

8

http://groups.google.com/group/Appscale Community

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 25/28

(26)

Fragen

Gibt es noch Fragen?

(27)

Ende

Vielen Dank f¨ ur Ihre Aufmerksamkeit

Florian Weispfenning – Cloud-Computing Seminar – Hochschule Mannheim – WS0910 27/28

(28)

Quellen

“AppScale Design and Implementation” (AppScale Tech Report

9

)

AppScale Pr¨ asentation von Juli 2009

Referenzen

ÄHNLICHE DOKUMENTE

Für Pioniere von Public IaaS (Amazon) und Public SaaS (Salesforce) werden wichtige Kostenstrukturen umrissen; zweiseitige Märkte liefern den wirtschaftlichen Hintergrund

Jiaming Song – Cloud-Computing Seminar – Hochschule Mannheim – WS0910

Peter Sutter – Cloud-Computing Seminar – Hochschule Mannheim – WS0910

Binglin Li – Cloud-Computing Seminar – Hochschule Mannheim – WS0910

Aber auch gr¨oßere Unternehmen k¨onnen von Cloud Computing, gerade durch eigene Clouds oder Hybrid-Clouds, profitieren. Da Server in Unternehmen nur zu 20%[9] ausgelastet sind,

Anwender Wenn der Anwender eine Anwendung ¨ uber HTTP aufrufen will, dann ben¨ otigt er einen Server (App node).. Diesen erfragt er ¨ uber den Controller (head node), welcher ihn

Tobias Neef – Cloud-Computing Seminar – Hochschule Mannheim – WS0910

ƒ Eine mögliche Garantie stellt FIFO (First-In-First-Out) dar: Nachrichten zwischen zwei Prozessen überholen sich nicht: Empfangsreihenfolge = Sendereihenfolge. FIFO