
Hallo an alle. Nächste Woche beginnen die Kurse für den
Cloud Services- Kurs. Wir machen Sie auf eine kurze Nacherzählung der
offenen Lektion "AWS EC2-Service" aufmerksam. Es wurde von
Egor Zuev geleitet , einem Lehrer und Spezialisten für Cloud-Dienste mit mehr als 10 Jahren Erfahrung. In diesem Seminar haben wir den AWS EC2-Service überprüft, eine einfache Anwendung codiert und bereitgestellt, die Datenbank erweitert und auch die Image-Replikation und Load Balancer untersucht.
AWS EC2-Serviceübersicht
EC2 (Elastic Compute Cloud) ist ein Dienst, der Rechenleistung bereitstellt, indem er virtuellen / physischen Maschinen vorab erstellte Images von Betriebssystemen (z. B. Ubuntu, Debian, Windows) zur Verfügung stellt.
Zur Auswahl stehende Instanztypen:

Für Images verwendet AWS EC2 AMI (Amazon Machine Image), das auch das Image eines vorgefertigten Betriebssystems ist, das von der EC2-Instanz verwendet wird. Die nächste Analogie ist eine virtuelle Festplatte mit einem bereits installierten System, z. B. in Virtual Box.
Es ist wichtig zu wissen, dass wir den Zugriff konfigurieren müssen, wenn wir den Computer konfigurieren und das Image auswählen. Da sich die Maschine in der Cloud befindet, müssen wir und andere Benutzer darauf zugreifen. Konfigurieren Sie dazu die Sicherheitsgruppe - eine Reihe von Regeln (Richtlinien), die für die EC2-Instanz gelten und Berechtigungen für eingehenden und ausgehenden Datenverkehr enthalten.
Arbeite mit der Konsole
Unmittelbar nach der Registrierung für den Service werden Sie zur AWS EC2-Konsole weitergeleitet. Dort können Sie EC2 und den Maschinentyp auswählen, auf dem wir alles bereitstellen werden. In unserem Fall wählen Sie Ubuntu Server.


Ein wichtiger Punkt : In Schritt 2 interessieren wir uns für
t2micro (markiert mit einem grünen Aufkleber),
weil alles andere bezahlt wird.
In den nächsten drei Schritten behalten wir die Standardeinstellungen bei, aber Schritt 6 sollte besondere Aufmerksamkeit gewidmet werden. Hier müssen Sie den Namen der Gruppe eingeben, z. B. Backend-Sicherheitsgruppe, und dann sofort die Regel hinzufügen, damit nur der 80. Port eine Verbindung von der Außenwelt herstellen kann.

Klicken Sie im siebten Schritt auf Starten und starten Sie die Instanz. Zuvor werden Sie jedoch vom System aufgefordert, einen Schlüssel für die Verbindung über ssh zu erstellen. Wenn alle Schritte abgeschlossen sind, dauert die Initialisierung 1-2 Minuten.
Die erstellte Instanz wird als Backend bezeichnet.
Detailliertes Video zu den Einstellungen .
Verbindung
Wenn jemand die Feinheiten der Verbindung vergessen hat, werden Sie vom Dienst umgehend darüber informiert:

Sie können ein separates Programm verwenden, um beispielsweise eine Verbindung zu Bitvise SSH Client herzustellen - ein sehr praktisches Tool.
Das Gerät verfügt sofort über öffentliche und private IP-Adressen. Wir verwenden public für den Zugriff auf die Maschine, in die wir fahren, und greifen über ssh darauf zu. Wir schreiben Ubuntu als Benutzernamen und importieren dann den von uns erstellten Schlüssel. Sie müssen sich nur noch mit dem Auto anmelden. Übrigens werden wir alle Aktionen unter der Wurzel ausführen, um den Befehl
sudo su einzugeben.
Verbindungsdetails.Wir verbinden die Datenbank
Als Datenbank wurde beschlossen, PostgreSQL zu verwenden. Erstellen Sie zum Fortfahren eine neue Instanz mit den folgenden Einstellungen:
- Geben Sie 16 GB in die Spalte Größe ein (Schritt 4).
- Der Name der Sicherheitsgruppe wird als Datenbank-Sicherheitsgruppe bezeichnet (Schritt 6).
- Fügen Sie die Regel in die Konfiguration ein, indem Sie PostgreSQL aus der Unterliste auswählen (Schritt 6).
Übrigens können Sie hier im Feld IP-Adresse Sicherheitsgruppen steuern. In unserem Fall handelt es sich um eine Backend-Sicherheitsgruppe. Somit erhält jeder, der zu dieser Gruppe gehört, Zugriff auf die Datenbank im privaten Netzwerk.
Hier können Sie hören, was für eine Magie dieses private Netzwerk ist.
Als Ergebnis erhalten wir zwei Instanzen in der Konsole - Backend und Datenbank.
Details zur DB-Verbindung.Wir erstellen und implementieren die Anwendung
Erstellen Sie ein neues Projekt mit WebStorm und Node.js. Unsere Aufgabe ist
es, eine einfache Anwendung
zu schreiben , die nur zwei Dinge erledigt: auf Pings antworten und die Anzahl der Anforderungsanforderungen bis zu einem bestimmten Endpunkt zählen und entsprechend ausgeben.
Wir werden
die Anwendung in zwei Schritten
bereitstellen . Wechseln Sie zum Bereitstellen zu einem Computer namens Backend, führen Sie ein Update durch, installieren Sie Node.js, führen Sie einen Git-Klon durch und installieren Sie Bibliotheken.
Als nächstes
erhöhen wir
die Basis . Bitte beachten Sie, dass Node und Postgres auf verschiedenen Maschinen arbeiten. Der Moment der Wahrheit -
Verbindung zur Anwendung über eine öffentliche Ansprache. Hurra, alles funktioniert!

Die nächste Stufe ist die
Erstellung unseres eigenen AMI-Images , das uns zur Verfügung stehen wird. Basierend auf diesem AMI-Image können wir eine Kopie unseres Backends erstellen und mit zwei Klicks bereitstellen. Gehen Sie dazu zu "Bild" - "Bild erstellen".

Nach dem Erstellen des Bildes nehmen
wir die erforderlichen Einstellungen vor. Es gibt nur sehr wenige Optionen: Sie müssen beispielsweise die Mindestgröße der Festplatte angeben. Wir sprechen über die Größe des Snapshots, dh der Snapshot wird tatsächlich von der Festplatte entfernt, auf der wir alles installiert haben. Wir können sagen, dass AMI eine virtuelle Einheit ist, die aus Image- und Snapshot-Einstellungen mit dem installierten Betriebssystem (in unserem Fall dem Betriebssystem mit Node.js und unserer Anwendung) besteht.
Ein wichtiger Punkt : Die Erstellung eines Schnappschusses dauert ungefähr fünf Minuten. Während dieser Zeit befindet sich das Gerät im Wartestatus (je „dicker“ Ihr Bild ist, desto länger dauert es).
Nennen wir das Bild beispielsweise
backend-ami . Der Name wird hier vorgestellt:

Nachdem wir das Image erstellt haben, können wir es replizieren und mit nur wenigen Klicks dieselbe Kopie des Computers erhalten. Und nicht separat, sondern über
Load Balancer an die Maschinen anzuschließen. Es stehen mehrere Balancer zur Auswahl, die sich in den Balancing-Algorithmen unterscheiden.
Das Einrichten des ausgewählten Balancers verursacht keine Schwierigkeiten, obwohl es wichtige
Nuancen gibt, an die Sie sich erinnern sollten.

Preismodelle
AWS EC2 bietet 4 Preismodelle an. Der folgende Screenshot enthält Beschreibungen von drei davon: Reserviert, Spotmarkt und On-Demand. Übrigens haben wir in einer offenen Lektion das On-Demand-Modell verwendet.
Mehr über Modelle.Neben der Auswahl der Modelle ist der AWS EC2-Service auch gut, da er (wie viele andere AWS-Produkte) in das AWS-Überwachungssystem
Cloudwatch integriert ist . Dieses Überwachungssystem ist flexibel konfiguriert und ermöglicht es Ihnen, sowohl den Ressourcenverbrauch als auch das Budget zu überwachen. Mit nur wenigen Klicks können Sie die Verwendung von EC2-Ressourcen einschränken. Danach erhalten Sie eine Benachrichtigung, beispielsweise per E-Mail.
Es bleibt hinzuzufügen, dass sich die offene Lektion als sehr informativ herausstellte. Wenn Sie sich für dieses Thema interessieren, sollten Sie sich das gesamte Webinar ansehen, damit Sie nichts verpassen.