4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt?...

36
<< >> Dipl. Ing. (FH) Hauke Goos-Habermann m23 Softwareverteilung Auch für die Cloud C e B I T 2 0 1 4

Transcript of 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt?...

Page 1: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Dipl. Ing. (FH) Hauke Goos-Habermann

m23 SoftwareverteilungAuch für die Cloud

CeB

IT 2

014

Page 2: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Was kommt jetzt?Was kommt jetzt?Was kommt jetzt?Was kommt jetzt?

● m23-Softwareverteilung● Schritte in die “Cloud”● Cloud-Desktop-Kundenprojekt● Apache CloudStack®● Installation eines Cloud-Desktops aus Sicht

– des Administrators– des Entwicklers (mit Quelltext)

● Live Demo / Fragen

Page 3: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Zu Beginn eine EntwarnungZu Beginn eine EntwarnungZu Beginn eine EntwarnungZu Beginn eine Entwarnung

Ich bin● kein Verkäufer,● kein Marketingexperte und● kein Vertriebler,

der unbedingt ein “Cloud”-Produkt verkaufen will.

Page 4: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Daher werde ich

“Cloud” nicht über den grünen Klee loben, sondern das Thema aus meiner Sicht als Entwickler schildern, der seit ca. 14 Jahren Softwareverteilung (m23) betreibt.

Page 5: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Was ist m23?Was ist m23?Was ist m23?Was ist m23?

Softwareverteilung +

Clientmanagement +

einige Extras

für Linux,

auf realer und

virtueller Hardware

=

Original Tux-Logo: (C) Larry Ewing (GPLv2/3)

Page 6: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Client-DistributionenClient-DistributionenClient-DistributionenClient-Distributionen

m23 unterstützt derzeit:

Page 7: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Was kann m23?Was kann m23?Was kann m23?Was kann m23?

● “Bare metal”-Linux-Installation ● Freie Partitionierung und Formatierung

● Integration von bestehenden (Debian-basierten) Systemen

● (De)Installation und Aktualisierung von Software● Paketquellen verwalten● Pakete/Skripte erstellen

● Gruppenfunktionen + Masseninstallation + Paketzusammenstellungen

● Client-/Server-Backup

● Virtualisierung auf den m23-Clients und m23-Server

● Client-Wiederherstellung (inklusive Notfallsystem)

● Entwicklerwerkzeuge (MDK)

auch mit unter-schiedlicher HW

Page 8: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Der m23-ServerDer m23-ServerDer m23-ServerDer m23-Server

Linux (Debian)

Apache MySQL Sonstiges

PHP

Skripte GUI

Page 9: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

““Klassische” m23-UmgebungKlassische” m23-Umgebung““Klassische” m23-UmgebungKlassische” m23-Umgebung

● Von jedem Webbrowser aus bedienbar

AdministrationAdministrationm23-Clientsm23-Clients

m23-Serverm23-Server● Verwaltung der

Clients● Clientauthentifi-

zierung (LDAP) + Benutzerspeicher

● Paketquelle und -cache

Page 10: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

m23 kann “virtuell”m23 kann “virtuell”m23 kann “virtuell”m23 kann “virtuell”

Schritte in die “Cloud”

Page 11: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

2001 - 20072001 - 20072001 - 20072001 - 2007

m23-Server 2001:Cyrix P166+, 48 MB Ram, 2,1 GB HDD

m23-Client 2004:AMD Duron 900 MHz, 256MB Ram, 20 GB HDD

m23-Client/Server 2005:VirtualBox

m23-Client/Server 2007:KVM

Page 12: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

2012201220122012

m23-Server 2012:VirtualBox auf 4x IntelXeon 3,1 GHz, 4 GB Ram(virtuell), 50 GB HDD(virtuell)

Page 13: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

2012201220122012

m23-Server 2012:Low Energy Server: IntelAtom 1,1 GHz, 1 GB Ram,40 GB SSD

Page 14: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

2013201320132013

m23-Server 2013:Raspberry Pi B:ARM1176JZF-S, 700 MHz,512 MB Ram, 8 GB SD

Page 15: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

2013201320132013

m23-Server 2013,

m23-Client 2013:Apache CloudStack®*cloudstack.apache.org

* CloudStack ist ein eingetragenes Warenzeichen der Apache Software Foundation.

Page 16: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Meine ZusammenfassungMeine ZusammenfassungMeine ZusammenfassungMeine Zusammenfassung

● Viele verschiedene m23-Systeme von “klein” bis “groß”

● Real oder virtuell– Echte Rechner (zu lokalisieren)– Virtuelle Maschinen (irgendwie noch zu

finden)– Cloud (irgendwo)

Page 17: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Zusammenfassung Teil 2Zusammenfassung Teil 2Zusammenfassung Teil 2Zusammenfassung Teil 2

● Letztendlich hat sich gar nicht so viel geändert

● Zu lösende Aufgabe für m23 weiterhin:

“Installation und Administration von Rechnern über Netzwerke”

Page 18: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Warum macht m23 Cloud?Warum macht m23 Cloud?Warum macht m23 Cloud?Warum macht m23 Cloud?

Kundenprojekt

● Virtuelle (CloudStack vorhanden) Linux-Desktop-Umgebungen

– Entfernter grafischer Zugriff– Leicht aufzusetzen (Paketzusam-

menstellung, etc.)

● m23-Server in CloudStack

Page 19: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Desktop-UmsetzungDesktop-UmsetzungDesktop-UmsetzungDesktop-Umsetzung

● Linux-Distribution: Linux Mint 13● Desktop-Umgebung: Mate● Entfernter Zugriff: x2go

– x2go-Clients: Ubuntu / Debian, Fedora, RHEL, FreeBSD, Raspbian, Windows, MacOS X

– Bandbreitenschonend

CC BY 3.0 Clement Lefebvre

Page 20: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

CloudStack-UmgebungCloudStack-UmgebungCloudStack-UmgebungCloudStack-Umgebung

AdministrationAdministration

m23-Serverm23-Server m23-Clientm23-Client

BenutzerBenutzer

Internet

x2gohttps

Installations-Pakete

● Webbrowser● Mail● ...

CloudStackCloudStack

Page 21: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

CloudStackCloudStackCloudStackCloudStack

● Verwaltungsplattform zum Betrieb von virtuellen Maschinen

– Oberfläche– API

● Bindet andere Software ein z.B.– KVM– VMware– XenServer

Page 22: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

CloudStack-EigenschaftenCloudStack-EigenschaftenCloudStack-EigenschaftenCloudStack-Eigenschaften

● Zonen (Rechenzentren)● Service offering: vCPU und vRAM● Disk offering: Virtuelle Festplatte ● Virtuelles Netzwerk mit Router, DHCP-

Server, Firewall und Port-Weiterleitung● HTTP-”Datenspeicher”● Installation via ISO oder Template

Page 23: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

CS-VM in m23 anlegenCS-VM in m23 anlegenCS-VM in m23 anlegenCS-VM in m23 anlegen

● Zone auswählen

● Namen der VM festlegen

● Anlegen

Page 24: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Client-EigenschaftenClient-EigenschaftenClient-EigenschaftenClient-Eigenschaften

● Grundlegenden Informationen (Benutzer, Paßwort, etc. *) für den virtuellen Client angeben

● Danach: Booten des Clients

* Bei echter HWauch IP, MAC, etc.

Page 25: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

CloudStack-APICloudStack-APICloudStack-APICloudStack-API

● REST-API– Kommandos und Ergebnisse:

VM anlegen oder starten, Firewall konfigurieren, Status abfragen, ...

● cloudstack-php-client– Original von Quentin Pleplé

– Fork: Hinzufügen von https

– Fork: PECL HttpRequest durch PHP-curl ersetzen

– Alles unter:github.com/m23project/cloudstack-php-client

Page 26: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

cloudstack-php-clientcloudstack-php-clientcloudstack-php-clientcloudstack-php-client

Beispiel

Alle CloudStack-Instanzen auflisten

Page 27: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Das NetzwerkDas NetzwerkDas NetzwerkDas Netzwerk

● Firewall– Außen nach innen: Ports auf der

öffentlichen IP freischalten– Innen nach außen: Ports für das virtuelle

Netzwerk freischalten

● Port-Weiterleitung– Port einer öffentlichen IP auf eine VM

weiterleiten (z.B. 22 für SSH / x2go)

Page 28: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

BootenBootenBootenBooten

● Template-ID– ISO hochladen und registrieren

● ISO in VM einlegen● VM starten● Netzwerkeinstellungen holen (DHCP)● Überprüfen, ob in CloudStack gestartet

– http://<DHCP>/latest/availability-zone

● m23-Server ermitteln– http://<DHCP>/latest/user-data

Page 29: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Client-Server-KommunikationClient-Server-KommunikationClient-Server-KommunikationClient-Server-Kommunikation

m23-Clientm23-Client m23-Serverm23-Server

Nächsten Job anfragen

“Skript fertig”-Status senden

Sendet Ergebnisse

Führt Skript aus

Job beim Server anfragenErstellt Skript + Sendet

Speichert Informationen in DB

1. Job:Hardwareerkennung, dann auf neue Jobs warten

Page 30: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

SkriptgenerierungSkriptgenerierungSkriptgenerierungSkriptgenerierung

m23-Serverm23-Server m23-Clientm23-Client

PHP-Skript BASH-Skriptgeneriert

Page 31: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Client einrichtenClient einrichtenClient einrichtenClient einrichten

● Partitionierung und Formatierung

● Auswahl von Distribution,Linux-Kernel und Benutzeroberfläche (KDE, Gnome, Xfce, LXDE, Trinity, Cinnamon, Unity (2D/3D), ohne)

● Optional: Mitinstallationvon zuvor angelegten Paketzusammen-stellungen

Page 32: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Weitere AdministrationWeitere AdministrationWeitere AdministrationWeitere Administration

● (De)Installation weiterer Pakete

● Aktualisierung

● Backups

● ...

Page 33: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Was sehen die Nutzer?Was sehen die Nutzer?Was sehen die Nutzer?Was sehen die Nutzer?

Page 34: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Community + DienstleistungenCommunity + DienstleistungenCommunity + DienstleistungenCommunity + Dienstleistungen

DienstleistungenDienstleistungengoos-habermann.de

● m23-Schulungen● m23-Beratungen● Entwicklung● Partnerprogramm● Support mit Fern- administration

CommunityCommunitym23.sf.net

● Forum● Downloads● Mailinglisten● Neuigkeiten● Entwicklerblog● Dokumentation● Videos

Page 35: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Ist “Cloud” eine gute Idee?Ist “Cloud” eine gute Idee?Ist “Cloud” eine gute Idee?Ist “Cloud” eine gute Idee?

Unkritisch, solange KEINE● geschäftskritischen Daten● Daten, die irgendeiner Geheimhaltung

unterliegen● wichtigen Daten● persönlichen Daten

in der Cloud verarbeitet werden.

Page 36: 4 1 0 2 T I m23 Softwareverteilung Auch für die Cloud C fileWas kommt jetzt?Was kommt jetzt? m23-Softwareverteilung Schritte in die “Cloud” Cloud-Desktop-Kundenprojekt Apache

<< >>

Vielen Dank!Vielen Dank!Vielen Dank!Vielen Dank!

Fragen?

Live Demo

m23 im Internet:

http://m23.goos-habermann.de