Amazon EC2 (Amazon Elastic Compute Cloud) [1] ist ein Webservice für die Bereitstellung von hoch skalierbarer Rechnerkapazität und wurde entwickelt, um die Entwicklung von skalierbare Web-Anwendungen für Entwickler einfacher zu machen. Die angemietete Rechnerleistung befindet sich in den weltweit verteilten Rechenzentren von Amazon und kann über eine Webservice Schnittstelle vollständig konfiguriert und kontrolliert werden.
Durch das Hinzufügen und Starten von Serverinstanzen innerhalb von Minuten kann die verwendete Infrastruktur in kurzer Zeit je nach den aktuellen Anforderungen skaliert werden. Ist die Last hoch, werden mehr Instanzen hinzugefügt, nimmt die Last wieder ab, werden die nicht mehr benötigten Kapazitäten entfernt.
Da nur für die Ressourcen bezahlt wird, die auch tatsächlich verwendet werden, erhält man dadurch eine bessere Kosteneffizienz. Der Normalfall besteht in der Anschaffung eigener überdimensionierter Systeme, die im Gesamtdurchschnitt nur zu 20% ausgelastet sind. Die restlichen 80% werden nur während Spitzenlasten genutzt und verursachen sonst nur unnötige Kosten.
Amazon EC2 Funktionsweise
Die virtuelle Umgebung von Amazon EC2 wird mittels einer Webservice Schnittstelle angesprochen, über die auf Serverinstanzen mit einer vielzahl unterschiedlicher Betriebssysteme zugegriffen werden kann. Die Betriebssysteme können wie eigene „lokale“ Betriebssysteme mit Software erweitert und können ebenfalls mit Zugriffsberechtigungen konfiguriert werden.
[2]
Eine einfache Vorgehensweise
- Auswahl und Start eines bereits vor-konfigurierten Images (Vorlage). Alternativ kann auch ein eigenes Amazon Machine Image (AMI) erstellt werden. Dieses beinhaltet dann eigene Anwendungen, Bibliotheken, Daten und Konfigurationen.
- Konfiguration der Sicherheitseinstellungen und des Netzwerkzugriffs auf die jeweilige EC2 Instanz.
- Auswahl des Instanz Typs und des Betriebssystems.
- Festlegen des Orts, wo die Server ausgeführt werden sollen (USA, Europa, …).
- Festlegen einer statischen IP-Adresse.
- Hinzufügen von Speicherplatz.
Leistungen im Überblick
- Elastisch: Rechnerkapazität kann je nach Bedarf innerhalb von Minuten vergrößert und verkleinert werden. Dabei kann man einen aber auch tausend Server Instanzen gleichzeitg nutzen, die mittels der Web Service API angesprochen werden und automatisch skalieren.
- Vollständige Kontrolle: Für jede Server Instanz besteht vollständiger Root-Zugriff.
- Flexibilität: Man kann zwischen mehreren Instanzen Typen, Betriebssystemen und Software-Pakete wählen. Die Serverhardware kann so konfiguriert werden, dass der Speicher, die CPU, und die Größe der Boot-Partition, optimal für das Betriebssystem und die Anwendung ausgelegt sind.
- Amazon Web Services: Vollständige Unterstützung und Integration mit den anderen Amazon Web Services wie Amazon Simple Storage Service (Amazon S3), Amazon SimpleDB und Amazon Simple Queue Service (Amazon SQS).
- Zuverlässig: Das Service Level Agreement von Amazon EC2 besagt 99,95% Verfügbarkeit für jede Amazon EC2 Region.
- Sicherheit: Amazon EC2 stellt folgende Sicherheitsfunktionen bereit:
- Über die Webservice Schnittstelle kann eine Firewall für den Zugriff auf die jeweilige Instanz und zwischen einzelnen Instanzen/ Gruppen von Instanzen konfiguriert werden.
- Mittels der Amazon Virtual Private Cloud (Amazon VPC) können die Instanzen in einen eigenen (privaten) IP-Adressbereich verlagert werden. Darüber hinaus kann über die (haus)-eigene Infrastruktur mit einem IPSec VPN auf diese Instanzen in der Amazon Cloud zugegriffen werden.
- Kostengünstig:
- On-Demand Instanzen: Bei On-Demand Instanzen zahlt man nur für die Rechnerkapazität die tatsächlich genutzt wird. Die Abbrechnung erfolg dabei pro Stunde ohne langfristige Verpflichtungen einzugehen. Dadurch entfällt die Überdimensionierung der Serverlandschaft um Lastspitzen auszugleichen.
- Reservierte Instanzen: Instanzen können für eine niedrige, einmalige Zahlung pro Instanz reserviert werden. Im Gegenzug erhält man einen Rabatt auf die Nutzungsgebühr (Stundenpreis) für diese Instanz. Anschließend ist diese Instanz ohne weitere Verpflichtungen reserviert und kann wie gewohnt genutzt werden.
- Spot Instanzen: Hier bietet man auf ungenutzte Amazon EC2 Kapazitäten. Dazu teilt man Amazon mit, welche EC2 Instanz man gerne haben möchte und was man bereit ist dafür zu bezahlen. Anhand von Angebot und Nachfrage wird ein Spot-Preis ermittelt.
[3]
Funktionen
-
Amazon Elastic Block Store
Amazon Elastic Block Store (EBS) dienen zur dauerhaften Speicherung der Amazon EC2-Instanzen. Neben aktiven können auch Instanzen gespeichert werden, die gerade nicht verwendet werden. Die Volumes können als Boot Partition für EC2-Instanzen verwendet werden oder direkt an eine bereits gestartete EC2-Instanz angeschlossen werden. Die EBS-Volumes werden automatisch in eine einfache Verfügbarkeitszone repliziert und ein Snapshot kann zusätzlich in Amazons S3 Dienst abgelegt werden. Dieser Snapshot wird dann über mehrere Verfügbarkeitszonen verteilt. Ein Snapshot kann, wenn gewünscht, als Ausgangspunkt für einen neuen Amazon EBS dienen. -
Mehrere Standorte
Amazon EC2 Instanzen können an mehreren Standorten verteilt werden. Die Standorte sind dabei in Regionen und Verfügbarkeitszonen aufgeteilt. Verfügbarkeitszonen sind unterschiedliche Orte, die entwickelt wurden, um von Fehlern in anderen Verfügbarkeitszonen nicht betroffen zu sein. Zudem haben unterschiedliche Verfügbarkeitszonen unterschiedliche Latenzzeiten in einer Region. Durch den Einsatz von separaten Verfügbarkeitszonen wird eine Anwendung von Ausfällen an einzelnen Standorten nicht betroffen. Die einzelnen Verfügbarkeitszonen sind geografisch in verschiedenen Orten und Ländern verteilten. Dazu gehören derzeit der Osten der USA (Northern Virginia), der Westen der USA (Northern California) und Europa (Irland). -
Elastische IP-Adressen
Elastische IP-Adressen sind statische IP-Adressen die für dynamisches Cloud Computing entwickelt wurden. Diese IP-Adresse ist mit dem AWS-Account und nicht mit einer konkreten Instanz verknüpft. Im Fehlerfall einer Instanz wird die IP-Adresse des betroffenen Servers auf einen funktionieren Server neu gemapped. -
Amazon Virtual Private Cloud
Mit der Virtual Private Cloud die EC2-Instanzen innerhalb der Amazon Cloud in das eigenen Firmennetz eingebunden werden. Sie fungieren dann im Prinzip als lokal vorhandene Server und können auf andere Systeme zugreifen, genau so wie auf sie zugegriffen werden kann. -
Amazon CloudWatch
Wird HIER beschrieben. -
Auto Scaling
Wird HIER beschrieben. -
Elastic Load Balancing
Wird HIER beschrieben.
Typen von Instanzen
Standard Instanzen
- Small Instance: 1.7 GB Arbeitsspeicher, 1 EC2 Prozessor, 160 GB Speicherplatz, 32-bit Plattform
- Large Instance: 7.5 GB Arbeitsspeicher, 4 EC2 Prozessoren, 850 GB Speicherplatz, 64-bit Plattform
- Extra Large Instance:15 GB Arbeitsspeicher, 8 EC2 Prozessoren, 1690 GB Speicherplatz, 64-bit Plattform
High-Memory Instanzen
- High-Memory Double Extra Large Instance: 34.2 GB Arbeitsspeicher, 13 EC2 Prozessoren, 850 GB Speicherplatz, 64-bit Plattform
- High-Memory Quadruple Extra Large Instance: 68.4 GB Arbeitsspeicher, 26 EC2 Prozessoren, 1690 GB Speicherplatz, 64-bit Plattform
High-CPU Instanzen
- High-CPU Medium Instance: 1.7 GB Arbeitsspeicher, 5 EC2 Prozessoren, 350 GB Speicherplatz, 32-bit Plattform
- High-CPU Extra Large Instance: 7 GB Arbeitsspeicher, 20 EC2 Prozessoren, 1690 GB Speicherplatz, 64-bit Plattform
EC2 Prozessor: Ein EC2 Prozessor ist mit mit einem 1.0-1.2 GHz 2007 Opteron bzw. 2007 Xeon Prozessor vergleichbar.
Betriebssysteme und Software
Betriebssysteme
Folgende vorkonfigurierte Amazon Machine Images (AMI) stehen zur Verfügung:
- Red Hat Enterprise Linux
- Windows Server 2003/2008
- Oracle Enterprise Linux
- OpenSolaris
- openSUSE Linux
- Ubuntu Linux
- Fedora
- Gentoo Linux
- Debian
-
Des Weiteren können vorkonfigurierte AMIs inkl. vorinstallierter Software genutzt werden. Folgende Softwarelösungen stehen zur Verfügung:
Datenbanken
- IBM DB2
- IBM Informix Dynamic Server
- Microsoft SQL Server Standard 2005
- MySQL Enterprise
- Oracle Database 11g
Batch-Verarbeitung
- Hadoop
- Condor
- Open MPI
Web Hosting
- Apache HTTP
- IIS/Asp.Net
- IBM Lotus Web Content Management
- IBM WebSphere Portal Server
Anwendungsentwicklung
- IBM sMash
- JBoss Enterprise Application Platform
- Ruby on Rails
Applikationserver
- IBM WebSphere Application Server
- Java Application Server
- Oracle WebLogic Server
Video Encoding & Streaming
- Wowza Media Server Pro
- Windows Media Server
Preise
Alle Preise für
- Datentransfer
- Amazon Elastic Block Store
- Elastic IP Addresses
- Amazon CloudWatch
- Elastic Load Balancing
sind hier zu finden: Amazon EC2 Preise
Quellen:
[1] Amazon EC2
[2] Graphik: Amazon EC2 (1)
[3] Graphik: Amazon EC2 (2)