Archive for the tag 'Cloud Computing'

ICC: Datentransfer als Engpass

Jan Oktober 16th, 2009

Ein weiterer Angriffspunkt für Cloud-Bedenkenträger ist der Datentransfer. Der Transfer großer Datenmengen kann in der Tat ein unangenehmer Engpass sein. Wer das mal ausprobieren möchte, kann ja mal seine Ethernetverbindung auf 10MBit drosseln und dann 10GB Daten verschieben. Auf einmal entwickelt man unglaubliches Verständnis für die Entwickler von Kompressionsalgorithmen, und für die von 10GBIT Ethernet.
Doch der Datentransfer kann sich in mehreren Dimensionen zum Engpass entwickeln: Neben dem offensichtlichen zeitlichen Engpass, mehrere 100 Gigabyte über eine DSL-Leitung in die Cloud zu verschieben, gibt es da noch monetäre Restriktionen, die den Datentransfer verhältnismäßig teuer machen.

Eine kurze Übersicht über die Einflussfaktoren:

  • Grundpreis pro übertragenes Bit: Volumen kostet, üblicherweise wird pro Bit (oder ganzzahlige Vielfache davon) ein gewisses Entgeld fällig.
  • Grundpreis pro gespeichertes Bit: Pro abgelegtes Bit (teileweise auch pro Bit und Speicherdauer) wird ein weiteres Entgeld fällig.
  • Put/Get-Befehle werden separat berechnet: Amazon beispielsweise möchte nicht nur pro bewegtem Bit bezahlt werden, es gibt auch eine Art Pauschale pro abgestztem Put oder Get. Nun stelle man sich vor, wie der Kostenzähler rotiert, wenn man viele kleine Dateien schreibt, und aus irgendwelchen Gründen jede Datei mit einem einzelnen Put geschrieben wird. Teilweise wird auch ein Entgeld fällig, wenn aus der Cloud auf die Daten zugegriffen wird.
  • Backup on demand: Manche Cloudanbieter für Storage fangen an, Backupdienste anzubieten – natürlich gegen gesonderte Berechnung.

Was soll man also tun? Es kommt auf die Preisgestaltung an: Daten, die ständig im Zugriff sind, die sehr groß sind oder die sich ständig verändern, sind denkbar schlecht in der Cloud aufgehoben. Selten veränderliche Daten, die nur kurz aufbewahrt werden müssen und auf die nur selten zugegriffen werden, bieten sich für die Cloud an.

Im Blog von Ralf Zenses gibt’s eine schöne Darstellung des Zusammenhangs – willkommen im Pareto-Space!

ICC: Das Problem mit dem schlechten Ruf

Jan Juli 4th, 2009

Douglas Adams hat in seiner Triologie in fünf Bänden “Per Anhalter durch die Galaxis” einen Vorschlag für ein revolutionäres Antriebssystem: Man verwendet “schlechte Nachrichten”. Die Vorteile liegen auf der Hand: Praktisch in beliebiger Menge verfügbar, bewegen sich mit (mindestens) Lichtgeschwindigkeit vorwärts, und kein Umweltschützer ist böse, wenn man sie verheizt. Allerdings hatte das Antriebskonzept auch einen entscheidenden Nachteil: Die Nutzer des Antriebs waren überall unbeliebt, weil der Antrieb auf die Nutzer abgefärbt hat – der Ruf der Nutzer war dank der vielen schlechten Nachrichten ruiniert.(Außerdem weiss man nie, wo Gerüchte und schlechte Nachrichten überall ankommen, was die navigation erschwert.)

“Schlechter Ruf” manifestiert sich im Internet beispielsweise in Form von Blacklists (zum Blocken von Spam, zum Blocken von pornografischen oder anderen unliebsamen Inhalten etc.). Dabei werden, je nach Backlist, einzelne Hosts auf die Liste gesetzt, oder auch ganze Subnetze. Verbreitet sind auch Scoring-Verfahren. Spammt der Rechner selbst, bekommt er eine hohe Score, spammt ein Rechner im gleichen Subnet, bekommen alle Rechner im Subnet eine niedrigere Score etc. Somit erreicht man recht gut große Teile von Botnetzen, wenn diese beispielsweise aus Rechnern im gleichen Subnet einer Firma bestehen, die sich alle gegenseitig infiziert haben.

Ist man erst einmal auf einer solchen Liste vereten, kann man schnell auf andere Listen wandern, und der Ruf ist ruiniert. Das System der Blacklist ist bewährt, und wird gerne genutzt.

Der Effekt kann beim Cloud Computing auch eintreten – im englischen spricht man von “reputation fate sharing”. Man stelle sich folgende Situationen vor:

  • Man setzt einen neuen Mail-Server in der Cloud auf. Aufgrund des extrem hohen Reuse-Faktor erhält dieser Rechner eine öffentliche IP, die kurze Zeit vorher noch einem der größten Spam-Bots aller Zeiten gehört hat. Viel Vergnügen.
  • Einer der Cloud-Rechner wird zum Versenden von größeren Mengen Spam missbraucht. Das System Blacklist schlägt zu und setzt diesen Rechner auf die Liste, und dank eines bewährten Scoring-Verfahrens bekommen die übrigen Rechner im Subnet auch einen Malus. Somit wurde der schlechte Ruf, den eigentlich nur einer der Rechner erhalten sollte, auf alle andern verteilt.

Das Verfahren, das sich bei Subnetzen, die den gleichen Betreiber haben, bewährt hat, wird so zum unkalkulierbaren Risiko für alle Cloud-Kunden.

Lösungen gibt es für dieses Problem nur wenige: Zum einen könnte man das Blacklist-Verfahren modifizieren, um Cloud-Rechner auszunehmen. Allerdings würde dies einen extremen Anstieg des Spams nach sich ziehen. Zum anderen könnte man natürlich endlich Verfahren zur Spamvermeidung auf den Weg bringen, sodass Blacklists überflüssig würden. Zertifikate für SMTP und Greylists wären ein möglicher Anfang.

ICC: Lizenzmodell für Software

Jan Juni 20th, 2009

Nachdem es mittlerweile klar ist, dass viele Infrastructure as a Service als das Synonym für das “eigentliche” Cloud Computing ansehen (und dabei die interessanten Varianten SaaS und PaaS ignorieren), muss man sich mit einigen Besonderheiten dieses Modells vertraut machen.

Zunächst vereinfacht ausgedrückt: Man hat einen virtuellen Rechner mit bestimmten zugesicherten Eigentschaften. Man hat nicht die geringste Ahnung, was für einen CPU-Typ man unter der Virtualisierungsschicht findet, ja man weiss nicht mal, was für eine Virtualisierungsschicht da als Basis für die eigene Maschine dient. Je nach “Verbrauch” wird abgerechnet, fertig.

Gut, auf solch einer virtuellen Kiste setzt man seien Webshop auf und stellt sich dann die Frage:

“Wie viele Oracle-10g-Enterprise-Edition- oder Standard-Edition-Lizenzen braucht diese Maschine (1) und ist das ganze supportet(2)?”

Zu Frage 1: Keine Ahnung. Fragen Sie Ihren Oracle-Software-Vertriebsbeauftragten. Dessen normales Berechnungsmodell mit CPUs, Sockeln und Cores samt zugehörigen Core-Faktoren läuft ins Leere.  Wenn er keine Lösung findet, können sie den virtuellen Rechner nicht mit einer Lizenz ausstatten.

Zu Frage 2: Aller Wahrscheinlichkeit ist das Ganze unsupported: Oracle lässt nur seine eigene OracleVM sowie Solaris Container als Virtualisierungstechnologie zu. Bei anderen Virtualisierungslösungen gibt’s keinen Support oder man behält sich das Recht vor, dass der Fehler auf nicht-virtualisierter Hardware reproduziert werden muss.

Vor solchen Problemen steht man nicht nur, wenn man die Datenbank von Oracle nutzen möchte. Auf Software wie Mathematik-Programme oder manche Betriebssysteme werden pro CPU oder pro Core lizenziert. Was soll man mit solcher Software in der Cloud machen? Vorsichtshalber für eine 8-Prozessoren-Quadcore-Maschine wie die M4600M2 eine Lizenz erwerben, und hoffen dass der Cloud-Anbieter nicht irgendwo eine 16-CPU-x86-Maschine auftreibt? Oder doch auf eigener Hardware rechnen?

Oder andere Software verwenden, die Cloud-tauglich ist? Aus rechtlicher Perspektive mag dies eine Option sein, doch aus applikatorischer nicht immer.

Zusammenfassend wird es letztlich drei Alternativen geben:

1. Die Softwarehersteller bewegen sich – eine durchaus wahrscheinliche Alternative: Mit speziellen Lizenzangeboten für Cloud Computing, eventuell mit Freigaben für bestimmte IaaS-Produkte, werden sich die Hersteller diesen Markt erschließen können. Vor allem bieten sich dann neue Lizenzmodelle, die sich an den verbrauchsabhängigen Modellen der IaaS-Anbieter orientieren. Eine Datenbank könnte pro Transaktion oder pro verwaltetem Gigabyte berechnet werden, Betriebssysteme nach produktiver Uptime.

2. Die IaaS-Anbieter bewegen sich: Mit zugesicherten maximal zu verfügungstehenden CPUs und Cores, unter zu Hilfenahme von supporteter Virtualisierungstechnologie. Man macht somit die Cloud ein wenig unelastischer, doch lässt man so auch “alte” Lizenzmodelle zu.

3. IaaS bleibt solchen Anwendungen verschlossen, man bezieht sie als SaaS: Warum selbst die Datenbank betreiben, wenn man sie als Service zukaufen kann? Sofern der Preis in Orndung ist und die Bandbreite ausreicht, wäre auch dieser Schritt denkbar.

Somit bleibt der Markt für Softwarelizenzen im Cloud Computing interessant. Neue Lizenzmodelle werden Software Cloud-tauglich machen und SaaS wird heute noch lokale Software auslagern. Kurzfristig könnte auch die zweite Alternative zum Tragen kommen, langfristig werden Kopplungen an Kerne oder CPUs verschwinden, auch weil Anwender irgendwann gar nicht mehr wahrnehmen können, auf welcher Sorte CPU sie gerade unterwegs sind.

Ideen zu Cloud Computing: Wieso jetzt das?

Jan April 9th, 2009

Hallo Ralf,

mit Deinem konsequenten Bombardement zum Thema Cloud Computing hast Du etwas erreicht. Ich mache mir Gedanken darüber – und das ist meistens gefährlich. Entweder für mich oder für das Ding, über das ich nachdenke.

So, jetzt wieder für alle:

Ralf Zenses schreibt seine Gedanken zu Cloud Computing in seinem Blog IFR in the Clouds nieder. In den letzten Wochen haben wir mehrfach über das Thema diskutiert, und haben einige gemeinsame Punkte entwickelt. Meine Ideen zum Cloud Computing werde ich hier auch niederschreiben – das Thema ist einfach zu verführerisch.

Allerdings widme ich nicht gleich das ganze Blog um – das wird nur eine weitere Unterkategorie: ICC. Ideen zu Cloud Computing. Oder “Ideas about Cloud Computing”. Ich hoffe, diese Serie wird mehr Inhalt bekommen als “Schöner Flughafen”.

Warum ich diese Serie aufsetzte: Ich hielt, wie so viele andere auch Cloud Computing zunächst für alten Wein in neuen Schläuchen.  Cloud Computing ist auf den ersten Blick nur ein weiteres Hype-Thema, das unter Umständen demnächst wieder in der Versenkung verschwindet. Die Ideen dahinter beschäftigen mich schon länger, vor allem als eine Teilmenge der Ideen noch unter dem Namen Grid Computing bekannt waren.

Mittlerweile teile ich diese Meinung nicht mehr, unter anderem wegen den langen Diskussionen mit Ralf. Cloud Computing ist technisch zwar nichts neues, wohl aber von den Prozessen und betriebswirtschaftlichen Ideen dahinter. Mit Software Product Lines oder standardisierten Betriebsabläufen gibt es schon länger Bestrebungen, den Betrieb von IT-Landschaften in standardisierte Bahnen zu lenken. Ziel dabei ist eigentlich immer, die Kosten zu senken – IT ist teuer.

Cloud Computing stellt nun einen neuen, extremen Standard dar, IT-Kosten durch Standardisierung in den Griff zu bekommen, und gleichzeitig neue Konzepte im Betrieb und in der Verrechnung von IT-Leistung zu etablieren. Natürlich schafft das Ideen, wie Cloud Computing zu verstehen ist.

Dir, Ralf,  und meinen anderen Lesern: Viel Vergnügen mit meinen Ideen zu Cloud Computing.

  • Links