2008-10-20 12 views
8

Hat jemand viel Erfahrung bei der Bereitstellung von Anwendungen für Amazons EC2? Ich überlege mir, dies in Zukunft zu tun und wundere mich über die Erfahrungen der Leute im Vergleich zu Shared Hosting und dediziertem Server-Hosting.Bereitstellung bei Amazon EC2

Antwort

8

So weit, so gut. Es ist großartig, 5/10/50/100 + Maschinen gleichzeitig zu aktivieren. Es ist noch besser, sie ausschalten und vergessen zu können. Sie müssen Ihre Einstellung ändern, wie Sie Ihre persistenten Daten speichern, aber sobald Sie den Himmel haben, ist die Grenze.

Leistungsmäßig sind kleine Instanzen langsam. Sie eignen sich für Load Balancer und das Bereitstellen von statischem Inhalt usw., aber wenn Sie etwas Prozessorintensives tun, benötigen Sie mindestens eine m1.medium-Instanz.

Es ist alles ziemlich neu, also gibt es nicht viele Tools, um noch zu helfen. Ich benutze Puppet, um meine Hosts zu konfigurieren, und ich habe eine Reihe von PHP-Skripten zum Starten von Clustern. Ich verwende LDAP als Host-Inventardatenbank.

Wenn Sie nicht die Notwendigkeit haben, eigene zu erstellen, finden Sie unter Rightscale für einige wirklich tolle Tools für die Bereitstellung/Erweiterung von Anwendungen.

+0

"Sie müssen Ihre Einstellung ändern, wie Sie Ihre persistenten Daten speichern." Meinst du S3 und SimpleDB Speicher? – Craig

+0

Ja und nein. S3/SDB sind am bequemsten. Sie müssen darauf vorbereitet sein, dass alle Ihre Instanzen abschalten und einen Plan haben, diese Daten zurück zu bekommen. Ich bin mir nicht passiert, aber ähm. Zum Beispiel ist Master-Master-MySQL-Replikation wahrscheinlich nicht genug. Außerdem müssen Sie Replikationsprotokolle alle drei Minuten an S3 senden. –

+0

Das ist interessant. Ich bin an der neuen SQL Server-Option interessiert, die Amazon herausbringt, und frage mich, ob es zusätzliche Ringe zum Durchspringen gibt, um sicherzustellen, dass Daten nicht verloren gehen. – Craig

0

Ich habe ein Bild, das meinen vollen Stapel und ein Skript auf jedem hat, das die Bereitstellung von Kriegen (Java) von einem S3-Bucket an das lokale Dateisystem automatisiert.

Wenn ein Bild gestartet wird, führt rc2.local dieses Skript aus, um die neuesten Kriege zu erhalten, bevor Tomcat gestartet wird. Dies funktioniert gut für mich

3

Ein Ansatz besteht darin, Ihre Instanz genau so einzurichten, wie Sie es lokal möchten, indem Sie ein VMWare-Image verwenden, das dann in AMI konvertiert wird. Zum Beispiel mit this script

0

Kosten ist ein ziemlich großer Faktor, den ich zunächst mit EC2 übersehen. Die billigste kleine Instanz kostet 10 Cent pro Instanz Stunden, was etwa 70 Dollar pro Monat kostet, wenn Sie die ganze Zeit laufen. Das ist ein bisschen mehr als die billigsten Hosting-Lösungen.

Natürlich können Sie mit EC2 Ihr Betriebssystem auswählen und jede Software installieren, die Sie mögen, und es ist definitiv viel kostengünstiger als dediziertes Hosting, wenn Sie eine große Anzahl von Servern benötigen.

Ich habe über ein hybrides Modell gelesen, in dem Menschen dedizierte Server für ihre normale Arbeitslast verwenden, aber zusätzliche EC2-Instanzen zu Zeiten mit Spitzenbedarf hinzufügen.