Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

OpenStack Jörn Esdohr | Oktober 2012, Dortmund.

Ähnliche Präsentationen


Präsentation zum Thema: "OpenStack Jörn Esdohr | Oktober 2012, Dortmund."—  Präsentation transkript:

1 OpenStack Jörn Esdohr | Oktober 2012, Dortmund

2 Open Source Cloud Plattform als IaaS (Infrastructure as a Service)
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 Teil 1 Architektur von OpenStack Teil 2 Client-Server-Interaktion
Jörn Esdohr | Dortmund, Oktober 2012

4 Teil 1 Architektur von OpenStack
Jörn Esdohr | Dortmund, Oktober 2012

5 Teil 1 Architektur von OpenStack
OpenStack verteilt Cloud Funktionen auf 7 einzelne Dienste (Core Projects). Jörn Esdohr | Dortmund, Oktober 2012

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

7 Nova – Compute Tenants (Projekte)
Ressourcen-Container definiert durch Quota Server-Instanzen vCPU IP Adressen virtuelle Datenträger (Volumes) Jörn Esdohr | Dortmund, Oktober 2012

8 Jörn Esdohr | Dortmund, Oktober 2012

9 Glance – Image Service Verwaltung von Server Images
Jörn Esdohr | Dortmund, Oktober 2012

10 Jörn Esdohr | Dortmund, Oktober 2012

11 Swift – Object Storage Verwaltung statischer Web-Inhalte (Bilder, Media-Dateien, Images, …) Jörn Esdohr | Dortmund, Oktober 2012

12 Jörn Esdohr | Dortmund, Oktober 2012

13 Cinder – Block Storage Verwaltung virtueller Datenträger (Volumes).
Daten überleben Server-Termination. Jörn Esdohr | Dortmund, Oktober 2012

14 Jörn Esdohr | Dortmund, Oktober 2012

15 Quantum – Network Service
Quantum erlaubt Konstruktion komplexer Netzwerk-Topologien. Jörn Esdohr | Dortmund, Oktober 2012

16 Jörn Esdohr | Dortmund, Oktober 2012

17 Keystone – Identity Service
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

18 Jörn Esdohr | Dortmund, Oktober 2012

19 Jörn Esdohr | Dortmund, Oktober 2012

20 OpenStack Architektur
Jörn Esdohr | Dortmund, Oktober 2012

21 Teil 2 Client-Server-Interaktion
Jörn Esdohr | Dortmund, Oktober 2012

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 REST-ful Web Service Semantik der HTTP-Methoden GET PUT POST DELETE
Anforderung von Ressourcen Änderung von Ressourcen Erzeugung von Ressourcen Löschung von Ressourcen Jörn Esdohr | Dortmund, Oktober 2012

24 Beispiel: API für Server-Instanzen (1)
Aufbau der REST URI Jörn Esdohr | Dortmund, Oktober 2012

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 { "server": { "created": " T21:11:09Z", "flavor": { "id": "1", ... } ... Jörn Esdohr | Dortmund, Oktober 2012

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 { "changePassword" : {"adminPass" : "supersecret" } } Jörn Esdohr | Dortmund, Oktober 2012

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 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 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 Beispiel: Anforderung eines Tokens (cURL) (1)
REST URI: cURL Befehl 1 $ curl -d '{"auth":{ 2 "passwordCredentials": { 3 "username": "admin", 4 "password": "1234„ 5 } } 7 }' 8 -H "Content-type: application/json“ 1 $ curl -d '{"auth":{ 2 "passwordCredentials": { 3 "username": "admin", 4 "password": "1234„ 5 } } 7 }' 1 $ curl 1 $ curl -d '{"auth":{ 2 "passwordCredentials": { 3 "username": "admin", 4 "password": "1234„ 5 } } 7 }' 8 -H "Content-type: application/json“ 9 Jörn Esdohr | Dortmund, Oktober 2012

31 Beispiel: Anforderung eines Tokens (cURL) (2)
Server Antwort in JSON { "access" : { "token" : { "expires" : " T18:00:37Z", "id" : "d63f99ac17024f089155f09bfb684202" }, "user" : { ... } } Jörn Esdohr | Dortmund, Oktober 2012

32 Beispiel: Anforderung eines Tokens (CLI)
Kommandozeilen-Befehl über das Python Keystone Client API $ keystone token-get --os-username admin --os-password 1234 Ausgabe | Property | Value | | expires | T18:18:40Z | | id | f70fb446d5af15bf23a967fbbb | | tenant_id | c307ba786f4346a4a b5d96f | | user_id | cb2c203c85a642acac7c29cc126b0c5b | Jörn Esdohr | Dortmund, Oktober 2012

33 OpenStack API Ü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 Jörn Esdohr | Dortmund, Oktober 2012

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 "OpenStack Jörn Esdohr | Oktober 2012, Dortmund."

Ähnliche Präsentationen


Google-Anzeigen