Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik Jörn Esdohr | Oktober 2012, Dortmund OpenStack.

Ähnliche Präsentationen


Präsentation zum Thema: "Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik Jörn Esdohr | Oktober 2012, Dortmund OpenStack."—  Präsentation transkript:

1 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik Jörn Esdohr | Oktober 2012, Dortmund OpenStack

2 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 2 Was ist OpenStack? Open Source Cloud Plattform als IaaS (Infrastructure as a Service) Wer steckt hinter OpenStack? 2010, Rackspace und Nasa starten OpenStack Projekt OpenStack Foundation unterstützt von über 140 Unternehmen z.B. Deutsche Telekom, AT&T, HP, IBM, … Jörn Esdohr | Dortmund, Oktober 2012

3 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 3 Teil 1 Architektur von OpenStack Teil 2 Client-Server-Interaktion Jörn Esdohr | Dortmund, Oktober 2012

4 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 4 TEIL 1 ARCHITEKTUR VON OPENSTACK Jörn Esdohr | Dortmund, Oktober 2012

5 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 5 Teil 1 Architektur von OpenStack OpenStack verteilt Cloud Funktionen auf 7 einzelne Dienste (Core Projects). Jörn Esdohr | Dortmund, Oktober 2012

6 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 6 Jörn Esdohr | Dortmund, Oktober 2012 Nova – Compute Nova verwaltet Server-Instanzen und bietet Schnittstellen für Cloud Anwendungen. Server-Instanzen Virtuelle Maschinen Flavor Hardware-Konfiguration (Speicher, RAM, CPU Priorität) Image Abbildungen von Server- Installationen (Fedora, Ubuntu, …)

7 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 7 Jörn Esdohr | Dortmund, Oktober 2012 Nova – Compute Tenants (Projekte) Ressourcen-Container definiert durch Quota Server-Instanzen vCPU IP Adressen virtuelle Datenträger (Volumes)

8 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 8 Jörn Esdohr | Dortmund, Oktober 2012

9 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 9 Jörn Esdohr | Dortmund, Oktober 2012 Verwaltung von Server Images Glance – Image Service

10 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 10 Jörn Esdohr | Dortmund, Oktober 2012

11 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 11 Jörn Esdohr | Dortmund, Oktober 2012 Swift – Object Storage Verwaltung statischer Web-Inhalte (Bilder, Media-Dateien, Images, …)

12 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 12 Jörn Esdohr | Dortmund, Oktober 2012

13 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 13 Jörn Esdohr | Dortmund, Oktober 2012 Cinder – Block Storage Verwaltung virtueller Datenträger (Volumes). Daten überleben Server-Termination.

14 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 14 Jörn Esdohr | Dortmund, Oktober 2012

15 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 15 Quantum – Network Service Jörn Esdohr | Dortmund, Oktober 2012 Quantum erlaubt Konstruktion komplexer Netzwerk-Topologien.

16 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 16 Jörn Esdohr | Dortmund, Oktober 2012

17 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 17 Keystone authentifiziert Anfragen an das OpenStack API. Wichtige Strukturelemente Tenant User (Zuordnung zu Tenants) Rollen (Admin, Enduser, …) Tokens (temporäre Authentifizierungs-Strings für API Anfragen) Jörn Esdohr | Dortmund, Oktober 2012 Keystone – Identity Service

18 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 18 Jörn Esdohr | Dortmund, Oktober 2012

19 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 19 Jörn Esdohr | Dortmund, Oktober 2012

20 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 20 OpenStack Architektur Jörn Esdohr | Dortmund, Oktober 2012

21 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 21 TEIL 2 CLIENT-SERVER-INTERAKTION Jörn Esdohr | Dortmund, Oktober 2012

22 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 22 OpenStack API Das OpenStack API ist ein REST-ful Web Service. REST (Representational State Transfer) Client-Server-Struktur mit Verben (Aktionen) und Subjekten (Ressourcen) Senden von Anfragen an URI (Uniform Resource Identifier) 4 Prinzipien Beschränkung auf HTTP Methoden: GET, POST, PUT, DELETE API ist stateless, d.h. alle benötigten Informationen sind in Aufruf-Parametern URIs in Verzeichnis-Struktur Antwort in XML oder JSON (JavaScript Object Notation) Jörn Esdohr | Dortmund, Oktober 2012

23 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 23 Semantik der HTTP-Methoden GET PUT POST DELETE REST-ful Web Service Anforderung von Ressourcen Änderung von Ressourcen Erzeugung von Ressourcen Löschung von Ressourcen Jörn Esdohr | Dortmund, Oktober 2012

24 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 24 Beispiel: API für Server-Instanzen (1) Aufbau der REST URI Jörn Esdohr | Dortmund, Oktober 2012

25 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 25 Beispiel: API für Server-Instanzen (2) v2/{tenant_id}/servers/{server_id} GET Informationen zum Server Eingabe: Tenant_ID, Server_ID Ausgabe: Details zum Server Jörn Esdohr | Dortmund, Oktober 2012 { "server": { "created": " T21:11:09Z", "flavor": { "id": "1",... }... }

26 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 26 Beispiel: API für Server-Instanz (3) v2/{tenant_id}/servers/{server_id} PUT Änderung von Benutzername, Passwort Eingabe: Tenant_ID, Server_ID, neues Passwort (in JSON / XML) keine Ausgabe Jörn Esdohr | Dortmund, Oktober 2012 { "changePassword" : {"adminPass" : "supersecret" } }

27 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 27 Beispiel: API für Server-Instanz (4) v2/{tenant_id}/servers/{server_id} DELETE Terminiert Server Eingabe: Tenant_ID, Server_ID keine Ausgabe Jörn Esdohr | Dortmund, Oktober 2012

28 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 28 Weitere REST APIs v2/{tenant_id}/servers/{server_id}/action v2/images/ v2/images/{image_id} v2/flavors v2/flavors/{flavor_id} v2/{tenant_id} v2/{tenant_id}/os-quota-sets/{tenant_id} … Jörn Esdohr | Dortmund, Oktober 2012

29 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 29 Methoden zur Kommunikation mit OpenStack HTTP Requests (z.B. mit cURL) Python Client API (Objekt-orientierter Ansatz) Command Line Interface (CLI) Horizon Dashboard Jörn Esdohr | Dortmund, Oktober 2012

30 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 30 1 $ curl Beispiel: Anforderung eines Tokens (cURL) (1) REST URI: Jörn Esdohr | Dortmund, Oktober 2012 cURL Befehl 1 $ curl -d '{"auth":{ 2 "passwordCredentials": { 3"username": "admin", 4"password": "1234 5} 6 } 7}' 1 $ curl -d '{"auth":{ 2 "passwordCredentials": { 3"username": "admin", 4"password": "1234 5} 6 } 7}' 8-H "Content-type: application/json 1 $ curl -d '{"auth":{ 2 "passwordCredentials": { 3"username": "admin", 4"password": "1234 5} 6 } 7}' 8-H "Content-type: application/json 9http://keystone.site.com:5000/v2.0/token

31 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 31 Beispiel: Anforderung eines Tokens (cURL) (2) Server Antwort in JSON Jörn Esdohr | Dortmund, Oktober 2012 { "access" : { "token" : { "expires" : " T18:00:37Z", "id" : "d63f99ac17024f089155f09bfb684202" }, "user" : {... } }

32 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 32 Beispiel: Anforderung eines Tokens (CLI) Kommandozeilen-Befehl über das Python Keystone Client API Jörn Esdohr | Dortmund, Oktober | Property | Value | | expires | T18:18:40Z | | id | f70fb446d5af15bf23a967fbbb | | tenant_id | c307ba786f4346a4a b5d96f | | user_id | cb2c203c85a642acac7c29cc126b0c5b | $ Ausgabe keystone --os-password 1234 token-get --os-username admin

33 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 33 OpenStack API Jörn Esdohr | Dortmund, Oktober 2012 Übersicht der Ressourcen Nova: Server, Flavors, Images, Floating IPs, Keypairs, Security Groups, DNS Einträge Quantum: Netzwerke, Subnetzwerke, Netzwerk-Ports Glance: Images Keystone: User, Credentials, Rollen, Tenants, Tokens, Endpoints Cinder: Volumes Swift: Objekte, Container, Accounts Eine Idee aller Schnittstellen { GET, PUT, DELETE, POST } x { Parameter } x Ressourcen

34 Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik 34 Zusammenfassung OpenStack als IaaS mit 7 Kernkomponenten Nova (Compute), Glance (Image), Swift (Object Storage), Quantum (Network), Keystone (Identity),Cinder (Block Storage), Horizon (Dashboard) Client-Server-Interaktion über das OpenStack REST API Struktur von Anfragen Verschiedene Methoden (cURL, CLI, Python Client) Übersicht der Schnittstellen Jörn Esdohr | Dortmund, Oktober 2012


Herunterladen ppt "Sofware Engineering in der Cloud: OpenStack / Fakultät für Informatik Jörn Esdohr | Oktober 2012, Dortmund OpenStack."

Ähnliche Präsentationen


Google-Anzeigen