Tag: Amazon


Amazon Web Services: König der Cloud?

Liegen die restlichen Cloud Anbieter den Amazon Web Services zu Füßen? Es scheint fast so. Zumindest setzt Amazon unbeeindruckt von den Grabenkämpfen zwischen den Open Source Clouds OpenStack und CloudStack seine Entwicklung fort und veröffentlicht fleißig immer weiter neue Cloud Services.

OpenStack vs. CloudStack - Amazon der lachende Dritte

Die Kuriosität der Auseinandersetzung zwischen OpenStack und CloudStack besteht insbesondere darin, dass ca. 95% aller IaaS Anbieter von dem Kampf um die Herrschaft um die Open Source Cloud direkt oder indirekt betroffen sind. Nur die Amazon Web Services nicht. Im Gegenteil, das Unternehmen aus Seattle profitiert sogar noch davon, indem es auf Grund seiner APIs EC2 und S3 immer wieder im Gespräch ist.

Und genau um diese APIs geht es im Kern. So gut wie jeder IaaS Anbieter wirbt mit der Kompatibilität zur Amazon Elastic Compute Cloud (Amazon EC2) und Amazon Simple Storage Service (Amazon S3). EC2 erlaubt das Starten und Verwalten von virtuellen Maschinen in der Amazon Cloud. S3 ist für das Speichern und Verwalten von Daten ebenfalls in der Amazon Cloud zuständig.

So ermöglicht es bspw. Terremark seinen Kunden die Daten aus der Private Cloud ggf. per Cloud Bursting in die Amazon Cloud auszulagern. Ein Blick auf mobile Apps für Android oder iOS zeigt eine Vielzahl von Anwendungen, mit denen die Amazon Cloud gesteuert werden kann oder die mit der Unterstützung der AWS APIs werben. Ubuntu springt ebenfalls auf den Zug auf und wird ab der Version 12.04 Funktionen bieten, um OpenStack Installationen mit den Amazon Web Services zu verbinden.

Ein Grund von Citrix, sich aus dem OpenStack Projekt zurückzuziehen, war die angeblich schlechte Unterstützung der Amazon APIs. Was unverständlich ist, da OpenStack von Beginn mit der Kompatibilität von EC2 und S3 wirbt.

Als ein weiterer Gewinner, im Schatten der Schlacht zwischen OpenStack und CloudStack, wird sich Eucalyptus herauskristallisieren. Die Kooperation der Open Source IaaS Software mit Amazon hat sowohl für Eucalyptus als auch Amazon nur Vorteile. Eucalyptus erhält Unterstützung direkt von der Quelle und kann besser als die anderen Open Source Clouds eine perfekte Integration zur Amazon Cloud bieten. Amazon hingegen kann das Hybrid Cloud Geschäft weiter ausbauen und ist somit bereits mit einem Bein in dem hart umkämpften Unternehmensmarkt. Zudem wird durch diese Kooperation eine erste Brücke zwischen den Private Cloud Installation auf Basis von Eucalyptus und der Public Cloud von Amazon geschaffen, um damit insbesondere das Big Data Geschäft auszubauen.

Ich möchte Amazon hiermit keinen Freifahrtsschein für den Thron in der Cloud ausstellen. Dennoch können einzig die wirklich Großen der Branche wie HP, IBM, T-Systems und Microsoft es sich erlauben nicht auf den Zug aufzuspringen und Kompatibilität zu den Amazon APIs bieten. Wobei auch HP bereits OpenStack für sich entdeckt hat.


Bildquelle: http://gigaom2.wordpress.com



ELPaaS portiert Cobol Applikationen auf Amazon, Rackspace und weitere Clouds

Mit der neuen Entwickler Plattform ELPaaS will das Cloud Computing Startup Heirloom Computing es Unternehmen ermöglichen, ihre nativen Cobol Anwendungen in die Cloud zu portieren. Dazu wird die Cobol Applikation in Java kompiliert. Neben den Amazon Web Services und Rackspace werden viele weitere Cloud Plattformen unterstützt.

ELPaaS portiert Cobol Applikationen auf Amazon, Rackspace und weitere Clouds

ELPaaS beinhaltet Heirlooms Software Elastic Cobol IDE. Das System kompiliert Cobol Anwendungen sowie Applikationen die für IBM CICS geschrieben wurden, in Java Quellcode. ELPaas liefert zudem eine Laufzeitumgebung für die Anwendungen, wodurch diese auf einer Vielzahl von Cloud Plattformen wie Cloud Foundry, Red Hat OpenShift und CloudBees ausgeführt werden können. Voraussetzung ist die Plattform seitige Unterstützung von Java. Heirloom selbst setzt auf die Amazon Web Services.

Die kostenlose Variante von ELPaaS richtet sich an einzelne Entwickler und bietet einen eingeschränkten Support, eine kleine Auswahl an Tools und kein Service Level Agreement. Die Standard Edition bietet mehr Tools, ein SLA sowie eine bessere I/O Performance und Support für CICS Anwendungen.

Nach eigenen Angaben hat ELPaaS bereits an die 400 Nutzer.



Microsoft integriert Bing in den Windows Azure Marketplace

Die Antwort hat nicht lange auf sich warten lassen. Nachdem Amazon gestern Amazon CloudSearch - einen Search Engine Cloud Service zur Integration in eigene Anwendungen, vorgestellt hat, erweitert nun auch Microsoft sein Windows Azure Portfolio um die Bing API. Das kündigte das Unternehmen aus Redmond ebenfalls gestern auf dem Bing Developer blog an.

Microsoft integriert Bing in den Windows Azure Marketplace

Microsoft wird dazu die API der Bing Suchmaschine auf den Windows Azure Marketplace portieren und Entwicklern damit die Möglichkeit geben, ebenfalls eine Suchfunktion innerhalb ihrer auf Azure gehosteten Anwendungen zu integrieren.

Mit dem Windows Azure Marketplace stellt Microsoft Drittanbietern ein zentrales Portal zur Verfügung, auf dem diese ihre Daten, Anwendungen und Services kostenlos oder kostenpflichtig bereitstellen können.

Die Portierung der Bing API soll nach Informationen von Microsoft in den nächsten Wochen beginnen und ein paar Monate benötigen, bis sie vollständig abgeschlossen ist. Die Nutzung der API ist zudem nicht kostenlos und wird monatlich abgerechnet. Die Preise liegen monatlich bei ca. 40 US-Dollar für bis zu 20.000 Anfragen pro Monat. Während der Portierungsphase kann die API jedoch vorerst kostenlos genutzt werden.



Amazon S3 speichert 905 Milliarden Objekte – Die Billion steht kurz bevor

Wie groß ist der Cloud Storage Service - Amazon S3 - der Amazon Web Services tatsächlich? Diese Frage hat Jeff Barr kürzlich in einem Beitrag auf dem Unternehmensblog beantwortet. Die Zahlen sind riesig!

Amazon S3 speichert 905 Milliarden Objekte

Zum Ende des ersten Quartals 2012 zählt das Unternehmen 905 Milliarden gespeicherte Objekte im Amazon S3 Cloud Storage. Hinzu kommen 650,000 Anfragen pro Sekunde, die je nach Auslastung jedoch stark ansteigen. Zudem werden nach Angaben von Amazon anhand der S3 APIs, AWS Import/Export, dem AWS Storage Gateway und weiteren Backup Tools über 1 Milliarde Objekte pro Tag hinzugefügt.

Die obere Graphik zeigt den immensen Wachstum von Amazon S3. Im vierten Quartal 2006 waren es 2,9 Milliarden Objekte. Im Jahr 2008 40 Milliarden und 2010 bereits 262 Milliarden Objekte. Im vierten Quartal 2011 762 Milliarden und mit dem letzten Stand 905 Milliarden Objekte. Nimmt man Amazons Aussage - das über 1 Milliarde Objekte pro Tag hinzukommen, sollte die Billion in kürzester Zeit erreicht sein.



Amazon erweitert CloudFront mit Live-Streaming Funktion für iOS und Silverlight

Amazon hat seinen Content Delivery Network (CDN) Services um Live-Streaming Funktionen für Apples iOS und Microsofts Silverlight erweitert. Das wurde gestern im offiziellen Unternehmensblog angekündigt.

Mit Amazon CloudFront können Inhalte wie Bilder, Videos andere Mediadaten und Software so verteilt werden, dass auf sie schnell und performant zugegriffen werden kann. Dazu nutzt CloudFront, typisch für ein CDN, unterschiedliche Edge Locations in Asien, Europa, Südamerika und den USA, um die Inhalte möglichst nah an den Nutzer auszuliefern und damit die Zugriffszeit zu verkürzen.

Mit der neuen Funktion "Live Smooth Streaming for Amazon CloudFront" können Inhalte nun zusätzlich live auf Microsoft Silverlight Clients und Apple iOS Endgeräte wie iPhone, iPod Touch oder iPad streamen. Dazu werden Microsofts Live Smooth Streaming und Apples HTTP Live Streaming (HLS) Formate genutzt.

Amazon erweitert CloudFront mit Live-Streaming Funktion für iOS und Silverlight

Live Smooth Streaming Inhalte werden fragmentiert an die Clients übertragen, so dass die CloudFront Edge Server die Daten zwischenspeichern (cachen) können.

Die Clients selbst haben die Möglichkeit den aktuellen Netzwerk- und lokalen Systems-Status dynamisch zu überwachen. Sollte sich z.B. die Netzwerkleistung verschlechtern, kann der Client umgehend kommunizieren, dass das nächste Fragment mit einer niedrigeren Bitrate gesendet werden soll, um sich damit an die ändernden Bedingungen anzupassen. Laut Amazon sollen damit das Stottern, Puffern und Einfrieren des Streamings verhindert werden.

Der Stream kann über eine Amazon EC2 Instanz mit Windows IIS Media Services bereitgestellt werden. Wird der Live Stream von einem Client angefragt, lädt CloudFront den Inhalt automatisch von der EC2 Instanz, cached ihn in der Edge Location zwischen und liefert ihn an den Client aus. Um Inhalte mit Apples HLS Format zu streamen, wird auf der Amazon EC2 Instanz ein Adobe Flash Media Server 4.5 benötigt. Laut Amazon handelt es sich bei beiden Formaten aber um dieselbe Grundkonfiguration. Um die Nutzung von "Live Smooth Streaming for Amazon CloudFront" zu vereinfachen, hat Amazon ein CloudFormation Template erstellt, dass die notwendigen Ressourcen für ein Live Event bereitstellt.

Die CloudFront Preise orientieren sich an den regionalen Datentransferkosten für die jeweiligen Amazon Edge Locations, die Anzahl an HTTP-Anfragen und die Anzahl an ungültigen Anfragen. Letzteres wird verwendet, um ein Objekt aus der CloudFront Edge Location vor dem angegebenen Ablaufdatum zu entfernen.

Bspw. kosten in Europa und in den USA die ersten 10TB 0,12 US-Dollar pro Gigabyte und die weiteren 40TB 0,08 US-Dollar pro Gigabyte. Die Menge an verbrauchten Traffic wird dabei monatlich zurückgesetzt.


Bildquelle: http://www.ewdisonthen.com



Woran erkennt man einen (echten) Cloud Service?

Ist es nun Cloud oder nur "vercloudifiziert"? Woran kann ich als Anwender einen echten Cloud Service erkennen? Diese Frage ist nicht immer ganz einfach zu beantworten, da die Kniffe meistens im Detail versteckt sind bzw. sich in der Infrastruktur befinden, in die in der Regel nicht hineingeschaut werden kann. Eines Vorweg, ein Service der über das Internet angeboten wird ist nicht gleich ein Cloud Service!

Einen echten Cloud Service zu erkennen ist nicht immer ganz einfach

Grundsätzlich kann bei der Betrachtung zwischen dem technischen und wirtschaftlichen Bereich unterschieden werden, um einen ersten Eindruck zu erhalten, ob es denn nun ein Cloud Service ist oder nicht. Dazu sollte man sich bspw. ein verifiziertes und echtes Cloud Computing Angebot wie im IaaS Bereich z.B. die Amazon Web Services oder im Bereich SaaS Microsoft Office 365 oder Google Apps vor Augen halten und damit einen Vergleich anstellen.

Wichtige Anzeichen die für einen Cloud Service sprechen sind Flexibilität, Skalierbarkeit und Hochverfügbarkeit. Die Flexibilität spielt insbesondere bei der Abrechnung der Kosten eine wichtige Rolle. Die Skalierbarkeit und Hochverfügbarkeit sind die technischen Themen.

Technik, Technik, Technik

So sollte ein Nutzer z.B. schon ein wenig genauer hinschauen, wenn er plötzlich eine E-Mail erhält, in der ein Wartungsfenster für einen SaaS Dienst angekündigt wird. Auch wenn wir nicht in die Infrastruktur des Anbieters hineinschauen können, Wartungsfenster gehören nicht zum Cloud Computing. Nehmen wir hier die verifizierten Cloud Anbieter Amazon, Google und Microsoft zum Vergleich, gibt es bei allen drei keine Wartungsfenster. Zumindest wurde ich bisher noch nie über so eine Maßnahme informiert. Von anderen Anbietern hingegen schon. Hier sprechen wir nämlich von dem Punkt Hochverfügbarkeit. Wenn die Infrastruktur von Amazon regelmäßig Wartungsfenster benötigen würde, könnten sie ihren Dienst nicht in der Form anbieten.

Skalierbarkeit bedeutet, dass ich entsprechend angeforderte Ressourcen wie Rechenleistung, Speicherplatz aber auch neue Benutzerkonten im Falle von SaaS umgehend erhalte, ohne darauf ein paar Minuten oder gar Stunden warten zu müssen. Hier sind mir bisher keine negativen Beispiele aufgefallen.

Die Kosten im Auge behalten

Wirtschaftlich betrachtet geht Cloud Computing Hand in Hand mit der Flexibilität, die der Anwender durch die Nutzung erhält. Das bedeutet er zahlt nur für die Ressourcen - Rechenleistung, Speicherplatz aber auch wiederum Nutzerkonten - die er tatsächlich in einem bestimmten Zeitraum genutzt bzw. benötigt hat. Hinzu kommt, das für die Nutzung des Angebots keine Einrichtungsgebühr oder gar eine Grundgebühr gezahlt werden muss.

Die Flexibilität zahlt sich zudem dadurch aus, das monatlich abrechnet wird. Eine Abrechnung für ein ganzes Jahr ist schon sehr grenzwertig, da ich den Service evtl. nur für ein halbes Jahr benötige, in diesem Fall dann aber laufende Kosten für ein weiteres halbes Jahr anfallen. Vorsicht, es gibt Anbieter, die monatliche Preise kommunizieren, der Vertrag aber für ein Jahr abgeschlossen wird. Zudem muss hier dann noch separat gekündigt werden.

Vorher informieren oder beraten lassen

Wie zu sehen, gibt es Erkennungsmerkmale für einen (echten) Cloud Service. IaaS Angebote sind die transparentesten Angebote, da anhand der Services und der Nutzung zu sehen ist, wie flexibel, skalierbar und hochverfügbar die Infrastruktur ist. Ebenso sind die Kosten nachvollziehbar. Ähnlich verhält es sich bei PaaS. SaaS Dienste werden leider immer wieder "vercloudifiziert". D.h. dass hier viel bei den Preisen und Laufzeiten getrixt wird. Daher sollte man sich vorab über den Service genau informieren, einen verifizierten Cloud Anbieter (siehe oben) zum Vergleich heranziehen oder vorab eine unabhängige Beratung einholen.


Bildquelle: http://www.planung-analyse.de



Nach der Cloud, wird Amazon auch der Big Data Gigant?

IaaS Cloud Infrastrukturen haben auf Grund ihrer Skalierbarkeit die idealen Voraussetzungen für die Verarbeitungen großer Datenmengen, wodurch Big Data ein idealer Anwendungsfall für Cloud Computing ist. Aber welcher Anbieter wird das Rennen um die Verarbeitung machen?

Big Data ist ein idealer Anwendungsfall für das Cloud Computing

Amazon Web Services

Ein Kandidat ist Amazon. Zum einen hat das Unternehmen auf Grund seines Kerngeschäfts, dem Web-Shop, eine große Expertise bei der Verarbeitung und Analyse großer Datenmengen aufgebaut und diese, betrachtet an der Evolution und dem Funktionsumfang der Webseite, stetig weiterentwickelt. Hinzu kommen aber auch die Amazon Web Services und der darunter liegenden massiv skalierbaren Infrastruktur, die ideal für die Verarbeitung von Big Data ist und die Unternehmen nutzen können, um dort Anwendungen für die Analyse ihrer Daten zu betreiben. Dazu stehen mit Amazon EC2, Amazon S3 und Amazon Elastic MapReduce gut miteinander zu kombinierende Services zur Verfügung. Neben dem Service AWS Import/ Export, mit dem große Datenmengen auf dem Postweg an Amazon geschickt werden können, die von Amazon dann direkt in die Cloud kopiert werden, hat sich Amazon mit der vor kurzem angekündigten Kooperation mit dem Private Cloud Infrastruktur-Software Anbieter Eucalyptus zudem eine gute Ausgangsposition geschaffen, um Unternehmen die Möglichkeit zu geben, über eine Hybrid Cloud Daten aus der Private in die Amazon Cloud übertragen zu lassen.

Google

Google hat ebenfalls viel Erfahrung bei der Verarbeitung großer Datenmengen, was u.a. auf die Indexierung des Internets und die damit verbundene Suche zurückzuführen ist - ebenfalls beides Kerngeschäfte von Google. Hinzu kommt, das Google kürzlich mit Google BigQuery einen neuen Service für Entwickler vorgestellt hat, auf dem Anwendungen entwickelt werden können, um Big Data zu verarbeiten. Dieser befindet sich aktuell aber noch in der geschlossenen Betaphase.

Anders als die Amazon Web Services scheint Google allerdings nicht so konsequent auf das Business getrimmt zu sein. Zudem wirkt Google an vielen Stellen immer noch wie ein großer Spielplatz für die eigenen Entwickler, was natürlich immer wieder gute Innovationen hervorbringt, Google sich aber bereits eingestehen musste, dass einige Services doch einfach mehr Kapital verbrennen als Nutzen ergeben. So wurde die Google App Engine anfangs stark gepushed, hat im Laufe der Zeit aber etwas an Innovation verloren.

Microsoft

Microsofts Kerngeschäft hat im Vergleich zu Amazon oder Google in erster Linie nichts mit der Verarbeitung großer Datenmengen zu tun. Dennoch steht mit Windows Azure ebenfalls eine skalierbare Infrastruktur bereit, auf der Unternehmen Big Data analysieren können.

Im Vergleich zu Google oder Amazon ist Microsoft aber bereits schon dort lange angekommen, wo die beiden erst genannten erst zielstrebig hinwollen, das Business. Microsoft sollte die Herausforderungen und Wünsche, insbesondere bei den renommierten Unternehmen, kennen und gezielt darauf eingehen können.

Erste infrastrukturelle Schritte hat Microsoft bereits mit der Unterstützung von Hadoop auf Azure unternommen und eine Agenda zeigt die weiteren Vorhaben für das Jahr 2012. So wird das Unternehmen mit Hilfe von Hortonworks und einer ODBC Schnittstelle Apache Hadoop an Microsofts Excel anbinden und so Big Data ins Büro bringen. Damit können Business Intelligence (BI) Tools einen direkten Zugang zu einem Hadoop Cluster erhalten und via Excel Pivot-Analysen durchgeführt werden.

Die Anderen

Es existieren eine Vielzahl an Unternehmen, die mit Big Data tagtäglich in ihrem Kerngeschäft konfrontiert werden. Dazu gehören bspw. ebay, Facebook, XING, LinkedIn oder auch Twitter. Allerdings bietet keines dieser genannten Unternehmen einen Public Cloud Service an, mit dem Big Data von Dritten verarbeitet werden könnte. Die Kosten für den Ausbau einer stärker skalierbaren Infrastruktur wären wohl auch zu hoch.

Allerdings sollten auch renommierte Unternehmen wie SAP, IBM oder Oracle im Bereich Big Data nicht aus den Augen gelassen werden. Die Expertise aus dem Kerngeschäft ist zweifelsohne vorhanden.


Bildquelle: https://www.emcforums2011.com, http://www.techweekeurope.es



Mobile, Social Media und Big Data sind die Treiber des Cloud Computing

Zwei voneinander unabhängige Studien von Microsoft und SAP zeigen die besondere Bedeutung des Cloud Computing und das die Bereiche Mobile Computing, Social Media und Big Data die Treiber der Cloud sind.

"Mobile Computing, Social Media und Big Data sind die Treiber des Cloud Computing.

Eine neue Studie im Auftrag von SAP lässt Spekulationen aufkommen, das Cloud Computing, unterstützt durch die Bereiche Mobile Computing, Social Networking und Big Data, in den nächsten Jahren viel mehr Möglichkeiten aufzeigen wird, als es das Internet in seinen frühen Jahren geschafft hat.

Die Studie zeigt, das anhand des Cloud Computing bereits heute eine beträchtliche Zahl von Arbeitsplätzen in den USA geschaffen wurde und basierend auf zahlreichen Trends und Indikatoren, ein enormes Potenzial für neue Geschäfte hat und Hunderttausende neuer Arbeitsplätze schafft.

So zeigt die SAP Studie bspw., dass 11 Cloud Computing Anbieter zusammen 80.000 neue Arbeitsplätze im Jahr 2010 geschaffen haben. Zudem war das Beschäftigungswachstum bei diesen Unternehmen fast fünfmal größer als das des gesamten High-Tech-Sektors. Der Bericht zitiert dazu eine Studie der Bank of America Merrill Lynch Global, in der die Gesamtzahl der Mitarbeiter von 11 Cloud Computing Unternehmen (Amazon, Google, Netflix, OpenTable, Salesforce, Taleo, SuccessFactors, RightNow, Intuit, NetSuite und Concur) im Zeitraum von Januar 2010 bis Januar 2011 berechnet wurde. Die Gesamtzahl der Beschäftigten wuchs innerhalb dieses Jahres um 27%. So wuchs das führende Cloud Unternehmen OpenTable in diesem Zeitraum um mehr als 44%. VMware um 41% und Amazon um 31%.

Unternehmen die Cloud-Services anbieten, werden in den nächsten fünf Jahren voraussichtlich einen Umsatz von durchschnittlich 20 Milliarden Dollar pro Jahr erwirtschaften, wodurch in diesem Zeitraum ca. 472.000 Arbeitsplätze in den USA und weltweit geschaffen werden könnten. Darüber hinaus werden Venture Capital-Investitionen in den Cloud Bereich für die kommenden fünf Jahren auf 30 Milliarden Dollar taxiert, die weitere 213.000 neue Arbeitsplätze allein in den USA schaffen sollen.

Eine weitere Studie von IDC im Auftrag von Microsoft kommt zu dem Ergebnis, dass Cloud Computing in den kommenden drei Jahren weltweit 14 Millionen Arbeitsplätze schaffen wird. Diese werden aber auch in Bereichen außerhalb der IT wie Marketing, Vertrieb, Finanzen, Verwaltung, Entwicklung und Dienstleistungen entstehen. Darüber hinaus werden neue Positionen entstehen wie z.B. der "Virtuelle Ressourcen Administrator" oder der "Kunden-Netzwerk Moderator".

IDC prognostiziert in den nächsten drei Jahren zudem Einnahmen durch Cloud Innovation in Höhe von 1.1 Billion Dollar pro Jahr.

Mobile Computing, Social Networking und Big Data sind die Treiber

Drei Megatrends Treiben den Bereich der Cloud-Services voran und sorgen für das Wachstum im Arbeitsmarkt.

  • Mobile Computing: Der Markt für Smartphones und Tablets wird weiter stark nachgefragt. Dadurch werden die Anfragen an die Back-Ends wie App-Stores, Datenbanken und Speicherplatz der Cloud-Services durch Mobile Anwendungen massiv steigen. Zudem ermöglichen Cloud Services Tablet und Smartphone Nutzer einen besseren Zugriff auf Informationen und anderen Daten.
  • Social Networking: Ohne Cloud Computing Technologien wäre eine so massive Skalierbarkeit und Elastizität nicht möglich um diese Webseiten zu betreiben.
  • Big Data: Cloud Infrastrukturen und Plattformen werden bei der Verarbeitung und Analyse riesiger Datenmengen auf Grund ihrer Skalierbarkeit eine große Rolle spielen.

Bildquelle: http://www.thenewnewinternet.com, http://www.emptylemon.co.uk



Amazon und Eucalyptus kooperieren – Gemeinsame Allianz gegen OpenStack?

Die Amazon Web Services und der Private Cloud Infrastruktur-Software Anbieter Eucalyptus werden in Zukunft enger zusammenarbeiten, um die Migration von Daten zwischen der Amazon Cloud und Private Clouds besser zu unterstützen.

Amazon und Eucalyptus kooperieren - Gemeinsame Allianz gegen OpenStack?

Amazon und Eucalyptus kooperieren.

Dabei wird die Kooperation unterschiedlich aufgebaut sein. Zunächst sollen sich Entwickler aus beiden Unternehmen darauf konzentrieren, Lösungen zu schaffen, die Unternehmenskunden dabei helfen sollen, Daten zwischen bestehenden Rechenzentren und der AWS Cloud zu migrieren. Weiterhin und noch bedeutender ist jedoch, dass die Kunden in der Lage sein sollen, dieselben Management Tools und die eigenen Kenntnisse für beide Plattformen zu nutzen.

Darüber hinaus werden die Amazon Web Services Eucalyptus mit weiteren Informationen versorgen, um die Kompatibilität mit den AWS APIs zu verbessern.


Das sieht ganz nach einer Allianz gegen OpenStack aus! Schaut man sich die jüngsten Ankündigungen bzgl. OpenStack an - siehe unten - wäre das von Amazon als auch Eucalyptus ein kluger Schachzug, zumal sich die Eucalyptus Infrastruktur sehr nah an den Basisfunktionen der Amazon Web Services orientiert.

Zudem kann der von Amazon immer wieder geförderte Ansatz der Hybrid Cloud damit verbessert werden. Was sicherlich auch im Hinblick auf das Thema Big Data und der damit verbundenen Verarbeitung großer Datenmengen in der Amazon Cloud für die Amazon Web Services von großem Nutzen sein wird. Nach dem Motto: "Bigger is Better" bzw. "Data without Limits".


Bildquelle: http://www.search-internetmarketing.com/, http://www.techweekeurope.co.uk



Performance König Amazon? – AWS hängt Azure und Rackspace beim Datentransfer ab!

Sollen Daten aus dem Storage Service der Amazon Cloud zu Mittbewerbern wie Windows Azure und Rackspace übertragen werden, dauert dieser Vorgang 10 mal länger als der Transfer von Azure und Rackspace in die Amazon Cloud, das ergaben Testergebnisse des Speicherhersteller Nasuni.

Performance König Amazon?

Nasuni führte dazu fünf Testreihen durch, bei der in jedem Fall 12TB an Daten zwischen zwei Cloud Services übertragen wurden. Die Ergebnisse zeigen, dass die Datenübertragung von Amazon S3 zu Azure oder Rackspace deutlich mehr Zeit in Anspruch nimmt, als die Übertragung der Daten vom Mittbewerb in die Amazon Cloud. So dauert bspw. der Transfer von 12TB Daten von Amazon zu Azure 40 Stunden, wohingegen dieselbe Datenmenge von Azure zu Amazon nur 4 Stunden benötigt.

Der Transfer von Rackspace in Richtung Amazon benötigte 5 Stunden. Die Übertragung von Amazon zu Rackspace hingegen fast eine Woche. Der Transfer zwischen zwei Amazon Buckets dauerte 4 Stunden. Die Tests beschränkten sich dabei nur auf den Transfer zwischen Public Cloud Anbietern und nicht zwischen dem Rechenzentrum eines Nutzers und einem der genannten Cloud Services bzw. dem Rücktransfer von einem Public Cloud Anbieter in das eigene Rechenzentrum.

Die Testergebnisse variieren zudem von der Tageszeit und der Anzahl der für den Datentransfer eingesetzten Rechner. Dennoch zeigen die Ergebnisse den kleinsten zeitlichen Horizont, den es benötigt, um 12TB zu transferieren.

Im Folgenden sind die Ergebnisse zu finden, die zeigen, wie lange es benötigt 12TB an Daten zwischen den einzelnen Cloud Anbietern zu übertragen.

  • Amazon S3 zu Amazon S3 “Bucket”: 4 Stunden
  • Amazon S3 zu Windows Azure: 40 Stunden
  • Amazon S3 zu Rackspace: Knapp eine Woche
  • Microsoft Windows Azure zu Amazon S3: 4 Stunden
  • Rackspace zu Amazon S3: 5 Stunden

Ergebnisse des Cloud Storage Performance Tests.

Ergebnisse des Cloud Storage Performance Tests.

Nasuni kommt zu dem Ergebnis, dass die Hauptprobleme derzeit bei den Schreibvorgängen, also dem Speichern der Daten, in der Cloud liegen. Alle Datenübertragungen Richtung Amazon S3 betrugen zwischen 4 und 5 Stunden, wohingegen das Schreiben Microsoft Windows Azure und Rackspace erheblich länger dauerte.

Gründe für die langsame Amazon-zu-Azure Migration sieht Nasuni darin begründet, dass die Tests das Daten-Limit von Windows Azure erreicht haben könnten. Woran es genau liegt, darauf hat Nasuni keine Antwort. Es könnte an langsamen eingehenden Netzwerkverbindungen aber auch an einer technologischen Beschränkung liegen.

Aussagen von Microsoft bzgl. der Performance Unterschiede gibt es laut Nasuni bisher nicht. Jedoch bemerkte Nasuni bei Amazon S3 keine Performance Einschränkungen und führt die Leistungen auf die Architektur oder Bandbreite von Azure zurück.

Während der Migration von Amazon zu Rackspace bemerkte Nasuni ebenfalls eine schwache eingehende Datentransferrate und zieht hier Rückschlüsse auf eine schlechte Performance bei anderen OpenStack basierten Clouds, da auch Rackspace den Open Source Cloud Stack einsetzt und das Projekt massiv unterstützt.


Bildquelle: http://wikimedia.org, http://blogspot.com/



Netflix erwartet künftig SSDs als Speichertechnologie für Cloud Infrastrukturen!

Netflix Cloud Architekt Adrian Cockcroft erwartet künftig schnellere I/O Mechanismen in der Cloud. Netflix gehört zu den größten Kunden der Amazon Web Services und Cockcroft wünscht sich zunehmend den Einsatz von SSDs (Solid-State-Drives) als Speichertechnologie für die Amazon Cloud. Ein Problem besteht hier jedoch - für die Amazon Web Services - SSDs lassen sich noch nicht stark genug skalieren.

In einem Interview mit ZDNet UK erläuterte Cockcroft erneut die Bedeutung von schnellen I/O Mechanismen innerhalb der Cloud. "Ich habe bereits vor einiger Zeit nach SSDs in der Cloud gefragt.", so Cockcroft.

Er findet es zwar klasse, dass Amazons Dynamo DB auf SSD basiert, dennoch erwartet er eine noch höhere Skalierbarkeit. Netflix nutzt Cassandra als Speicherarchitektur, um damit das Streaming der Mediadaten zu realisieren. Der Einsatz von SSD würde Netflix dabei noch besser unterstützen.

Die Problematik besteht laut Cockcroft jedoch darin, dass SSDs für Amazon vorab nicht stark genug skalieren, bevor sie damit einen Service anbieten. Daher haben die Amazon Web Services zwar Instanzen für CPU, Speicher und die Netzwerkkapazitäten, aber das I/O ist auf die Leistung der Festplatte beschränkt.


Bildquelle: http://alblue.bandlem.com



Microsoft und Amazon liefern sich Preiskampf in der Cloud

Als Anbieter mit einem großen Public Cloud Portfolio kämpft Microsoft nun nicht mehr nur mit Google, sondern liefert sich seit kurzem auch einen Preiskampf mit den Amazon Web Services. Das gute daran: die Gewinner sind die Nutzer.

Der Kampf verlagert sich in die Cloud

Nachdem Microsoft am Ende der vergangenen Woche seine Preise für Windows Azure Storage und Windows Azure Compute gesenkt hat und damit auf die Preissenkungen der Amazon Web Services, ebenfalls in der vergangenen Woche, reagiert hat, befinden sich die derzeitigen Preise für Speicherplatz und Rechenleistung aus der Cloud auf einem niedrigen Rekordniveau und befinden sich auf dem Stand hiesiger Stromtarife.

Die Frage ist, wie lange das noch so weitergehen kann, denn die Preise können im Prinzip nur weiter fallen. Betrachten wir nämlich die Tatsache, das die Stromtarife auf Erdgaspreisen, saisonalen Einflüssen und weiteren Variablen basieren, kann Cloud Computing noch günstiger werden.

Die Preisgestaltung beider Anbieter ist nicht direkt vergleichbar, da die Preise und Dienstleistungen variieren. Aber die Kernaussage dieses Wettbewerbs ist eindeutig: Die Preise werden weiter sinken.

Beispielweise kostet eine Amazon Small (Standard) On-Demand Instanz mit Linux/Unix 0,090 Dollar (ca. 0,067 EUR) pro Stunde. Eine Windows Instanz 0,115 Dollar (ca. 0,088 EUR) pro Stunde. Ich zahle derzeit ca. 0,244 EUR pro Kilowattstunde an meinen Stromanbieter.

Beide Anbieter argumentieren, dass sie ihre eigenen Einsparungen (Economies of scale) sehr gerne an ihre Kunden weiterreichen und fokussieren Entwickler, Startups, kleine Unternehmen sowie Großkunden.

Nachdem nun aber auch HP und weitere Anbieter in den Cloud Computing Markt für IaaS Ressourcen eingestiegen sind, werden die Preise noch weiter fallen.


Bildquellen: http://www.merkur-online.de, http://diepresse.com



Sinn und Unsinn von Cloud Siegeln, Zertifikaten, Verbänden und Initiativen

Axel von Leitner, Mitbegründer und Geschäftsführer von 42HE, einem Cloud Startup aus Köln hat auf dem Unternehmensblog die Problematik und Situation mit Cloud Computing Siegeln und Verbänden bzw. speziellen Initiativen stark kritisiert.

Dem Grundtenor von Axel muss ich zustimmen. Aber fangen wir von Vorne an. Es existieren mittlerweile einige Verbände und Initiativen, wie wir es auch aus anderen Bereichen kennen. Dazu gehören z.B. Verbände und Vereine wie EuroCloud, SaaS-EcoSystem oder Initiativen wie Cloud Services Made in Germany und Deutsche Wolke.

Cloud Computing ist ein globaler Ansatz und kein deutsches Konzept

Was insbesondere die Initiativen gemeinsam haben ist, dass Sie mit diversen Versprechen versuchen, so viele Anbieter von Cloud Computing Services wie möglich in die eigenen Reihen zu lotsen. Vor allem "Cloud Services Made in Germany" springt auf das vermeintliche Qualitätsmerkmal Made in Germany auf und verspricht dabei "Mehr Rechtssicherheit bei der Auswahl von Cloud-basierten Diensten...".

Cloud Computing aus Deutschland = Qualität?

Die Liste der Unternehmen, die sich an "Cloud Services Made in Germany" beteiligen ist lang. Die Prüfungskriterien äußerst schwach, was die hohe Beteiligung erklären könnte. Für die Aufnahme muss ein Unternehmen folgende Kriterien erfüllen:

  • Das Unternehmen des Cloud Service-Betreibers wurde in Deutschland gegründet und hat dort seinen Hauptsitz.
  • Das Unternehmen schließt mit seinen Cloud Service-Kunden Verträge mit Service Level Agreements (SLA) nach deutschem Recht.
  • Der Gerichtsstand für alle vertraglichen und juristischen Angelegenheiten liegt in Deutschland.
  • Das Unternehmen stellt für Kundenanfragen einen lokal ansässigen, deutschsprachigen Service und Support zur Verfügung.

Quelle: http://www.cloud-services-made-in-germany.de/beteiligung

Die Frage die man sich hier nun stellen sollte ist, wo ist das wirkliche Qualitätskriterium, dass die Initiative prüft? Handelt es dabei sich um ein Qualitätsmerkmal, dass ich meinen Firmensitz in Deutschland habe? Nein! Das ich einen deutschen Support anbiete? Ja, vielleicht! Das ich meine Geschäfte und Verträge nach deutschem Recht abschließe? Recht und Datenschutz als Qualitätmerkmal? Ist das nicht ein bisschen weit hergeholt?

In den Kriterien wird in keinster Weise auf die wirkliche Qualität eines Service eingegangen. Darf sich der Service wirklich Cloud Service nennen? Wie ist das Abrechnungsmodell? Sorgt der Anbieter für eine Cloud Computing konforme Skalierbarkeit und Hochverfügbarkeit? Und viele weitere Fragen, die essentiell wichtig sind, um die Qualität eines Cloud Service zu bewerten!

Die Initiative "Cloud Services Made in Germany" versteckt sich leider einzig und allein hinter den vermeintlich hohen Datenschutzanforderungen in Deutschland, sagt aber nichts über die tatsächliche Qualität eines Cloud Computing Anbieters bzw. dessen Services aus.

Eine Cloud für Deutschland?

Dieser Aufgabe hat sich die Initiative "Deutsche Wolke" gewidmet. Es handelt sich dabei um einen Zusammenschluß deutscher und internationaler Organisationen zum Aufbau einer föderalen Cloud-Infrastruktur für Deutschland. Die Initiative verkauft sich zwar leider ebenfalls unter dem Deckmantel von "Made in Germany", hat aber dennoch einen ganz anderen qualitativ höherwertigen Anspruch als z.B. "Cloud Services Made in Germany".

Denn mit mit einer eigenen Cloud Infrastruktur auf Basis von offenen Standards und Schnittstellen und unter dem Aspekt hoher Verfügbarkeit und strengen Datenschutzrichtlinien werden die derzeit noch überschaubaren Partner von "Deutsche Wolke" anscheinend deutlich besser überprüft.

Dennoch argumentiert auch die "Deutsche Wolke" verstärkt mit den hohen Datenschutzrichtlinien in Deutschland.

Auch die Verbände wollen mir ihren Zertifikaten ein Wort mitreden

Dann gibt es noch die Verbände EuroCloud und SaaS-EcoSystem, die vor allem durch ihre Gütesiegel und Zertifikate auffallen. EuroCloud hat dafür seinen SaaS Star Audit im Angebot. Das SaaS-EcoSystem hingegen hat mit "Cloud-Experte" sein Qualitäts-Zertifikat für Saas & Cloud Computing Berater sowie sein "Trust in Cloud" für Cloud Computing Anbieter.

Die Qualität und der Nutzen solcher Zertifikate und Gütesiegel stehen und fallen natürlich mit den Unternehmen, die mit der Prüfung beauftragt sind sowie den Prüfkriterien. Hinzu kommt ebenfalls ein großer Geldbeutel, um sich zertifizieren zu lassen. Speziell das Zertifikat "Cloud-Experte" des SaaS-EcoSystem ist mit Vorsicht zu genießen. Bisher haben nur zwei Marketingexperten(!) das Zertifikat erhalten, was ich bereits in einem älteren Artikel kritisiert habe.

Aber auch bei dem EuroCloud SaaS Star Audit scheint sich bisher nicht viel getan zu haben. Zumindest gibt es seit dem letzten Artikel keine neuen Services, die einen Star Audit erfolgreich absolviert haben.

Deutschland doch kein Qualitätskriterium für die Cloud?

"Cloud Made in Germany". Wer den vermeintlich höheren Datenschutz als Wettbewerbsvorteil sieht ist auf dem falschen Weg in die Cloud! Denn das ist ein Trugschluss und ein Argument was nicht zutrifft.

Natürlich darf der Patriot Act nicht unterschätzt werden. Insbesondere auf Grund seiner nicht vorhandenen Transparenz, wann welche US-Regierungseinheit Zugriffe auf bestimmte Daten erhält. Jedoch sollte man nicht vergessen, das seit jeher ein deutscher Staatsanwalt in ein Rechenzentrum Zugriff erhalten kann, wenn er einen trifftigen Grund hat. Sei es nun beim Cloud Computing oder Outsourcing. Auch wenn hier zunächst ein richterlicher Beschluss vorliegen muss.

Zudem haben auch unsere deutschen Politiker daran Interesse unkompliziert Zugriff auf diverse Daten zu erhalten. Diese Diskussionen werden ebenfalls schon seit Jahren geführt. Ich bin kein Jurist und schon gar kein Politiker und kann dazu nicht viel sagen. Allerdings halte ich es für falsch, sich nur auf den Datenschutz auszuruhen. Made in Germany steht für Qualität das ist richtig, aber nicht zwingend im Bereich der Informationstechnologie und schon gar nicht im Bereich Cloud Computing - es gibt natürlich ein paar Ausnahmen. Es ist schade, dass so schreiben zu müssen, aber die Realität ist, das uns andere Länder, insbesondere die USA Jahre voraus sind. Diese schießen erst und entschuldigen sich später, wohingegen die Deutschen über alles debattieren (müssen) bevor eine Entscheidung getroffen wird. Deutsche Unternehmen sollten sich lieber auf ihre Innovationskraft konzentrieren, die definitiv vorhanden ist, anstatt sich hinter Siegeln zu verstecken.

Denn wie wir sehen, haben es die Cloud Computing Player wie Amazon, Google, Microsoft oder auch Salesforce nicht nötig, sich mit einem (deutschen) Siegel, Zertifikat oder dergleichen zu profilieren und denen interessiert es auch nicht, zu recht! Schließlich ist Cloud Computing ein globaler Ansatz und kein deutsches Konzept!



AWS präsentiert neue Identity Access und Management Funktionen

In einem Blogpost nennt Jeff Barr neue Funktionen für das AWS Passwort Management und zur Überwachung der Kontoaktivitäten und Nutzungsberichte.

Mit diesen neuen Funktionen können Identity Access and Management (IAM) Nutzer nun Zugriff auf die Kontoaktivitäten und Nutzungsberichte auf der AWS Webseite erhalten. Des Weiteren können Regeln für Passwörter definiert werden, durch die IAM Nutzer in die Lage versetzt werden, starke Passwörter zu verwenden. Zu guter Letzt besteht nun die Möglichkeit, IAM Nutzern die Gelegenheit zu geben, ihre eigenen Passwörter zu ändern.

Zugriff auf Kontoaktivitäten und Nutzungsberichte

Mit dieser neuen Funktion können voneinander getrennte und unterschiedliche IAM Benutzer für geschäftliche und technische Zwecke erstellt werden. So können Business-Anwender Zugriff auf die Kontoaktivitäten und Nutzungsberichte der AWS Webseite erhalten, um damit die Abrechnungs-und Nutzungsdaten einzusehen, ohne einen Zugriff auf anderen AWS-Ressourcen wie EC2-Instanzen oder Dateien in S3 zu haben.

Kennwortrichtlinien

Es können nun kontoübergreifende Richtlinien in der IAM-Konsole festgelegt werden, die starke Passwörter von den Nutzern verlangen und eine Passwortänderung erzwingt. Neben der Passwortlänge kann ebenfalls festgelegt werden, wie das Passwort aufgebaut werden soll und welche Zeichen es enthalten muss, also bswp. eine Kombination von großen und kleinen Buchstaben, Zahlen und Symbolen.

Ändern von Kennwörtern

Über eine neue Benutzeroberfläche in der IAM Konsole können IAM Benutzer nun auch ihr Passwort selbst ändern. Ein Nutzer erreicht diese neue Funktion, indem er rechts oben unter My Account die "Security Credentials" wählt.



Amazon DynamoDB zusammen mit .NET nutzen

Amazon DynamoDB ist der aktuelle NoSQL Service der Amazon Web Services. Es handelt sich dabei um eine verwaltete, skalierbare und bei Bedarf nutzbare Datenbank inkl. bereitgestellten Durchsatz. Der Bereitgestellte Durchsatz ermittelt vorab die Anforderungen für den Lese-und Schreib-Durchsatz, auf deren Basis die Kosten berechnet werden.

Dieses Tutorial von cloudstory.in richtet sich an .NET Entwickler, die mit Amazon DynamoDB starten möchten. Es zeigt, wie eine Tabelle erstellt und darauf Operationen ausgeführt werden. Amazon DynamoDB bietet für .NET-Entwickler dazu eine Low-Level-API sowie eine Object-Persistence-API. Das Tutorial beschreibt, wie die Object-Persistence-API genutzt wird, um mit Amazon DynamoDB zu kommunizieren. Dazu wird als Beispiel eine DVD Bibliothek erstellt, mit der individuelle DVDs hinzugefügt, modifiziert, gesucht und gelöscht werden können.

Voraussetzungen

Schritt 1 – Einrichten der Umgebung

Zunächst wird in Visual Studio ein neues Projekt angelegt und die Umgebung eingerichtet.

Dazu muss eine Referenz zu der AWSSDK.dll hinzugefügt werden. Zu finden unter C:[*]Program Files[*]AWS SDK for .NET[*]bin.

[*] bitte durch einen SLASH ersetzen.

Anschließend wird eine neue Konfigurationsdatei für die Anwendung hinzugefügt. Als Standard-Dateiname kann App.config genommen werden.

Nun benötigen wir die AWS Anmeldedaten, also den AWS Access Key und Secret Key.

Wir fügen den folgenden "using" Ausdruck hinzu.

using Amazon.DynamoDB.DataModel;

Und übernehmen den AWS Access Key und Secret Key in die App.config Datei.

Schritt 2 – Erstellen des DVD-Schema

Als Nächstes wird eine Klasse angelegt, die für das Amazon DynamoDB Schema benötigt wird.

Dazu legen wir eine neue Klasse mit dem Namen DVD.cs an.

Und fügen den folgenden "using" Ausdruck hinzu.

using Amazon.DynamoDB.DataModel;

Wir fügen die folgenden Eigenschaften hinzu und überschreiben die ToString Methode.

public class DVD
{
    public string Title { get; set; }

    public int ReleaseYear { get; set; }

    public ListActorNames { get; set; }

    public string Director { get; set; }

    public string Producer { get; set; }

    public override string ToString(){
        return string.Format(@"{0} - {1} Actors: {2}", Title, ReleaseYear, string.Join(", ", ActorNames.ToArray()));}
    }
}

Nun müssen wir Amazon DynamoDB spezifische Attribute hinzufügen, um die Tabelle, den Hash Key und Range Key identifizieren zu können. Im Folgenden befindet sich der Code der endgültigen DVD.cs inkl. aller notwendigen Attribute.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Amazon.DynamoDB.DataModel;

namespace DVDsOnCloud
{
[DynamoDBTable("DVD")]
    public class DVD
    {
        [DynamoDBHashKey]
        public string Title { get; set; }

        [DynamoDBRangeKey]
        public int ReleaseYear { get; set; }

        [DynamoDBProperty]
        public List ActorNames { get; set; }

        public string Director { get; set; }

        public string Producer { get; set; }

        public override string ToString()
        {
            return string.Format(@"{0} - {1} Actors: {2}", Title, ReleaseYear, string.Join(", ", ActorNames.ToArray()));
        }
    }
}

Ein Hash Key ist vergleichbar mit dem Primary Key einer Tabelle. Es wird erwartet, dass dieser immer einzigartig ist und ist der am meisten genutzte Key für Anfragen. Der Range-Key ist ein sekundärer Schlüssel, der von DynamoDB verwendet wird, um einen sortierten Index-Bereich zu schaffen. Obwohl der Range Key optional ist, kann die Kombination von Hash Key und Range Key die Query-Performance optimieren.

Schritt 3 – Erstellen der DVDLibrary Hilfsklasse

Nun erstellen wir einen Wrapper für die DynamoDB API innerhalb einer Klasse, die von einem Client genutzt werden kann. Dazu erstellen wir eine neue Klasse mit dem Namen DVDLibray.cs.

Wir fügen die folgenden "using" Ausdrücke hinzu.

using Amazon;
using Amazon.DynamoDB;
using Amazon.DynamoDB.Model;
using Amazon.DynamoDB.DataModel;
using Amazon.SecurityToken;
using Amazon.Runtime;

Schritt 4 – Hinzufügen der öffentliche Mitglieder und des Konstruktors

Nun fügen wir den Konstruktor zur DVDLibrary Klasse hinzu. Der Konstruktor verwendet den AWS Security Token Authentifizierung, um die Anmeldedaten zu überprüfen.

AmazonDynamoDB client;
public DVDLibrary()
{
    AmazonSecurityTokenServiceClient stsClient = new AmazonSecurityTokenServiceClient();
    RefreshingSessionAWSCredentials sessionCredentials = new RefreshingSessionAWSCredentials(stsClient);
    client = new AmazonDynamoDBClient(sessionCredentials);
}

Schritt 5 – Initialisierung der Amazonas DynamoDB Tabelle

In diesem Schritt initialisieren wir Amazon DynamoDB Tabelle. Wir stellen sicher, dass die Tabelle nicht existiert und erstellen eine neue. Zudem konfigurieren wir die benötigten Parameter, wie den bereitgestellten Durchsatz, Hash Key und Range Key. Das Erstellen einer Amazon DynamoDB Tabelle dauert eine Weile. Zu dieser Zeit können keine weiteren Operationen durchgeführt werden. Daher wird die Methode solange blockiert, bis der Status der Tabelle in den Zustand "Active" wechselt.

public void Init()
{
    List currentTables = client.ListTables().ListTablesResult.TableNames;
    if (!currentTables.Contains("DVD"))
    {
        CreateTableRequest reqCreateTable = new CreateTableRequest();
        CreateTableResponse resCreateTable=new CreateTableResponse();

        reqCreateTable.TableName = "DVD";

        reqCreateTable.ProvisionedThroughput = new ProvisionedThroughput();
        reqCreateTable.ProvisionedThroughput.ReadCapacityUnits=10;
        reqCreateTable.ProvisionedThroughput.WriteCapacityUnits=10;

        reqCreateTable.KeySchema = new KeySchema();

        reqCreateTable.KeySchema.HashKeyElement = new KeySchemaElement();
        reqCreateTable.KeySchema.HashKeyElement.AttributeName = "Title";
        reqCreateTable.KeySchema.HashKeyElement.AttributeType = "S";

        reqCreateTable.KeySchema.RangeKeyElement = new KeySchemaElement();
        reqCreateTable.KeySchema.RangeKeyElement.AttributeName = "ReleaseYear";
        reqCreateTable.KeySchema.RangeKeyElement.AttributeType = "N";

        resCreateTable = client.CreateTable(reqCreateTable);

        while (resCreateTable.CreateTableResult.TableDescription.TableStatus != "ACTIVE")
        {
            System.Threading.Thread.Sleep(5000);
        }
    }

}

Bei Amazon DynamoDB besteht die Möglichkeit, den Anforderungsdurchsatz festzulegen, den eine Tabelle erreichen soll. Der Service sorgt dann dafür, die Ressourcen bereitstehen, mit denen die erforderliche Durchsatzrate erreicht wird. Die Durchsatzanforderungen können in Bezug auf die Lesekapazität und Schreibkapazität in der Tabelle festgelegt werden. Dazu werden beim Erstellen einer Tabelle die erforderlichen Lese- und Schreibkapazitätsanforderungen angegeben. Auf dieser Basis partitioniert Amazon DynamoDB automatisch die entsprechende Anzahl von Ressourcen und reserviert diese, damit der Durchsatz erreicht wird.

Schritt 6 – Hinzufügen einer neuen DVD

Nun erstellen wir eine Funktion mit dem Namen AddDVD, die das DVD Objekt akzeptiert und ein Element in der Amazon DynamoDB erstellt.

public void AddDVD(DVD dvd)
{
    DynamoDBContext context = new DynamoDBContext(client);
    context.Save(dvd);
}

Schritt 7 – Ändern einer vorhandenen DVD

Als Nächstes erstellen wir eine Methode ModifyDVD, die versucht eine vorhandene DVD zu laden, diese zu modifizieren und anschließend zu speichern. Wird das Element nicht gefunden, kommt es zu einer Exception.

public void ModifyDVD(DVD dvd)
{
    DynamoDBContext context = new DynamoDBContext(client);
    DVD oDVD = context.Load(dvd.Title, dvd.ReleaseYear);
    if(oDVD==null)
        new Exception("Non-existent DVD");
    context.Save(dvd);
}

Schritt 8 – Alle DVDs ausgeben

Um alle DVDs auszugeben, führen wir einen Table Scan durch.

public IEnumerable GetAllDVDs()
{
    DynamoDBContext context = new DynamoDBContext(client);
    IEnumerable alldvds=context.Scan();
    return alldvds;
}

Wie bei jeder anderen Datenbank auch, ist ein vollständiger Scan auf Amazon DynamoDB kostspielig. Diese Operation berücksichtigt nicht den Hash Key und Range Key und durchläuft jedes Element. Der Scanvorgang wird beendet, wenn die aggregierte Größe der gescannten Objekte 1MB übersteigt. Der Client muss die Operation für den Rest der Elemente dann erneut starten.

Schritt 9 – DVDs auf Basis des Titels und Erscheinungsjahrs suchen

Um nach den DVDs zu suchen, benötigen wir den Hash Key als auch den Range Key. Daher wird diese Methode beide Schlüssel nutzen, um die DVDs zu durchsuchen.

public IEnumerable SearchDVDs(string title, int releaseyear)
{
    DynamoDBContext context = new DynamoDBContext(client);
    IEnumerable alldvds = context.Query(title, Amazon.DynamoDB.DocumentModel.QueryOperator.Equal, releaseyear);
    return alldvds;
}

Schritt 10 – DVDs auf Basis des Titels suchen

Wenn das Erscheinungsjahr nicht zu den Suchkriterien gehören soll, nutzen wir nur die folgende Methode, die nur auf Basis des Titels sucht.

public List>SearchDVDByTitle(string title)
{
    DynamoDBContext context = new DynamoDBContext(client);
    QueryRequest reqQuery = new QueryRequest();
    reqQuery.TableName = "DVD";
    reqQuery.HashKeyValue = new AttributeValue() { S = title };

    QueryResponse resQuery = client.Query(reqQuery);

    return resQuery.QueryResult.Items;
}

Schritt 11 – Löschen der DVD

Mit der folgenden Methode löschen wir eine DVD.

public void DeleteDVD(DVD dvd)
{
    DynamoDBContext context = new DynamoDBContext(client);
    DVD oDVD = context.Load(dvd.Title, dvd.ReleaseYear);
    if (oDVD == null)
        new Exception("Non-existent DVD");
    context.Delete(dvd);
}

Im Folgenden befindet sich der gesamte Quellcode für die DVDLibrary.cs.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Amazon;
using Amazon.DynamoDB;
using Amazon.DynamoDB.Model;
using Amazon.DynamoDB.DataModel;
using Amazon.SecurityToken;
using Amazon.Runtime;

namespace DVDsOnCloud
{
    class DVDLibrary
    {
        AmazonDynamoDB client;
        public DVDLibrary()
        {
            AmazonSecurityTokenServiceClient stsClient = new AmazonSecurityTokenServiceClient();
            RefreshingSessionAWSCredentials sessionCredentials = new RefreshingSessionAWSCredentials(stsClient);
            client = new AmazonDynamoDBClient(sessionCredentials);
        }

        public void Init()
        {
            List currentTables = client.ListTables().ListTablesResult.TableNames;
            if (!currentTables.Contains("DVD"))
            {
                CreateTableRequest reqCreateTable = new CreateTableRequest();
                CreateTableResponse resCreateTable=new CreateTableResponse();

                reqCreateTable.TableName = "DVD";

                reqCreateTable.ProvisionedThroughput = new ProvisionedThroughput();
                reqCreateTable.ProvisionedThroughput.ReadCapacityUnits=10;
                reqCreateTable.ProvisionedThroughput.WriteCapacityUnits=10;

                reqCreateTable.KeySchema = new KeySchema();

                reqCreateTable.KeySchema.HashKeyElement = new KeySchemaElement();
                reqCreateTable.KeySchema.HashKeyElement.AttributeName = "Title";
                reqCreateTable.KeySchema.HashKeyElement.AttributeType = "S";

                reqCreateTable.KeySchema.RangeKeyElement = new KeySchemaElement();
                reqCreateTable.KeySchema.RangeKeyElement.AttributeName = "ReleaseYear";
                reqCreateTable.KeySchema.RangeKeyElement.AttributeType = "N";

                resCreateTable = client.CreateTable(reqCreateTable);

                while (resCreateTable.CreateTableResult.TableDescription.TableStatus != "ACTIVE")
                {
                    System.Threading.Thread.Sleep(5000);
                }
            }

        }

public void AddDVD(DVD dvd)
{
    DynamoDBContext context = new DynamoDBContext(client);
    context.Save(dvd);
}

        public void ModifyDVD(DVD dvd)
        {
            DynamoDBContext context = new DynamoDBContext(client);
            DVD oDVD = context.Load(dvd.Title, dvd.ReleaseYear);
            if(oDVD==null)
                new Exception("Non-existent DVD");
            context.Save(dvd);
        }

        public IEnumerable GetAllDVDs()
        {
            DynamoDBContext context = new DynamoDBContext(client);
            IEnumerable alldvds=context.Scan();
            return alldvds;
        }

        public IEnumerable SearchDVDs(string title, int releaseyear)
        {
            DynamoDBContext context = new DynamoDBContext(client);
            IEnumerable alldvds = context.Query(title, Amazon.DynamoDB.DocumentModel.QueryOperator.Equal, releaseyear);
            return alldvds;
        }

        public List>SearchDVDByTitle(string title)
        {
            DynamoDBContext context = new DynamoDBContext(client);
            QueryRequest reqQuery = new QueryRequest();
            reqQuery.TableName = "DVD";
            reqQuery.HashKeyValue = new AttributeValue() { S = title };

            QueryResponse resQuery = client.Query(reqQuery);

            return resQuery.QueryResult.Items;
        }


        public void DeleteDVD(DVD dvd)
        {
            DynamoDBContext context = new DynamoDBContext(client);
            DVD oDVD = context.Load(dvd.Title, dvd.ReleaseYear);
            if (oDVD == null)
                new Exception("Non-existent DVD");
            context.Delete(dvd);
        }
    }

 }

Der komplette Quellcode

Im Folgenden ist der vollständige Code des Clients zu finden, der auf die DVDLibrary zugreift.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DVDsOnCloud
{
    class Program
    {
        static void Main(string[] args)
        {
            //Create the helper object
            DVDLibrary DVDLib= new DVDLibrary();

            //Initialize
            DVDLib.Init();

            //Create the DVD object
            DVD dvd = new DVD() { Title = "Businessman", ReleaseYear = 2011, ActorNames = new List { "Mahesh", "Kajal" }, Director = "Puri Jagannath", Producer = "Venkat" };

            //Add the new DVD
            DVDLib.AddDVD(dvd);

            //Print all the DVDs
            foreach (var odvd in DVDLib.GetAllDVDs())
                Console.WriteLine(odvd.Title);

            //Create a new DVD object with modified values
            DVD newdvd = new DVD() { Title = "Businessman", ReleaseYear = 2011, ActorNames = new List { "Mahesh Babu", "Kajal Agarwal" }, Director = "Puri Jagannath", Producer = "Venkat" };

            //Commit the changes
            DVDLib.ModifyDVD(newdvd);


            //Search for the DVD
            foreach (var dvd in DVDLib.SearchDVDs("Businessman",2011))
                Console.WriteLine(dvd.Director);

            //Delete the DVD
            DVDLib.DeleteDVD(newdvd);
         }
    }
}

Quelle: http://cloudstory.in



How-To: Amazon EC2 Linux Micro Instanz um eine Swap Partition erweitern um deren Leistung zu erhöhen

Amazon EC2 Micro Instanzen stehen nur 613 MB Arbeitsspeicher zur Verfügung. Das reicht in den meisten Fällen nicht, um große Datenmengen performant zu verarbeiten. Hinzu kommt, dass die Linux Micro Instanzen standardmäßig keine Swap Partition haben.

Mit den folgenden Schritten wird einer Linux basierten Amazon EC2 Micro Instanz eine Swap Partition hinzugefügt, wodurch deren Leistung erhöht werden kann.

Zunächst melden wir uns als Root an und geben folgenden Befehl ein, um die Werte für die gewünschte Blockgröße anzugeben.

dd if=/dev/zero of=/swapfile bs=1M count=1024

Anschließend richten wir das Swapfile ein.

mkswap /swapfile

Nun aktivieren das Swapfile.

swapon /swapfile

Um das Swapfile während des Bootvorgangs zu aktivieren, tragen wir folgendes in die /etc/fstab ein.

/swapfile swap swap defaults 0 0

Bildquelle: http://tux.crystalxp.net



Amazon eröffnet weitere AWS Region in Oregon

Wie Amazon heute auf seinem Blog bekanntgeben hat, wurde eine weitere und somit die sechste AWS Region weltweit eröffnet.

Mit US West (Oregon) steht nun die dritte Region in den USA und damit die sechste Region weltweit auf der Landkarte der Amazon Web Services. Oregon befindet sich im Pazifischen Nordwesten der Vereinigten Staaten. Die neue Region soll damit einen günstigeren Zugriff und eine geringere Latenz aus dem Westen der USA auf die Services von Amazon gewährleisten.

Die Kosten für die neue Region betragen dieselben wie für die Region US East (Northern Virginia).

Folgende Services stehen in der Region US West (Oregon) zur Verfügung:

  • Amazon Elastic Compute Cloud (EC2) und die damit verbundenen Services (Elastic Block Store, Virtual Private Cloud, Elastic Load Balancing und Auto Scaling).
  • Amazon Simple Storage Service (S3).
  • Amazon SimpleDB.
  • Amazon Relational Database Service (RDS).
  • Amazon Simple Queue Service (SQS).
  • Amazon Simple Notification Service (SNS).
  • Amazon Elastic MapReduce.
  • AWS CloudFormation.
  • Amazon CloudWatch.


Die Software AG geht in die Cloud

Die Software AG hat ihre Anwendungen WebMethods und Aris auf Amazon EC2 portiert und plant zudem einen eigenen PaaS Dienst.

Neben der Middleware WebMethods hat die Software AG ebenfalls sein Tool für die Prozessmodellierung Aris zertifizieren lassen, so dass beide Anwendungen nun auf Amazon EC2 sowie VMware betrieben werden können. Durch die Portierung auf EC2 sollen bestehende Kunde die Utility-Services Möglichkeiten der Cloud nutzen können. Nach Aussage der Software AG nutzen einige Kunden sogar bereits Lösungen auf VMware Basis, wodurch die jetzige Zertifizierung ihnen nur ein weiteres Maß an Sicherheit gewährleisten soll.

Um WebMethods bzw. Aris auf Amazon EC2 zu nutzen, müssen die Kunden einen separaten Vertrag mit Amazon eingehen. Die Lizenzen würden hingegen von Seiten der Software AG geliefert. Dazu sind die CPU-Lizenzen der Software AG kompatible mit den Virtual Core Lizenzen von Amazon. Was bedeutet, dass ein Kunde seine bestehenden Lizenzen zu Amazon umziehen kann.

Unternehmen können die Amazon Cloud somit für die Entwicklung, Test und Produktion nutzen. Die Software AG erwartet hingegen die meiste Nutzung in den beiden erstgenannten Bereichen.

Development-as-a-Service

Das Hauptziel der Software AG besteht jedoch im Aufbau eines umfangreichen Platform-as-a-Service Angebots. Die PaaS Umgebung wird dazu neben einem Java Application Server (WebMethods) ebenfalls einen In-Memory Cache (Terracotta) beinhalten. Darüber hinaus soll dem PaaS eine IDE (Integrated Development Environment) einverleibt werden, was aus dem Platform-as-a-Service im Grunde genommen ein Development-as-a-Service macht.

Hinzu kommt eine Kollaborationsschicht, die es virtuellen Teams ermöglichen soll gemeinsam, in Echtzeit und ortsunabhängig miteinander zu arbeiten.

Wann der PaaS erscheint steht derzeit noch nicht fest, jedoch befindet sich das nächste Major Release für WebMethods in den Startlöchern.



Amazon AWS stellt mobile Anwendung zur Zwei Faktor Authentifizierung bereit

Nutzer der Amazon Web Services erhalten nun die Möglichkeit, sich über ihr Smartphone die benötigten Authentifizierungscodes für den Multi-Factor Authentication (MFA) Service zu erzeugen.

MFA erweitert die Nutzung der Amazon Web Services um eine weitere Sicherheitsfunktion. So kann sich ein Benutzer neben seinem Benutzernamen und einem Passwort zusätzlich mit einem Authentifizierungscode ausweisen, bevor er sich letztendlich anmeldet.

Bisher standen Administratoren Hardware Tokens zur Verfügung, mit denen Sie ad-hoc Authentifizierungscodes erstellen konnten. Mit der neuen Option können nun auch Smartphones, Tablets oder normale Computer verwendet werden, auf der eine Anwendung betrieben werden kann, welche den offenen OATH TOTP (Open Authentication Time-Based One-Time Password) Standard unterstützt, um darüber die Codes zu generieren.

Die Nutzung der Software ist deutlich günstiger, bequemer und flexibler als der 13 Dollar teure Hardware Token.

Die AWS Virtual MFA Application steht im Amazon Appstore bzw. dem Android Market zum Download bereit. Amazon stellt auf seiner Webseite darüber hinaus eine Liste mit alternativen Anwendungen für iPhone und Blackberry Nutzern bereit.



Big Blues Kampf im Jungle – IBM gegen Amazon

Mit den "Smart Business Clouds" hat nun auch IBM seine Public Cloud Infrastruktur für Unternehmenskunden vollständig geöffnet und hat angekündigt im Laufe des Jahres ein weiteres Angebot mit einer deutlich höheren Verfügbarkeit zu veröffentlichen.

IBMs "Smart Business Clouds" (SmartCloud) bestehen aus den eigenen vorkonfigurierten x64-basierten CloudBurst Stacks und werden in einer Vielzahl von Cloud Rechenzentren überall auf der Welt betrieben. IBM unterscheidet seine SmartCloud in den Angeboten Enterprise und Enterprise+, die von den IBM's Global Technology Services vertrieben werden.

Die bereits verfügbare "SmartCloud Enterprise" Infrastruktur umfasst ausschließlich x64-basierte Server und bietet ein Service Level Agreement (SLA) mit einer Verfügbarkeit von 99,5%. Weiterhin unterstützt IBM auf seinen virtuellen Maschinen 32-bit und 64-bit Betriebssysteme wie Microsoft Windows 2003 und 2008, Red Hat Enterprise Linux 5.4 und 5.5 und Novell SUSE Linux Enterprise 11

Die "SmartCloud Enterprise+" Infrastruktur wird in der zweiten Jahreshälfte von 2011 erwartet. Kunden erhalten hier die Möglichkeit, x64 basierte oder Power Server zu kaufen, auf denen sie ihre Anwendungen betreiben können. Hier erhöht IBM zudem seine SLAs auf 99,9% Verfügbarkeit

Im Gegensatz zu seinem Angebot "Smart Business Development and Test on the IBM Cloud", bei dem IBM als Hypervisor auf eine RedHat/ KVM Kombination setzt, nutzen die "SmartClouds" den VMware ESXi Hypervisor. Um auch Kunden zu bedienen, die auf andere Hypervisor setzen als den von VMware, wird IBM dazu übergehen müssen, ebenfalls KVM und Microsofts Hyper-V zu unterstützen. Auf den Power Servern in der "SmartCloud Enterprise+" setzt IBM auf seinen eigenen PowerVM Hypervisor und unterstützt hier die Betriebssysteme AIX Unix, Red Hat Enterprise Linux, sowie den SUSE Linux Enterprise Server.

Die Abrechnung der SmartClouds erfolgt pro VM pro Stunde. Zudem steht ein Softwarekatalog bereit, aus dem sich Kunden IBM spezifische Anwendungen wie Middleware, Groupware und Datenbanken, sowie Anwendungen von Drittanbietern wie die Cloud Management Software von Kaavo oder Plattformen zur Entwicklung von Webanwendungen wie von Aviarc, beziehen können.

Die Preise für die SmartClouds sind ebenfalls öffentlich. Vergleichbar mit Amazons EC2 rechnet IBM auch hier on-Demand ab und bietet seinen Kunden Optionen auf reservierte Kapazitäten. Das "SmartCloud Enterprise+" Angebot hingegen wird nicht stündlich on-Demand abgerechnet. Hier muss sich der Kunde entweder für eine monatliche Abrechnung oder einen festen Vertrag mit Laufzeit entscheiden. Jedoch stehen ihm hier weitere Managed Services, sowie mehrere Sicherheitsstufen zur Verfügung.

Wie ebenfalls von Amazon EC2 bekannt, kann ein Kunde auch bei den "SmartClouds" zwischen unterschiedlichen Konfigurationen von virtuellen Maschinen wählen. Je nach Leistungsstufe wird hier von Copper bis Platinum unterschieden.

Für eine 32-bit Konfiguration kann je nach Leistungsstufe zwischen 1 bis 4 virtuellen CPUs mit 1,25 GHz, zwischen 2GB bis 4GB virtuellen RAM und zwischen 60GB und 350GB virtuellen Instanzspeicher gewählt werden. Für einen Red Hat Enterprise Linux Server und einer Copper Konfiguration berechnet IBM 15.4 Dollar(cent) pro Stunde.

Für eine 64-bit Konfiguration kann je nach Leistungsstufe zwischen 2 bis 16 virtuellen CPUs mit 1,25 GHz, zwischen 4GB bis 16GB virtuellen RAM und zwischen 60GB und 2TB virtuellen Instanzspeicher gewählt werden.

Im Vergleich zu Amazon EC2 ist die IBM SmartCloud erheblich teurer, was aber daran liegt, das IBM mit seinem Angebot gezielt nur Unternehmen anspricht. So kostet die kleinste 32-bit Copper Instanz mit einem SUSE Enterprise Linux Server 11.0 0,095 Dollar pro Stunde und eine 64-bit Platinum Instanz mit einem Red Hat Linux Enterprise Server 5.4 und 5.5 1,84 Dollar pro Stunde. (Jeweils für nicht reservierte Kapazitäten.)

Das sich das Angebot an Unternehmen richtet, wird bei der Registrierung deutlich. Hier kann zwischen weiteren "Optional Premium Services" wie "On-boarding support" (Remote on-boarding support | Einmalig 3.000 Dollar), "Virtual Private Network service" (Network isolation of your instances through a virtual private network on the IBM Cloud | Einmalig 1.000 Dollar plus 300 Dollar monatlich) oder weiterem "Support" unterschieden in "Premium support" für 5% von der Gesamtnutzungsgebühr pro Monat (aber mindestens 75$ pro Monat) und "Advanced Premium support" für 10% von der Gesamtnutzungsgebühr pro Monat (aber mindestens 1000$ pro Monat), gewählt werden.

Die SmartCloud Enterprise Infrastruktur befindet sich in unterschiedlichen Cloud Rechenzentren überall auf der Welt. Kunden aus den USA beziehen die Services aus Raleigh in North Carolina und Boulder in Colorado. Kanadische Kunden werden aus Toronto in Ontario bedient. Für Europa, den mittleren Osten und Afrika werden die Services über ein Rechenzentrum aus Ehningen in Deutschland bereitgestellt, sowie für asiatische Kunden über ein Rechenzentrum in Singapur und Tokio.

Fazit

Für Unternehmenskunden sind die IBM "SmartCloud Enterprise Services" auf Grund ihrer umfangreichen Serviceleistungen ein attraktives wenn auch teures Angebot. Ob IBM damit tatsächlich den Kampf mit Amazon aufnehmen kann und möchte bleibt fraglich. Denn einen entscheidenen und attraktiven Vorteil hat Amazon gegenüber IBM. Die AWS Cloud ist ein echtes Public Cloud Angebot und ist für jedermann zugänglich. So haben auch Entwickler oder "normale Menschen" mit einer Idee die Möglichkeit die Services von Amazon zu nutzen. IBM hingegen richtet sich gezielt an Unternehmenskunden und hat nicht den Bedarf auf die Wünsche einfacher Benutzer einzugehen.

Aus eigener Sicht betrachtet, muss IBM sich darauf auch nicht einlassen, da die Dienstleistungen seit jeher Unternehmen adressierten. Spannend bleibt, ob und wie Amazon darauf reagiert. Wie bereits oben erwähnt, kann sich Amazon jedoch darauf berufen, die "Cloud für jedermann" zu sein. Vor allem Startups, Entwickler mit innovativen Ideen und Fachabteilungen die "nur mal etwas ausprobieren wollen", werden weiterhin auf Grund des unkomplizierten Ressourcenbezugs und der einfachen und kostengünstigen Abrechnung auf die AWS Cloud zurückgreifen.