Transkripte
1. Einführung: Hallo, alle zusammen. Mein Name
ist Mariko Bukowski und ich arbeite seit vielen Jahren
in der IT In letzter Zeit habe ich mich auf
Rollen als DevOps
- und Cloud-Ingenieur konzentriert und arbeite hauptsächlich mit AWS, und arbeite hauptsächlich mit AWS, Datenbanken und Ich habe auch täglich mit
Terraform gearbeitet,
daher habe ich beschlossen, mein
Wissen heute mit Ihnen zu teilen Terraform gehört
zu einer Kategorie von Tools, die als
Infrastructure as a Code bezeichnet werden In diesem Kurs werden wir alles
darüber erfahren. Wenn Sie keine Ahnung haben,
was Terraform ist, sich
keine Sorgen, Sie sind
hier richtig Wir werden uns zunächst ansehen
, wie Terraform installiert, konfiguriert
und dann verwendet wird Am Ende dieses
Kurses verfügen Sie über
alle erforderlichen Kenntnisse, um mit dem Aufbau einer
Infrastruktur mithilfe von
Terraform
zu beginnen , und Sie werden auch mehr über die Konfigurationssprache AWS Cloud
und HashiCorp
erfahren und Dies ist eine Programmiersprache
, die in Terraform verwendet wird. Glauben Sie mir, das ist eine
sehr wertvolle Fähigkeit. Sie können diese
Fähigkeit Ihrem Lebenslauf hinzufügen , wenn Sie sich beispielsweise für
IT-Stellen bewerben. Außerdem wollte ich hinzufügen, naja, all das mag verwirrend
klingen. Glauben Sie mir, dass keine
Vorkenntnisse erforderlich sind, um diesen Kurs zu beginnen. Nur eine Sache, auf die ich
hinweisen möchte: Vielleicht werden wir
während des Kurses mit AWS Cloud
arbeiten. Ich werde Ihnen zeigen, wie Sie
Ihr eigenes AWS-Konto erstellen und wie
Sie Terraform mit AWS verwenden, aber dieser Schritt ist optional Sie haben die Wahl, ob
Sie
dieses AWS-Konto erstellen oder sich diesen Teil
einfach ansehen möchten dieses AWS-Konto erstellen oder sich diesen Teil
einfach ansehen Dies ist optional, da ich auch zeigen
werde,
wie Sie mit
anderen
Infrastrukturanbietern zusammenarbeiten können. Aus diesem Grund ist die Erstellung eines eigenen
AWS-Kontos nicht erforderlich. Ich meine, wenn Sie das nicht tun möchten , ist
das absolut in Ordnung. Tatsächlich werden
Sie im Rahmen eines Projekts Ihren
eigenen Terraform-Code schreiben, werden
Sie im Rahmen eines Projekts Ihren
eigenen Terraform-Code schreiben um die Infrastruktur automatisch für
einen
Infrastrukturanbieter Ihrer Wahl bereitzustellen einen
Infrastrukturanbieter Ihrer Wahl Beachten Sie auch, dass Sie, wenn Sie
mehr
über DevOps und
Cloud-spezifische Themen erfahren möchten, unsere
Automation
Avenue-Plattform besuchen können , auf der Sie
mehr über AWS Cloud, Python-Programmierung,
Terraform, Linux, Docker und viele andere
IT-bezogene Aber ich denke, das ist genug
für die Einführung, da Sie es wahrscheinlich kaum
erwarten können Wir sehen
uns in unserer ersten Lektion.
2. Was ist Terraform und IaC (Infrastruktur als Code)): Beginnen wir damit, was
Terraform eigentlich ist, wie es uns helfen kann und
welche Probleme es löst Wie gesagt, Terraform ist eine
Infrastruktur als Codetool. Das heißt, wir können unsere Infrastruktur
in Form eines Codes erstellen und pflegen Das bedeutet, dass ich
einen Teil eines Codes schreiben kann und dieser Code einen Teil
der Infrastruktur für mich erstellt. dieser
Infrastruktur kann es sich
beispielsweise um einen einzelnen
Server in der AWS-Cloud handeln. Es kann vielleicht ein virtueller
Server auf meinem Px Mx sein. kann sich vielleicht um einen Cloud-Loadbalancer handeln, oder es kann sich auch um einen komplexen
Code handeln, der eine
gesamte
Produktionsinfrastruktur erstellt , die Hunderte von Servern umfassen
kann Unabhängig davon, was
ich bauen möchte, kann
ich Terraform immer noch
für all diese Zwecke verwenden Terraform hat ein sehr breites
Anwendungsspektrum. Es wird am häufigsten in
Cloud-Lösungen
wie AWS, GPC,
Azure, Digital
Ocean und anderen verwendet Cloud-Lösungen
wie AWS, GPC,
Azure, ,
aber es kann mit fast
allem funktionieren, was Sie sich vorstellen können Wenn Sie nachschauen, lassen Sie mich vielleicht den Browser
öffnen und nach
Terraform-Anbietern suchen Ich werde
den ersten Link ganz oben auswählen, Anbieter durchsuchen, und Sie werden
hier eine endlose Anzahl
sogenannter Anbieter sehen sogenannter Sie können AWS,
Kubernetes Azure und die
Google Cloud-Plattform sehen Kubernetes Azure und die
Google Cloud-Plattform Sie stehen ganz
oben, weil dies
die beliebtesten Orte sind , an denen Sie
mit Terraform arbeiten würden Aber wenn du nach
unten scrollst, schau mal. Das ist nur die
allererste Seite. Schauen Sie sich diese Partneranbieter an. Das ist nur der Buchstabe A. Schauen Sie mal, wir haben 95
Seiten mit Partneranbietern. Nehmen wir jetzt an, ich möchte vielleicht mit Proxmx
arbeiten, ja. Wir haben Alibaba Cloud festgefahren. Ich wusste nicht einmal, dass
so etwas existiert Macht nichts. Proxmox, ja, vielleicht möchte ich mit Proxmox
arbeiten Ich kann hier nach
Proxmox suchen und Sie werden
sehen, dass es keinen gibt, aber wir können alle Anbieter sehen . Jede Menge
Anbieter nur für Proxmox. Jeder dieser Anbieter
lässt mich mit
meinem Proxmax-Server arbeiten Aber lass mich zurückgehen. Was
sind diese Anbieter überhaupt? Dieser Anbieter ist also
wie eine Brücke, über die ich Terraform mit
diesem speziellen Produkt verwenden Wenn ich zum Beispiel möchte, dass
Terraform mit AWS funktioniert, muss
ich diesen
AWS-Anbieter in meinen Code aufnehmen, und dann lädt Terraform alle erforderlichen Tools
herunter, wir machen etwas Magie
im Hintergrund, wir installieren alles, was für die Arbeit mit AWS Cloud erforderlich
ist Und in diesem Kurs werden
wir Terraform verwenden, um Das heißt nicht, dass dieser Kurs irgendwie AWS-spezifisch
ist. Dies ist ein Terraform-Kurs, kein AWS-Kurs, und
am Ende dieser Schulung werden
Sie in der Lage sein, mit
all diesen Anbietern zusammenzuarbeiten , da
wir
Terraform-Konzepte erlernen werden , die auf jeden Anbieter
angewendet werden können, mit dem
Sie zusammenarbeiten möchten Denken Sie nicht, dass Sie
eine weitere Terraform-Schulung benötigen ,
wenn Sie
beispielsweise mit Azure oder DCP oder was auch immer arbeiten möchten beispielsweise Die Tatsache, dass wir heute mit AWS zusammenarbeiten werden, ist bedeutungslos, da für alle
gewünschten Anbieter dieselben Regeln gelten Sie werden einfach mit allen zusammenarbeiten können
. Ich habe mich nur für AWS entschieden, weil AWS der beliebteste
Cloud-Anbieter
ist und Terraform die beliebteste
Infrastruktur als Codetool Ich denke, es ist eine perfekte Kombination. Aber was bedeutet es nun
eigentlich,
die Infrastruktur zu programmieren oder
Infrastruktur als Code zu haben? Es bedeutet einfach, dass
wir,
anstatt manuell auf
einige Symbole in der AWS-Konsole
zu klicken einige Symbole in der AWS-Konsole , um etwas in der Cloud zu erstellen , alles in
Terraform erledigen und
in Form eines Codes beibehalten können Terraform erledigen und
in Form eines Codes beibehalten Weil Terraform wie
eine Programmiersprache ist. Sie können dieses Programm, diesen Code in Terraform schreiben
, indem Sie
eine Programmiersprache namens
HCL HashiCorp-Konfigurationssprache verwenden eine Programmiersprache namens
HCL HashiCorp-Konfigurationssprache HCL Sobald Sie das
Programm abgeschlossen haben, können
Sie es ausführen und es stellt alle Ressourcen für Sie bereit Jemand könnte fragen, Mark, aber ich kann diese
Infrastruktur manuell aufbauen. Ich kann sie
direkt erstellen, zum Beispiel
in AWS, indem ich auf einige Symbole klicke und die erforderlichen Felder
ausfülle. Warum ich überhaupt
etwas über so etwas wie Terraform lernen sollte. manuelle Erstellen einer Infrastruktur in der Cloud ist in der Tat möglich Es hat jedoch viele Nachteile. Das größte Problem bei einem solchen manuellen Ansatz ist, dass, wenn jemand
diese Infrastruktur
manuell erstellt , zum Beispiel
ich, ich einen Server erstelle
und am nächsten Tag
jemand ganz anderes
anfängt, an diesem Server
herumzubasteln und Änderungen daran vorzunehmen Das Problem ist nun, dass wir
nicht wissen, wer ihn geändert hat und was geändert wurde,
weil wir nicht der Lage
sind, all diese Änderungen
nachzuverfolgen Nehmen wir zum Beispiel an, ich habe
diesen Server in der Cloud
mit einer 500-Gig-Festplatte erstellt . Etwas später
gab es ein Problem mit dem Speicherplatz und jemand
erhöhte ihn auf 700 GB. Das Problem ist jetzt, dass,
wenn etwas mit dem Server passiert und ich ihn auf der Grundlage von vielleicht,
ich weiß nicht, ein paar
persönlichen Notizen neu aufbauen muss , dann werde ich
ihn mit einer 500-Gig-Disc neu aufbauen, weil
ich vielleicht nicht einmal davon
weiß
, dass jemand den Festplattenspeicher in der Zwischenzeit auf 700
GB erhöht
hat . Wir haben also keine Spur davon, wer
wo und was geändert wurde.
Es wäre ziemlich
schwierig, all diese Informationen an
einem Ort zu speichern all diese Informationen an , indem man nur einige Knoten
benutzt. Wenn wir
diese Infrastruktur jedoch
in Form eines Programms haben , können wir diese Informationen programmieren oder
hartcodieren, sodass jeder weiß, dass die Disc auf diesem speziellen Server 700 Gig haben
sollte. Wenn sie
es noch weiter erhöhen müssen, werden
sie diesen
Wert in diesem Code ändern. Und sie werden diesen Code mit dem gesamten Team teilen. Also wird sich jeder dessen bewusst
sein. Und sollte ich diesen Server jemals
neu aufbauen müssen, werde
ich in AWS auf
keine Schaltflächen klicken. Ich werde diesen Server
mit Terraform bereitstellen und dabei dieselbe Datei verwenden , in
der diese 700 oder was auch immer die aktuelle
Größe haben sollen Diese Größe ist programmiert, in
meinem Terraform-Code fest codiert Ich muss also nicht einmal darüber
nachdenken, welche Festplatte, welcher Instanztyp, welche
IP-Adresse zugewiesen usw., da ich
bereits alles
übersichtlich in Form eines
Codes dargestellt habe übersichtlich in Form eines
Codes dargestellt Ich kann diesen Code in ein
Remote-Repository wie
GitLab oder Github hochladen Remote-Repository wie
GitLab oder Github Mein Team kann diesen Code
jederzeit
aus diesem Remote-Repository abrufen, wenn es mit
diesem Server arbeiten
möchte oder wenn es Änderungen daran vornehmen möchte Aber das ist nur ein Beispiel. In Wirklichkeit
hat die Beibehaltung unserer
gesamten Infrastruktur in Form eines Programms viele weitere Vorteile. Zum Beispiel wird es für uns
sehr einfach sein, sagen
wir, zwei Kopien genau
derselben Infrastruktur zu erstellen . Wenn ich eines für
Testzwecke und eines
für die Produktionsumgebung benötige , kann
ich einfach den gesamten
Code in, sagen wir, einem
völlig anderen
AWS-Konto ausführen , und die
erstellte Infrastruktur sieht in beiden Konten genau
gleich aus.
3. Terraform-Installationsprozess auf Linux und Mac: Um mit Terraform arbeiten zu können, müssen
wir
es zuerst installieren, ja Ich zeige Ihnen, wie Sie es auf MacOS-,
Linux- und Windows-Computern
installieren Linux- und Windows-Computern Beginnen wir vielleicht mit Linux ,
weil die Installation sowohl unter Linux als auch unter macOS bereits trivial ist und der Vorgang
für beide sehr ähnlich ist Lassen Sie mich also in meinem Linux minimieren. In meinem Linux ist das also Ubuntu. Lassen Sie mich das Terminal öffnen und zuerst
Terraform Dash Dash Version eingeben Wie Sie sehen können, wurde der
Ausgabebefehl Terraform nicht gefunden, kann
aber mit dem
Pseudo Snap install Terraform installiert werden Das ist wahr. Sie können diesen Befehl einfach ausführen und die Arbeit ist erledigt. Aber ich bin nicht der größte
Fan von Snap-Paketen Lassen Sie mich Ihnen
einen anderen Weg zeigen, wie Sie das tun können. Lassen Sie uns den Browser erneut öffnen und ich werde nach
Terraform Dot IO suchen Das ist also Terraform Dot IO, und ich werde auf den Download-Button klicken Und Sie werden nicht nur
macOS Windows und Linux sehen, sondern auch kostenloses BSD, offenes BSD, Solaris usw. Aber ich
interessiere mich jetzt für Linux und weil jedes Linux
unterschiedliche Paketmanager haben kann, musst
du
deine Linux-Version wählen,
unabhängig von deiner
Distribution, Für mich ist
es zum Beispiel Ubuntu Debian. Ich kann einfach auf das
kleine Symbol hier klicken. Es wird alles für mich kopieren. Das heißt jetzt alles kopieren,
all diese Befehle. Also lass mich zurück zum Terminal gehen und ich habe es einfach platziert. Das ist es. Klicken Sie jetzt auf Enter. Nun, hier könntest
du eine Weile warten. Manche Dinge müssen im Hintergrund
heruntergeladen werden, das hängt
also von
Ihrer Internetgeschwindigkeit ab. Jetzt fragt es nach einem Pseudo-Passwort, also lassen Sie mich es angeben, und jetzt wird der Vorgang
abgeschlossen Das ist erledigt, das
heißt, wenn ich den
Aufwärtspfeil verwende und
diesen Befehl erneut ausführe, Terraform D-Version, hätte ich das
jetzt tun sollen, mal sehen. Das ist es, wonach
ich gesucht habe Jetzt zeigt es mir die
Version von Terraform,
was bedeutet, dass Terraform Aber wenn wir
dort wieder zur Terraform IO zurückkehren, können
wir auch die macOS-Version können
wir Wenn wir zu den
Betriebssystemen Macos wechseln, können
wir sehen, dass wir
Terraform mit dem Brew-Paketmanager installieren können Terraform mit Wenn ich sogar zu Linux gehe, können
Sie sehen, dass Homebrew auch hier
ist Wenn ich darauf klicke, erhalte ich
im Grunde die
gleichen Informationen Wenn ich zu Linux
Homebrew gehe oder wenn ich das MacOS-Betriebssystem wähle.
Auch das kann ich kopieren Ich kann mich jetzt
mein Mac-Terminal öffnen lassen. Das ist eine andere Maschine. Das ist mein Mac, aber ich sollte ihn
einfach hier einfügen können. Ja, ich bin nur ein Klick. Weiß. Es könnte auch
eine Weile dauern. Es macht etwas
im Hintergrund. Homebrew wird automatisch aktualisiert. Jetzt lädt es alles herunter,
was es
herunterladen muss . Jetzt
sollte es abgeschlossen sein Wenn ich hierher renne,
lass mich das vielleicht klären. Wenn ich die Terraform-Version verwende, werde
ich auch die
Terraform-Version haben Das bedeutet, dass Terraform korrekt installiert ist. Für Windows ist es jedoch eine etwas andere
Geschichte und ich
müsste auf eine andere
virtuelle Maschine springen, auf der
ich Windows installiert habe.
Lassen Sie mich das tun
4. Terraform-Installationsprozess auf Windows: Okay, jetzt bin ich auf meinem
Windows-Computer, also öffne ich Firefox und gebe
Terraform Dot IO Ich gehe zu Downloads
und dann zu Windows Tab. Auf dieser Windows-Tab möchte
ich die 64-Version
dieses Programms herunterladen.
Also klicke ich einfach darauf. Beginnt mit dem Herunterladen, und wenn ich
jetzt im Ordner zeige, können
wir sehen, dass es sich um eine komprimierte
Datei handelt. Es ist eine komprimierte Datei Also können wir
darauf klicken und ich sage, alle
extrahieren, um
sie zu dekomprimieren. Klicken Sie auf Extrahieren Wenn wir jetzt zu den Downloads zurückkehren, können
Sie die komprimierte
Version und die
unkomprimierte Version sehen Version und die
unkomprimierte Version Wenn ich das öffne,
kann ich eine Datei sehen. Es heißt Terraform und ist nicht
das Installationsprogramm. Es ist eine Punkt-EXE-Datei, was bedeutet, dass
nichts installiert werden muss Wenn Sie auf diese Datei klicken
, wird ausgeführt, was bedeutet, dass ich Terraform einfach ausführe,
indem ich auf diese Ich klicke auf Ansicht und auf
Dateinamenerweiterungen.
Sie können sehen, dass es sich um eine ausführbare
Terraform-Punkt-Datei Ja. Aber arbeiten Sie einfach mit dieser Datei über die
Befehlszeile.
Ich schlage vor, dass wir noch etwas tun. Lassen Sie uns diese Datei zuerst
irgendwo auf diesem
C kopieren . Lassen Sie mich sie kopieren. Ich kann jetzt schließen.
Lass uns alles schließen. Ich gehe zu C und Sie möchten es vielleicht
irgendwo in die Programmdateien einfügen, aber um Ihnen klar zu zeigen,
was wir hier tun, werde ich
vielleicht einfach hier einen
neuen Ordner erstellen. Ich werde einen neuen Ordner erstellen und
ihn Terraform nennen. Und in der Terraform werde ich die Datei Terraform Punkt A
haben.
Mein Pfad zu dieser Datei ist C, Backslash Terraform , Backslash Sobald wir diese Datei an diesem Ort haben, nennen wir sie Path . Es ist C, Backslash Terraform, Backslash Terraform A.
Dieses C-Terraform ist unser Pfad zu
dieser Datei. C-Terraform ist unser Pfad zu
dieser Datei Lass mich
vielleicht diesen Pfad C Terraform kopieren. Ich werde das einfach kopieren. Ich werde dieses Fenster minimieren und nach
Umgebungsvariablen suchen. Wir können die beste Übereinstimmung sehen und die
Systemumgebungsvariablen in der Systemsteuerung
bearbeiten. Das brauche ich. Das ist es. Und jetzt klicke ich auf diese
Umgebungsvariablen. Hier benötige ich diese Pfadvariable und klicke auf Bearbeiten. Und wir können sehen, dass wir
bereits eine haben, aber ich möchte noch eine hinzufügen. Ich sage neu und füge
einfach ein, was ich kopiert habe, die Terraform mit umgekehrtem
Schrägstrich in der C-Spalte Und sie sagen: Okay, also
kann ich hier auf Okay und
dort auf Okay klicken , weil das
alles ist, was ich hinzufügen möchte Das heißt, wenn
ich jetzt das Terminal öffne, öffne ich
vielleicht PowerShell Windows PowerShell, und wenn ich Terraform Dash Dash-Version
ausführe, kann
ich sehen, dass
Terraform installiert weil mir die
Version der Terraform angezeigt wird,
und das liegt daran, ist,
weil mir die
Version der Terraform angezeigt wird,
und das liegt daran, dass
unser Windows-System weiß, wo sich die Datei befindet,
die Terraform E-Datei,
weil wir sie gerade zur die Terraform E-Datei Path-Umgebung hinzugefügt haben, und das ist alles, was es die Terraform Dash Dash-Version
ausführe, kann
ich sehen, dass
Terraform installiert ist,
weil mir die
Version der Terraform angezeigt wird,
und das liegt daran, dass
unser Windows-System
weiß, wo sich die Datei befindet,
die Terraform E-Datei,
weil wir sie gerade zur Path-Umgebung hinzugefügt haben, und das ist alles, was es
für Windows ist. Sie können ab sofort mit Terraform unter Windows arbeiten.
5. Infrastruktur schaffen... aber wo?: Wir haben Terraform jetzt
installiert und sind bereit der Erstellung der
Infrastruktur als Code
zu beginnen Aber wo wir
diese Infrastruktur schaffen können. Wie ich bereits erwähnt habe, werden
wir diese
Infrastruktur in der AWS-Cloud erstellen, aber jede Ressource oder jeder Standort , der einen
Terraform-Anbieter hat, wird für uns funktionieren Ich werde mich auf
AWS Cloud konzentrieren, weil es der beliebteste
Cloud-Anbieter der Welt ist.
Daher ist es absolut sinnvoll, mit dieser Cloud
zu arbeiten Wenn Sie jedoch
alle in
dieser Schulung gezeigten Schritte
befolgen und üben möchten , müssen Sie
Ihr eigenes AWS-Konto einrichten Ihr eigenes AWS-Konto und dort mit der Bereitstellung Ihrer
Infrastruktur beginnen. In den nächsten Abschnitten werden
wir genau das tun. Wir werden den Prozess der Erstellung
und Konfiguration von
AWS-Konten durchgehen und sehen, wie wir
unser lokales Terraform mit
dieser Remote-AWS-Cloud verbinden können , dem AWS-Konto, das
wir erstellen werden Wenn Sie bereits
ein AWS-Konto haben oder
Terraform vielleicht bei einem völlig
anderen Anbieter verwenden möchten , sollten Sie einige der
ersten Videos hier überspringen , in denen
wir dieses AWS-Konto erstellen Und beginnen Sie mit dem, in dem wir AWS-Benutzer und -Gruppen
eingerichtet haben , denn das sollte Ihnen
eine klare Vorstellung davon geben , wie Sie
diese Informationen mit dem von
Ihnen ausgewählten Anbieter verwenden können diese Informationen mit dem von
Ihnen ausgewählten .
Ich hoffe, das macht Sinn. Lassen Sie uns dann mit der Erstellung und
Vorbereitung unseres AWS-Kontos beginnen.
6. AWS-Konto erstellen und sich als Root-Benutzer anmelden: Dies ist ein neues, frisches
Betriebssystem absolut
nichts konfiguriert ist, und wir werden
hier ein neues AWS-Konto erstellen. Lassen Sie mich also den Browser öffnen und wir werden zu
etwas wie AWS Three Tier navigieren. Und was das kostenlose Kontingent eigentlich ist, darüber werden wir später sprechen. Aber lassen Sie mich das jetzt kurz
erklären. Es ist einfach ein
AWS-Angebot,
mit dem Sie ein Jahr lang jede Menge
Ressourcen kostenlos nutzen können . Wenn Sie ein neues Konto erstellen, können
Sie diese Dienste ein Jahr
lang kostenlos nutzen. Aber wir werden später darüber sprechen , wenn wir tatsächlich Ressourcen
erstellen. Jetzt erstellen wir
das Konto selbst. Wie Sie hier sehen können, habe ich ein AWS-Konto
erstellt. Klicken wir darauf, weil
wir daran interessiert sind. darauf klicke, werde
ich zu der Webseite mit Schaltfläche „Kostenloses Konto erstellen“ weitergeleitet. Lass uns darauf klicken. Und vielleicht
akzeptieren wir diese Cookies. Jetzt brauche ich eine E-Mail-Adresse. Es kann sich um eine beliebige
E-Mail-Adresse handeln oder um Ihre eigene.
Sie müssen nur sicherstellen, dass Sie
während des Anmeldevorgangs tatsächlich
auf diese E-Mail zugreifen können während des Anmeldevorgangs tatsächlich
auf diese E-Mail zugreifen Ich werde einfach gmail.com benutzen. Das ist ein wichtiger Teil
. Das unten ist nur ein Alias
für Ihr Konto. Es kann alles sein, was
Sie wollen,
es heißt Automation Avenue. Aber es ist wirklich nicht so
wichtig. Die E-Mail ist hier wichtig. Ich klicke auf E-Mail-Adresse verifizieren und muss jetzt nur noch
warten, bis die E-Mail eintrifft. Oh, wie Sie wahrscheinlich hier sehen könnten, die E-Mail gerade angekommen und ich habe einen
Bestätigungscode erhalten, also muss ich ihn
hier eingeben und auf Bestätigen klicken. Okay. Jetzt müssen wir
das Passwort für den Root-Benutzer erstellen. Wir werden etwas
später darüber sprechen , wer eigentlich Root-Benutzer ist, aber jetzt
erstellen wir einfach ein Passwort. Wie Sie sehen können,
muss es Groß- und
Kleinbuchstaben, Zahlen und nicht
alphanumerische Zeichen enthalten Stellen Sie einfach sicher, dass
Sie das alles haben. Selbst wenn ich gerade anfange zu tippen, sagen
wir Großbuchstabe, wie Sie sehen können, ist das erste
Kästchen angekreuzt, Kleinbuchstabe, jetzt Ziffer und jetzt nicht alphanumerisch Wie Sie sehen können, sind all
diese Kästchen angekreuzt, mein Passwort ist gut
genug Jetzt muss ich es wiederholen. Und
das ist es. Wir können weitermachen. Ich wollte nur darauf hinweisen, dass
Sie
hier auf der linken Seite einen Link haben, wenn Sie diese
dreistufigen Produkte
erkunden möchten . Dies ist der Link, den Sie verwenden können. Aber egal, zu diesem Zeitpunkt konzentrieren
wir uns nur
auf den Anmeldevorgang Ich klicke einfach auf Weiter. Ich werde das Passwort speichern. Jetzt fragt es mich nach
Kontaktinformationen. Es fragt mich, ob es sich um
ein Geschäftskonto oder ein Privatkonto handelt. Ich werde es als
persönliches Konto behandeln. Wie dem auch sei, wenn es
geschäftlich ist, werden
Sie auch nach
dem Namen der Organisation gefragt . Klicken wir auf Persönlich
und mein Name ist. Sie müssen ihnen Namen und Adresse sowie die Telefonnummer geben. Und Sie stimmen zu, dass Sie die Kundenvereinbarung
gelesen haben. So können wir mit Schritt zwei fortfahren. Jetzt werden Sie nach
Rechnungsinformationen gefragt. Aus diesem Grund müssen Sie Ihre Kredit
- oder Debitkartennummer
angeben ,
denn wie gesagt, es gibt einige kostenlose
Dienste, die Sie nutzen können ,
aber
Sie können tatsächlich,
indem Sie sich anmelden , alle Dienste nutzen ,
die kostenlosen und die, für die Sie bezahlen
müssen. Deshalb müssen Sie
die Kreditkartendaten angeben. Aber in späteren Videos werde ich Ihnen
zeigen, wie Sie ein Budget erstellen. Dieses Budget informiert
Sie darüber, ob Sie tatsächlich angefangen haben, einige Dienste zu nutzen
, für die Sie bezahlen müssen. Vorerst müssen
wir
diese Informationen bereitstellen , um Fortschritte machen zu
können. Das ist die Kreditkarte,
und wir können noch weiter gehen. Da ich meine Revolut-Karte verwende, muss
ich bestätigen, dass
ich in
der Bankanwendung auf Bestätigen klicke, was diesen Schritt
autorisiert Jetzt werde ich nach der
Telefonnummer gefragt die Identität bestätigen kann Ich werde dasselbe verwenden, das ich
zuvor auf der vorherigen Seite verwendet habe . Jetzt die Aufnahme. Cool, ich habe es richtig verstanden. Wenn
es völlig unordentlich ist, können
Sie es auch jederzeit aktualisieren Weißt du, ich werde ein
neues generieren , weil einige von ihnen so seltsame Weise
generiert wurden , dass man kaum
sehen kann, was da ist Okay, jetzt warten wir auf den Bestätigungscode, der an meine Telefonnummer
gesendet wurde. Und wie Sie hören konnten, ist
es gerade eingetroffen. Und wir können
mit Schritt Nummer vier fortfahren. Hier werde ich erneut gefragt, welche
Art von Konto ich wirklich benötige. Also werden wir uns natürlich
für das kostenlose entscheiden und wollen 29$ pro Monat oder 100$
zahlen Die kostenlose ist mehr, als wir wirklich
brauchen, und das war's. Wir klicken auf Vollständig, melden Sie sich an. Wie Sie sehen können, war der Vorgang
schnell und einfach und es heißt: Oh. Wenn Sie hier sind, sagt AWS, dass wir Ihr Konto aktivieren, aber ich glaube, es wurde
gerade aktiviert. Also ja, ich habe die E-Mail erhalten, steht, dass ich
anfangen kann, mein Konto zu verwenden. Ich kann also
entweder auf diese
oder jene Schaltfläche klicken , das ist nicht
wirklich wichtig. Lass uns auf diesen klicken. Gehen Sie zur AWS-Managementkonsole. Und jetzt fragt es mich,
ob ich mich als Root-Benutzer oder
als IM-Benutzer anmelden möchte . Wir haben derzeit wirklich nur
Root, aber ich werde dir später in den
nächsten Videos zeigen , wie man auch IMUSer
erstellt Da wir also
vorerst keine Wahl haben,
haben wir nur Root-Benutzer Wir geben die E-Mail-Adresse an wir für den Anmeldevorgang verwendet haben Für mich war es gmail.com. Wir klicken auf Weiter
und auf das Passwort, das Sie gerade
auch für diesen Benutzer erstellt haben Und melde dich an. Nicht schlecht. Wir sind bereits in
unserer AWS-Konsole. heißt es AWS-Konsole, in der wir alles in
Bezug auf dieses Konto
oder unsere Ressourcen erledigen können . Ich möchte Ihnen zeigen, dass hier
Automation Avenue steht. Denken Sie daran, das ist der Alias, wir tatsächlich während
des Anmeldevorgangs eingefügt Anstatt einer
langen, seltsamen Ziffer wird hier also die Methode der
Automatisierung verwendet Für Sie kann es alles sein, was Sie wollen, dieses Konto nennen, wir. Als Nächstes können wir
Stockholm sehen. Nun, wir haben gewählt Ich weiß nicht warum, aber das
nennen wir AWS-Region. Hier möchten Sie Ihre Ressourcen
erstellen. Wie Sie sehen, können Sie es auf der ganzen Welt
erstellen. Lass es mich einfach nach
London ändern , weil
das für mich am nächsten ist. Aber wir werden später auch
darüber sprechen. Also mach dir jetzt keine Sorgen. Ich möchte, dass
Sie die
Multifaktor-Authentifizierung
für den Root-Benutzer aktivieren Multifaktor-Authentifizierung
für den Root-Benutzer Das ist sehr wichtig. Dieses Konto
muss sehr sicher sein.
7. MFA (Multi-Faktor-Authentifizierung) für Root-Benutzer hinzufügen: Was Sie hier
in diesem Suchfeld tun können, Sie können IM IAM eingeben Wir klicken darauf
und Sie können sehen, wir können sehen, dass sogar
Amazon selbst eine
Sicherheitsempfehlung hat, nämlich MFA für Root-Benutzer
hinzuzufügen nach sollte bei fast jedem
einzelnen Benutzer, den Sie erstellen, MFA aktiviert sein, Meiner Meinung nach sollte bei fast jedem
einzelnen Benutzer, den Sie
erstellen, MFA aktiviert sein,
aber der
Root-Benutzer ist definitiv
einer , für den Sie eine
MFA-Authentifizierung erstellen müssen Wir können MFA hier hinzufügen, indem wir auf diese
Schaltfläche klicken. Und jetzt haben wir die
Wahl, was wir als zweite separate
Authentifizierungsmethode
verwenden möchten als zweite separate
Authentifizierungsmethode
verwenden Der einfachste Weg
ist meiner Meinung nach die Authenticator-App, die sowieso
standardmäßig ausgewählt wird Sie können zum Beispiel
für mich anrufen, es wird
mein Samsung-Handy sein Ich kann das so benutzen und
es ist nicht wirklich wichtig. Es ist nur für Sie,
Information für Sie, wo diese Authentifizierung ankommen
wird. Und wir können die
Authentifizierungs-App wählen. Klicken Sie auf Weiter. Und jetzt können Sie sehen, dass
Sie
eine der Anwendungen
auf Ihrem Schaum installieren müssen. Entweder Google Authenticator,
ein Handy oder einige andere Apps, die Liste aller Anwendungen findest
du hier. Aber im Grunde
brauchst du nur einen von ihnen. Google ist wirklich gut. Das kann ich
empfehlen. sobald Sie
diese Anwendung installiert haben, müssen
Sie auf den
QR-Code anzeigen klicken und
ihn einfach mit Ihrem Schaum scannen. Sobald Sie es gescannt haben,
erhalten Sie den MFA-Code
, den Sie hier zweimal einfügen
müssen Ich meine, erster Code
und zweiter Code. Auf diese Weise fügen Sie das Gerät als autorisiertes Gerät hinzu, das
für den Empfang der MFA-Codes Tun Sie das nicht, da dies nur
ein temporäres Konto ist. Ich werde es später entfernen, aber das
solltest du auf jeden Fall tun. Im nächsten Video zeige ich Ihnen, wie
Sie
dieses Budget erstellen, bevor Sie tatsächlich Ressourcen in der AWS-Cloud erstellen
. Aber Sie haben jetzt Ihr eigenes
AWS-Konto, herzlichen Glückwunsch.
8. AWS-Budget erstellen: Im vorherigen Video haben wir unser neues AWS-Konto
erstellt. Wir haben ein Logo
als Root-Benutzer erstellt
und die MFA-Authentifizierung
für diesen Root-Benutzer hinzugefügt Was als Nächstes am wichtigsten
ist, ist, dass wir
wissen , wie viel Geld uns
AWS-Services kosten werden, wenn überhaupt Wir können entweder versuchen,
dort
kein Geld auszugeben , sondern nur Dienste nutzen, die für das kostenlose
Kontingent in
Frage kommen ,
aber vielleicht können wir etwas Geld ausgeben, aber wir wollen einen
bestimmten Schwellenwert, sagen wir,
10$ pro Monat nicht überschreiten . Aber auf die eine oder
andere Weise
wollen wir auf jeden Fall die Kontrolle über
unser Budget haben, und
genau das ist es,
was
AWS Budget Service auf unserer Konsole angemeldet Als Verkehrsteilnehmer können
wir hier
die Dienste eingeben, wir können nach Budget suchen. Wir können hier die Budgets
als Gebots- und
Kostenverwaltungsfunktion sehen , oder wir können einfach auf den Gebots- und
Kostenverwaltungsservice klicken , dem das Budget gehört Vielleicht klicken wir auf die oberste
Option. Spielt eigentlich keine Rolle. Hier
siehst du normalerweise eine Zusammenfassung, wie viel es dich letzten Monat gekostet hat, was
für diesen Monat prognostiziert wird. Da
es sich jedoch um ein neues Konto handelt, sind noch keine Daten verfügbar, was
aber nicht wirklich wichtig ist,
da wir hier in der
linken unteren Ecke
Budgets benötigen . Klicken wir auf das Budget. Und wie Sie
sehen können, können wir hier
ein neues Budget erstellen , indem
Sie auf diese Schaltfläche klicken. Jetzt haben wir die Wahl, eine Vorlage zu
verwenden oder mithilfe
erweiterter Einstellungen Anpassungen vorzunehmen. Bleiben wir bei der
vereinfachten Version. Nun, welche Art von Vorlage
möchten Sie verwenden? Standardmäßig wird kein ausgegebenes Budget
angezeigt. Erstellen Sie ein Budget, das Sie
benachrichtigt, sobald Ihre Ausgaben 0,01 USD überschreiten, was über dem
AWS-Limit für drei Stufen liegt Das klingt gut, nicht wahr? Denn das bedeutet, dass ich
eine Benachrichtigung erhalte, wenn
ich Geld für etwas ausgebe ist auch wichtig, daran
zu denken, dass das AWS-Budget keine Ressourcen für
uns
deaktiviert. Das soll es nicht sein. Es benachrichtigt uns nur jedes Mal, wenn wir einen
bestimmten Schwellenwert überschreiten. Wir können es hier herausfinden. Der erste Schwellenwert
wird bei 0,01$ liegen. Wenn wir einen Service nutzen
, für den wir bezahlen müssen, wird eine E-Mail an die unten angegebene E-Mail-Adresse gesendet. Bevor wir dorthin gehen,
gibt es vielleicht auch einen Budgetnamen. Es heißt My
Zero Spend Budget, was okay ist, aber lassen Sie
mich es einfach personalisieren Vielleicht Mark. Budget ohne Ausgaben. eigentlich keine Rolle.
Es ist nur ein Name. Und hier
geben wir die E-Mail-Adresse ein. Und wie Sie sehen,
muss es keiner sein. Sie können hier mehrere
E-Mail-Adressen angeben. Sie müssen
sie nur durch Kommas trennen. Ich nehme einfach einen, sagen wir mal, Mark at Issue Avenue. Das ist es. Wenn ich noch eins will, benutze
einfach Komma und bla, bla, bla. Aber wir werden
einfach diesen benutzen Das ist wirklich so,
glaube ich, weil, ja, wir können alles
so lassen, wie es ist, und Sie können eine Bestätigung sehen. Sie werden
per E-Mail benachrichtigt, wenn Ausgaben über
0,01 USD anfallen Das ist in Ordnung. Das ist es
, was ich will. Also erstellen wir ein Budget. Und das ist es. Wir haben unser Budget
und fragen mich nicht, warum immer 1$
statt 0,01$ angezeigt Ich weiß nicht, warum
es so ist, aber es sollte für 0,01$ sein Aber das ist keine große Sache.
Es funktioniert eigentlich wie erwartet, aber vielleicht
wollen wir ein anderes Budget erstellen. Was ist, wenn wir manchmal einige Dienste
nutzen möchten, aber 10$ pro Monat nicht
überschreiten möchten? Wir können also
einfach ein weiteres Budget erstellen und einen Schwellenwert dafür festlegen. Klicken wir auf Budget erstellen. Wir belassen es bei einer
vereinfachten Vorlage , was viel einfacher
ist, und wechseln nun
von einem Budget ohne Ausgaben zu einem
Budget mit nur einem
monatlichen Kostenbudget. Das Interessante
daran ist, wie Sie sehen, dass es Sie benachrichtigt, wenn Sie den Budgetbetrag überschreiten oder voraussichtlich
überschreiten werden Wenn Sie einen neuen Monat beginnen und
am ersten Tag 1 USD überschritten haben, kann
dieses AWS-Budget zeigen,
dass Sie am Monatsende sogar 10 USD
überschreiten werden Es sendet Ihnen also eine Benachrichtigung bevor Sie diesen Schwellenwert von 10 USD tatsächlich erreichen , da
prognostiziert wird, dass Sie ihn bis Ende des Monats
überschreiten Ich hoffe, das macht Sinn, denn unser oberstes Ziel ist es, 10$ pro Monat nicht
zu überschreiten Das ist genau das, was wir brauchen.
Jetzt können wir also nach unten scrollen. Nennen wir es ein 10-Dollar-Budget, ja. Für uns ist also klar,
worum es geht. Jetzt passen wir
diesen Wert einfach auf 10$ an und wieder nur eine Liste von E-Mails. Wir möchten, dass
diese Benachrichtigung auch gesendet wird. Und das ist alles. Und hier unten haben
Sie eine
Zusammenfassung, wie es funktioniert. Sie werden benachrichtigt, wann.
Ihre Ausgaben erreichen 85%. Wenn Sie also
um 8:50 Uhr sind, sagen wir, Sie erhalten eine E-Mail, dann liegt
sie bei 100% bei 10$ Aber die dritte Option, wenn für Sie prognostiziert wird, dass die Ausgaben voraussichtlich
100% erreichen Aber das ist sehr praktisch und nützlich für uns. Das ist
genau das, was ich brauche. Erstellen Sie einfach ein Budget. Auf diese Weise können
Sie so viele
Budgets erstellen, wie Sie möchten, und
werden jedes Mal benachrichtigt , wenn Sie
einen dieser Schwellenwerte erreichen
9. AWS IAM-Benutzer und IAM-Benutzergruppe erstellen: Im vorherigen Video haben wir das
AWS-Budget erstellt. Wir können unsere Ausgaben
anhand dieser Budgets usw. überwachen . Aber ich möchte darauf
hinweisen, dass wir
immer noch als Root-Benutzer angemeldet sind und dieser Root-Benutzer
nicht wirklich derjenige ist, den wir verwenden möchten, um so
etwas wie Ressourcen
wie Server, Load
Balancer usw. zu erstellen . Wir wollen dafür nicht wirklich einen Root-Benutzer
verwenden. Was wir stattdessen verwenden sollten, ist eine
Art Admin-Konto, Admin-Benutzer oder irgendeinen anderen Benutzer
mit begrenztem Umfang. In diesem Video werden wir also Admin IMUser
erstellen. Der Dienst, den ich benötige, heißt IM. Das haben wir bereits gesehen, als wir MFA-Authentifizierung
erstellt
haben, als wir
das Konto selbst erstellt haben Wie Sie sehen, habe ich
diesen Schritt
noch nicht abgeschlossen , aber ich hoffe, Sie haben Aber was wir jetzt
wollen, ist ein neuer Benutzer. Wenn wir für eine Organisation arbeiten, erstellen
wir normalerweise keine. Wir erstellen viele und ordnen
sie einigen Benutzergruppen zu. Lassen Sie uns also vielleicht stattdessen mit Gruppen beginnen
. Das ist normalerweise der Weg, aber
das ist nicht wirklich wichtig. Wir können an einem beliebigen Punkt beginnen und landen
am selben Ort. Aber fangen wir mit der Gruppe an. Wir erstellen eine Gruppe, damit wir eine Gruppe von Benutzern
erstellen können, und wir werden sie Admins nennen Ich werde eine Gruppe von Admins sein. Und jeder einzelne Administrator sollte ähnliche Berechtigungen
haben, und diese Berechtigungen
werden hier konfiguriert. Und Sie können ganz
oben den Administratorzugriff sehen. Das ist genau das, was wir brauchen. Wir nehmen das und wir
können sehen, dass es
vollen Zugriff auf
AWS-Services bietet , und das ist in Ordnung. Wir benötigen sie, um auf Dienste zugreifen zu können, aber sie werden
nur eingeschränkten Zugriff haben, um Finanzinformationen
einzusehen .
Also rufen wir sie an. Admins, und wir erstellen eine
Gruppe von Admins. Das ist jetzt erledigt, aber wir können sehen, dass wir keine Benutzer
in dieser Gruppe haben Jetzt können wir zu
Benutzern gehen und
einen Benutzer erstellen und ihn
dieser Gruppe von Admins zuordnen. Klicken wir also einfach auf Benutzer erstellen. Nennen wir es vielleicht
Administrator. Etwas anderer
Name. Nun, was wir brauchen, wir müssen ein Häkchen setzen, um Benutzern Zugriff auf die
AWS-Managementkonsole zu gewähren. Sie können sehen, dass es optional ist.
Und jemand könnte denken, ist das nicht die ganze Idee,
warum wir diesen Benutzer erstellen. Wir werden nicht auf die AWS-Konsole zugreifen. Dort sind wir
gerade, ja? Nun ja, das stimmt,
aber jeder Benutzer kann Konsolenzugriff
haben, oder was
wir programmatischen Zugriff nennen Ich werde dir im nächsten Video zeigen was der Unterschied ist und
wie man das konfiguriert Vorerst
müssen wir jedoch auf die Konsole zugreifen,
oder der Admin-Benutzer sollte
auf die Konsole zugreifen können , so wie wir es
gerade tun. Wir kreuzen das an,
gewähren Benutzerzugriff und klicken dann auf „Ich
möchte IMUser erstellen Hier können wir ein automatisch
generiertes Passwort
oder ein benutzerdefiniertes Passwort haben Benutzerdefiniert, ich werde es eingeben
können. Jetzt müssen Benutzer bei der nächsten
Anmeldung
ein neues Passwort erstellen . Dies wird empfohlen. Das ist praktisch, wenn Sie
dieses Konto für eine andere Person erstellen . Sie erstellen einen Benutzer, sagen
wir, ich weiß, Jack, Sie haben ihm ein Passwort gegeben
und dann klicken Sie darauf. Wenn er sich also anmeldet, muss
er
es bei der ersten Anmeldung ändern. Aber weil wir dieses Konto
für uns selbst
erstellen , würde ich sagen, entfernen wir das Häkchen und
wir können nur das Passwort verwenden, das
wir hier eingegeben haben Das war's, wir können
auf die Schaltfläche Weiter klicken. Speichern weiß es vielleicht. In diesem Stadium
können wir den Benutzer zu der Benutzergruppe hinzufügen, die wir vor 2
Minuten erstellt haben, wie Sie sehen können. wir ihn also hinzu. Als Nächstes. Wie Sie sehen können, können wir, falls wir noch keine Gruppe erstellt
haben, auch hier eine erstellen. Aber da wir bereits
eine Gruppe von Admins haben, können
wir einfach direkt mit dem nächsten Schritt fortfahren Das ist es. Hier ist
eine kleine Zusammenfassung. Der Benutzername ist Administrator. Er oder sie wird über
Berechtigungen von Admin-Gruppen verfügen und es wird ein benutzerdefiniertes
Passwort sein, für das das
erste Login nicht zurückgesetzt werden muss. Das ist cool. Lassen Sie uns diesen Benutzer erstellen. Und jetzt haben
wir diese
Anmeldeanweisungen. Wir können diese
Informationen kopieren oder alles
als CSV-Datei herunterladen, und ich werde diese Option verwenden. Wie Sie sehen können,
wurde die CSV-Datei mit den
Administratoranmeldedaten in meinen Downloads angezeigt. Das kann ich benutzen.
Aber was ich wirklich brauche, ist, dass diese URL ziemlich praktisch ist. Lass es uns vielleicht kopieren. habe es auch immer
noch in der Datei, aber vielleicht kopieren wir es hierher. Und jetzt werde ich mich von hier
abmelden. Ich bin immer noch
als Verkehrsteilnehmer angemeldet, weißt du noch? Also melden wir uns ab, wir können uns
entweder hier wieder anmelden. Aber dieses Mal als IAM-Benutzer, und wir benötigen eine 12-stellige
Konto-ID Aber denk dran, ich habe die URL kopiert. Lassen Sie mich einen weiteren Tab öffnen. Vielleicht zeige ich dir beide Möglichkeiten. Ich kann es hier einfügen. Merken Sie sich die lange
URL, ich kopiere sie einfach. Diese Konto-ID
ist tatsächlich schon vorhanden. Eine letzte Sache zum Tippen. Wenn ich auf Enter klicke,
besteht
der einzige Unterschied
darin, dass ich mich bereits
auf einer Seite befinde, auf der ich mich als Imuser
anmelden kann Ich muss das nicht wählen
und ich
habe auch schon eine Konto-ID für mich hinterlegt Jetzt möchte ich nur noch den Administrator
hinzufügen. Dies ist
der Name
des Benutzers, den wir gerade erstellt haben, und das Passwort, das wir für diesen Benutzer
erstellt haben .
Und jetzt kann ich mich anmelden. Aber bevor ich das mache,
lass mich vielleicht einfach zu diesem Tab zurückkehren. Und wie Sie sehen können, ist es eine
etwas andere Anmeldeseite, aber sie funktioniert genauso. Also die Konto-ID, die ich
tatsächlich von hier kopieren kann,
ist vielleicht der einfachste Weg. Lass uns zurückgehen. Ich kann es hier einfügen und
hier, wenn ich auf Weiter klicke, wie Sie sehen können, befinden
wir uns genau an derselben Stelle. Hoffe
das macht Sinn. Also, da ich das alles schon ausgefüllt
habe, lassen Sie mich einfach von hier aus anmelden. Schließ diesen. Okay. Wir sind
jetzt als IM-Benutzer angemeldet. Wie Sie sehen können,
sagt
der Administrator an dieser langen Kontonummer und
endet mit 8888 Sie können auch einen weiteren
Unterschied feststellen, denn Sie können sehen, dass der Zugriff verweigert wurde,
was Kosten und Nutzung angeht Wie ich bereits sagte, haben IM-Benutzer nur begrenzten Einblick in Finanzinformationen,
und das ist in Ordnung. Wir werden diesen Benutzer erstellen
, um Dienste zu erstellen. Sie müssen
nichts mit den Finanzen zu tun haben. Also hoffe ich, dass das hilft.
10. AWS CLI-Installation und API-Zugriffsschlüssel-Konfiguration: Im vorherigen Video haben wir den IAM-Benutzer
erstellt, und wir sind jetzt als IM-Benutzer
angemeldet Es heißt Administrator
und das ist unsere Kontonummer. Aber denken Sie daran, als es gefragt wurde
, ob wir Konsolenzugriff benötigen. Dies ist die AWS-Konsole und sie hat uns gefragt, ob wir überhaupt
darauf zugreifen möchten. Das mag auf den ersten Blick lächerlich
aussehen, weil
jemand sagen würde, natürlich wollen wir
Zugriff darauf haben, ja, aber nicht jeder Benutzer
wird diesen Zugriff benötigen. AWS hat auch einen
programmatischen Zugriff, und alles, was wir hier tun können, können
wir auch programmgesteuert von einem entfernten Standort
aus erledigen entfernten Standort
aus Und anstatt
zu versuchen, das zu erklären, lass es
mich dir einfach zeigen Das ist einfach der einfachste Weg. Gehen wir also zurück
zu unserer IM-Konsole. Ich bin nicht IM. Gehen wir zum IM, wo wir unseren Benutzer erstellt haben. Und wie gesagt, es
wird auch empfohlen,
für die IM-Benutzer zu identifizieren, nicht nur für Root-Benutzer, sondern lassen Sie mich auf
etwas anderes konzentrieren, denn was ich Ihnen zeigen
wollte, ist, ob
wir zu diesen Benutzern gehen ,
vielleicht klicke ich
hier,
egal wo hier oder dort. Das ist also unser Benutzer. Es heißt Administrator. Lass uns darauf klicken. Und was wir jetzt brauchen, sind
Sicherheitsnachweise. Lassen Sie uns auf Sicherheitsanmeldedaten klicken
und dann nach unten scrollen. Und hier
interessieren uns Zugangsschlüssel. Dies sind die programmatischen Zugriffsschlüssel, über die ich gesprochen habe Klicken wir auf Zugriffsschlüssel erstellen. Wir haben eine große Auswahl, aber wir wollen wirklich die erste, die
Befehlszeilenschnittstelle, denn
aus diesem Grund
möchte ich von einem Befehlszeilenschnittstelle, denn Remote-Server oder Laptop oder was auch immer aus eine Verbindung zu meinem AWS-Konto herstellen. Das ist es also. Ich
muss nur bestätigen, dass ich die
Empfehlungen
verstehe. Ich klicke auf Weiter. Hier kannst du
es beschreiben, aber ich werde einfach auf Create Access Key klicken. Und wie Sie sehen können, haben wir einen Zugangsschlüssel und einen
geheimen Zugangsschlüssel. Das entspricht dem Benutzernamen
und das entspricht
dem Passwort. Von einem entfernten Standort aus kann
ich mich also als
Administrator mit
einem solchen Benutzernamen, der Access Key genannt wird, und
diesem Passwort,
das als
geheimer
Zugriffsschlüssel bezeichnet wird
, bei diesem Konto Administrator mit
einem solchen Benutzernamen, der Access Key genannt wird, und
diesem Passwort, das als
geheimer
Zugriffsschlüssel bezeichnet wird
, bei diesem anmelden. Das ist ein wichtiger Moment, weil dieser geheime Zugangsschlüssel nur einmal angezeigt
wird. Lass mich dir zeigen, wie es
aussieht. Ich werde es später entfernen. Es ist sehr wichtig, dass
du das niemandem zeigst. Wie gesagt, das
entspricht Ihrem Benutzernamen und Passwort. Wenn also jemand das sehen kann, kann
er sich mit diesen Anmeldeinformationen bei Ihrem
AWS-Konto
anmelden .
Seien Sie also vorsichtig damit. Ich werde sie entfernen, bevor
dieses Video veröffentlicht wird. Aber was wir hier auch tun können, ist die CSV-Datei
herunterzuladen.
Ich werde darauf klicken. Wie Sie sehen können, handelt es sich dabei um
Administratoranmeldedaten. Nein, tut mir leid, das war
für das vorherige Video. Administrator Access Keys ist der, den wir gerade
herunterladen. Wir werden diese Informationen also
in dieser Datei haben . Also das ist es. Lassen Sie mich das minimieren und
lassen Sie mich das Terminal öffnen. Also das ist mein Laptop
hier. Ich bin zu Hause. Es kann ein PC oder Laptop oder
irgendwo ein anderer Server sein. Wie kann ich jetzt von hier aus auf dieses
AWS-Konto zugreifen? Was ich also brauche, ist AWS
CLI, so heißt es. Okay, wir benötigen AWS CLI, aber wenn Sie zum Beispiel
AWS-Version eingeben, ist die Wahrscheinlichkeit sehr gering, dass Sie AWS CLI
bereits installiert haben. Normalerweise müssen wir es zuerst
installieren und konfigurieren.
Also lass es uns jetzt machen. Lassen Sie mich einfach zu
unserem Browser zurückkehren und googeln, wie man AWS CLI installiert. Und jetzt bin ich auf T, aber
Sie können
nach jedem Betriebssystem googeln ,
auf dem Sie arbeiten. Also lass uns das überprüfen. Erster Link, lass uns nach unten scrollen. Hier haben wir die Anweisungen. Wenn Sie Windows verwenden,
würden Sie das für Macosd verwenden, aber ich verwende Linux, wie gesagt,
naja, es ist nicht einmal normales
Linux, es ist RM-Version, also muss ich
auch hier zur RM-Version von Linux wechseln Und was ich wirklich brauche, ist diese Befehle
einfach zu kopieren. Also kann ich auf
diese beiden Quadrate klicken, sie
jetzt kopieren und zu meinem
Terminal zurückkehren und sie einfach einfügen. Geben Sie ein und das war's. Lass es uns jetzt vielleicht klären. Also, wenn ich jetzt
noch einmal AWS-Version eintippe, wie Sie sehen können, habe
ich sie jetzt verfügbar. Okay, also wie
konfiguriert man es jetzt. Zum Glück hat es
das nicht kompliziert gemacht. Es ist der Befehl AWS, configure. Klicken Sie auf Enter, und jetzt werden
Sie nach diesem Zugriffsschlüssel gefragt. Das ist der eine. Denken Sie daran, das ist Ihr Zugangsschlüssel.
Sie können ihn hier kopieren. Lass uns zurückgehen. Wir fügen es ein. Treten Sie ein. Jetzt geheimer Zugangsschlüssel. Den haben wir
auch. Wir kopieren das. Das entspricht
Ihrem Passwort. Gehen wir zurück und fügen es hier ein. Jetzt werden Sie nach dem Namen
der Standardregion gefragt. Ich weiß, dass wir noch nicht
über Regionen gesprochen haben, aber die Region ist im Grunde genommen der Ort, an dem Sie Ihre
Ressourcen normalerweise erstellen möchten. Je nachdem, wo Sie sich befinden, wählen
Sie Ihre Region aus. Für mich ist es ein London, also sind es nur zwei Es ist nicht wirklich etwas, das
du eintippen musst. Sie können es leer lassen,
aber dann müssen Sie jedes Mal
angeben, wenn
Sie etwas erstellen. Sie müssen angeben, in welcher Region diese Ressource erstellt werden muss. Also für mich, weil die meisten meiner Ressourcen
in
der EU West Two sein werden , tut mir leid, sagten sie eins oder zwei? Es ist nur zwei. Aber ja, weil EUS eins eine Insel ist Also ich will alles
in London haben, ja. Also ist es EU West Two. Aber das
können
Sie später sowieso überschreiben Es ist also nur zu
Ihrer Bequemlichkeit, aber Sie können es
leer lassen, wie ich schon sagte Wenn Sie eine Standardeinstellung haben,
müssen Sie sie nicht eingeben, aber Sie können sie
überschreiben. Okay, geben Sie also das Format ein und
geben Sie es aus. Okay, das stört mich gerade nicht. Jetzt sollte ich von hier aus auf
mein AWS-Konto zugreifen können. Lassen Sie uns also vielleicht
mit der AWS-Hilfe beginnen. Es zeigt Ihnen alle Dienste, auf
die wir
über diese Befehlszeile zugreifen können. Wie Sie sehen, gibt es
im Grunde alles, worauf Sie in der Konsole zugreifen
können. Sie können auch über CLI darauf zugreifen. Und weil wir keine
Ressourcen haben, mag das schwierig sein, aber wir können diese IM verwenden, weil
wir Benutzer erstellt haben. AWS IM und dann
vielleicht wieder Hilfe. Sehen Sie, welche möglichen Befehle
wir für AWS IM haben. Dieser sieht okay aus. Benutzer auflisten. Okay. Benutzer auflisten.
Schau mal, was wir hier machen. Alles klar, kleiner Schluckauf,
denn das ist ein neues System. Wie gesagt, hier ist
nichts installiert. Es heißt, keine solche Datei
oder kein Verzeichnis weniger. Nun, ich vermute, weil
wir weniger installieren müssen. Ahoi. Also mach weiter, um weniger zu installieren Okay. Ein kleiner Schluckauf Lass es uns nochmal versuchen. Und wie
Sie sehen können, funktioniert es jetzt. Es weiß, dass wir einen
Benutzeradministrator haben. Es gibt uns die Benutzer-ID und einige weitere Informationen,
z. B. wann es
erstellt wurde oder wann
das Passwort zuletzt verwendet wurde. Auf diese Weise können wir von
unserem Laptop aus
über eine gemeinsame Leitungsschnittstelle auf unser AWS zugreifen .
11. AWS Free Tier, SSH-Schlüssel und „manuelle“ EC2-Serverkonfiguration: A Okay, hier bin ich in meiner AWS-Konsole Ich bin immer noch als
IM-Benutzeradministrator angemeldet, und der Service, den ich benötige,
heißt EC Two, und Sie können Services EC Two sehen, virtuelle Server in der Cloud. Das ist genau das, was
wir brauchen. Ich habe darauf geklickt und wie Sie sehen können, laufen die
Instanzen auf
Null, weil ich noch keine virtuellen Server
habe. Lass uns einen erstellen Um eine zu erstellen, können wir auf die orangefarbene Schaltfläche
zum Starten einer Instanz klicken. Ich klicke darauf und jetzt können wir alle
Details für unseren Server angeben. Zuerst ist der Name und der Name
ist wirklich nicht wichtig, aber das ist der Name Marx-Server. Es ist eigentlich egal,
wie du ihn nennst. Es ist nur, weißt du, damit
du erkennst, dass es deins ist. Und wir scrollen nach unten
und wir können
Betriebssysteme sehen , die für unseren Server
verfügbar sind. Amazon Linux ist standardmäßig
ausgewählt, und Amazon Linux ist wie ein Linux-Fedora-basiertes System mit vielen Optimierungen von
Amazon, das Wir können aber auch macOS haben. Wir können Ubuntu Windows haben. Sie werden alle
Amazon-Machine-Images genannt. Wenn Sie auf diese Schaltfläche klicken, werden
Sie feststellen,
dass es Tausende und
Abertausende mehr davon gibt. Aber lassen Sie uns vielleicht
einfach bei den Grundlagen bleiben. Ich werde einfach Ubuntu wählen. Was an
Ubuntu oder Amazon Linux wichtig ist, Sie können sehen, dass sie für ein kostenloses Kontingent in
Frage kommen, und ich werde gleich
darüber sprechen. Vorerst werde ich vielleicht zu Ubuntu
wechseln, das ebenfalls für das kostenlose
Kontingent in Frage kommt. Aber das ist
vorerst in Ordnung. Wir werden darauf
zurückkommen. Ich scrolle nach unten. Hier kann ich die
Architektur meines Prozessors wählen. Es ist 886, es ist normalerweise
Intel oder AMD oder RM. Ist AWS hat ihre eigenen Prozessoren. Sie werden Gravitonen genannt. kannst du benutzen,
wenn du willst. Aber ich bleibe einfach beim X 86. Hier können Sie den
Typ Ihres Servers wählen. Wir haben Tito Micro. So wie wir Tito Micro sehen können
, lass mich das
vielleicht öffnen Sie können sehen, dass
viele von ihnen verfügbar sind, und nach unten scrollen, da Sie viele,
viele davon sehen können Aber was an diesem Produkt wichtig
ist, ist, dass es auch das Etikett hat, das für das kostenlose
Kontingent in Frage kommt. Lass uns. Sehen Sie, dieser Server hat eine virtuelle CPU und
einen Gig Arbeitsspeicher. Nachfolgend finden Sie die Preise, wie viel es kostet, ihn zu betreiben. Aber ich möchte noch
eine Sache besprechen, weil wir wieder auf
das kostenlose Kontingent zurückkommen, meine ich. Scrollen wir also vorerst nach unten und wir haben Keeper. Keeper ist ein SSH-Schlüssel
, mit dem wir später von einem entfernten Standort aus eine Verbindung
zu unserem
Server herstellen können später von einem entfernten Standort aus eine Verbindung
zu unserem
Server Wie bei diesem Laptop, sagen wir,
wenn ich von
meinem Laptop aus eine
Verbindung zu meinem Server herstellen möchte, benötige
ich einen Keeper Und wie Sie sehen können, habe ich
keinen Hüter, und es heißt, ich kann auch ohne Hüter
weitermachen, aber das ist nicht empfehlenswert. Das ist nicht wirklich das, was ich will. Ich möchte einen neuen Keeper erstellen. Ich klicke auf diesen Button
und ich kann diesen Keeper nennen,
wie auch immer, Marx-Schlüssel
vielleicht. Wissen Sie was? Vielleicht wechseln wir hier
zu ED 255, bla, bla,
bla, weil das die neuere
und bessere Version dieses Schlüssels ist und bessere Version dieses Schlüssels Aber beide werden gut funktionieren. Jetzt klicken wir einfach auf
Create Keeper. Wie Sie sehen können, wurde es auch automatisch
heruntergeladen. Ich werde es in meinen Downloads sehen, den
Marx-Unterstrich-Punkt p. Das ist der Schlüssel, den ich benötige, um später
eine Verbindung zu diesem Server Wie Sie sehen können, wurde
jetzt der Keeper
Marx-Schlüssel ausgewählt . Ich bin so glücklich damit Jetzt haben wir Netzwerkeinstellungen, und ich
möchte jetzt nicht wirklich über
Netzwerkeinstellungen sprechen , da
dies ein sehr breites Thema ist Aber wenn wir
alles so lassen, wie es ist, wird
dieser Server sowieso
genauso funktionieren , wie ich es möchte Wir wollen also nur sichergehen, dass die automatisch zugewiesene öffentliche
IP aktiviert ist
und dass eine
Sicherheitsgruppe erstellt wird, und dass eine
Sicherheitsgruppe erstellt SSH-Verkehr
von überall her ermöglicht Auf diese Weise können wir eine Verbindung
zu unserem Server herstellen. Wenn die oben genannten
genau so sind wie hier, ist
das alles, was ich wirklich brauche.
Damit wir weiter scrollen können Wir haben also Speicher konfiguriert. Das ist die
Festplatte für unseren Server. Und wie Sie sehen können, hat
sie standardmäßig acht GB des
sogenannten GP-Two-Root-Volumes. GP Two ist eine ältere
Version von SSD-Laufwerken. Wir können das auf GP Three, eine
neuere Version, umstellen , und jetzt möchte
ich wirklich zu dieser kostenlosen Stufe
zurückkehren. Wie Sie sehen, ist es
auch hier, weil die Menge an Speicherplatz, die
wir verwenden , auch auf das kostenlose Kontingent auswirkt. Und wie Sie sehen können, steht
dort, dass ich
30 GB EBS-Speicher haben kann , wenn ich das kostenlose Kontingent nutzen
möchte Ich werde diese Zahl von acht auf 30 ändern. Sie können es auch auf acht belassen, aber ich kann bis zu 30 haben, also werde ich
es auf 30 ändern. Warum nicht? Ich möchte
es zusammenfassen. Wenn Sie ein Root-Volume von GP Two oder GP
Three mit
bis zu 30 Gig ausgewählt haben
und Sie dann einen
Instance-Typ haben, der für das kostenlose Kontingent Frage kommt, und wenn Sie ein
Betriebssystem haben , das
ebenfalls für das kostenlose Kontingent in Frage kommt, dann kann dieser Server jeden Monat
750 Stunden
kostenlos laufen jeden Monat
750 Stunden
kostenlos Im nächsten Monat und
im darauffolgenden Monat
wird
die Anzahl der Stunden zurückgesetzt, wird
die Anzahl der Stunden zurückgesetzt sodass Ihnen für den neuen Monat neue 750
Stunden zur Verfügung stehen. Wenn es sich um ein neues
AWS-Konto handelt und Sie für ein Jahr Anspruch auf ein kostenloses
Kontingent haben , kann dieser Server
ein ganzes Jahr lang völlig
kostenlos betrieben ein ganzes Jahr lang völlig
kostenlos Es wird Sie nichts kosten. Solange Sie keine der hier
genannten
überschreiten. In Ordnung, also lass uns zurückgehen. Nun, das ist es. Ich brauche hier
nichts anderes. Ich kann einfach die Instanz starten. Also starte ich die Instance und mein
Server wird gerade erstellt und er ist jetzt betriebsbereit. Es ist ein erfolgreich
eingeleiteter Start der Instance. Ich kann auf diese
ID für meine Instance klicken. Instanz bedeutet virtueller Server Wenn ich darauf klicke,
kann ich Mark Server sehen und der Status ist initialisiert Das heißt, es ist noch
nicht ganz auf dem neuesten Stand, aber es wurde erstellt Wenn ich jetzt auf diese Schaltfläche klicke, können
Sie weitere
Informationen zu diesem Server sehen. Und eine der
wichtigsten für mich im
Moment ist meine öffentliche
IPV-Vier-Adresse Eine öffentliche Adresse bedeutet, dass
ich
von überall
auf der Welt eine Verbindung zu diesem Server herstellen kann von überall
auf der Welt eine Verbindung zu diesem Server Lass mich das vielleicht zuerst aktualisieren. Mal sehen, ob das
noch initialisiert wird. Das ist in Ordnung. Aber
obwohl es initialisiert wird, können
Sie bereits versuchen, eine Verbindung
herzustellen Ich kann hier auf diese
Schaltfläche klicken, um eine Verbindung herzustellen. Und ich habe hier
eine ziemliche Auswahl. Die erste Möglichkeit, eine Verbindung
zu meinem Server herzustellen, heißt Easy to
Instance Connect. Wenn ich unten auf diese Schaltfläche klicke, wird mich
diese AWS-Konsole zu diesem Server weiterleiten und mich dann am Server
anmelden. Ich kann jetzt Befehle ausführen. DFH ist zum Beispiel
ein Befehl, der mir mein Root-Volume,
die Festplatte, die wir angeschlossen haben,
anzeigt . Er sagt,
dass 29 Gig
und 1,6 Gig verwendet werden, also habe ich immer noch
28 Gig zur Verfügung Das macht Sinn, weil
wir ein Volumen von 30 GB erstellt haben. Wenn ich also noch einmal hierher gehe, kann ich in den Speicher gehen und wir können
sehen, dass es tatsächlich
30 GB groß ist. Ordnung, so wird es also lokal von der AWS-Konsole aus
gemacht. Aber was ist, wenn ich von
meinem lokalen Terminal auf meinem Laptop aus eine
Verbindung herstellen möchte?
Lassen Sie mich einfach die Größe ändern Damit ich Terminal eingeben kann. Und das ist mein Laptop. Das ist das Terminal auf meinem
lokalen Laptop hier zu Hause. Ich kann immer noch hierher gehen, auf Punkt Connect klicken, aber
jetzt habe ich ein paar Hinweise. Wenn wir zum SSH-Client wechseln, wird mir mitgeteilt, was ich tun kann, um von zu Hause aus
eine Remoteverbindung zu diesem Server Es heißt SSH-Client öffnen. Nun, mein Terminal
hat bereits einen SSH-Client oder mein System hat, sollte
ich sagen, einen SSH-Client. Als Nächstes muss ich meinen privaten
Schlüssel ausfindig machen. Erinnerst du dich an den Schlüssel
, den wir heruntergeladen haben? Ich meine, es wurde
automatisch bei
maxkee dot p heruntergeladen . Du kannst es in Downloads
anzeigen Ja, es ist in Downloads enthalten. Hier muss ich
zu meinem Download-Ordner navigieren. Ich sehe die Downloads. Und ich kann sehen, dass
das die Datei ist , die
heruntergeladen wurde, maxkey dot pm Ordnung. Also was
ich als Nächstes tun sollte, ich sollte diesen Befehl ausführen. Ändern Sie den Modus 400 Marx-Taste. Ich kann auf diese Rechtecke klicken
, um den Befehl zu kopieren. Geh zurück zu meiner 1-Sekunde.
Lass es mich größer machen. Vielleicht klären Sie das. In Ordnung. Jetzt kann ich es einfügen und dezentrieren. Was ich
als Nächstes tun sollte, über öffentliches
DNS eine Verbindung zu Ihrer Instanz herstellen. Das Beispiel finden Sie hier. Ich werde auf diesen
Befehl klicken, um eine Marx-Taste zu drücken. Hier vorbei und das sollte mich zu meinem Server
bringen. Dies ist nur eine Standardwarnung. Fragt Sie, ob Sie
sicher sind , dass
Sie wissen, womit Sie sich verbinden. dieser Server nicht bekannt ist, Da dieser Server nicht bekannt ist, werden Sie gefragt, ob Sie
sicher sind , dass Sie wissen, zu welchem Server
Sie sich verbinden. Aber ich bin mir sicher
, weil das mein Server ist, also tippe ich Enter und jetzt bin
ich auch auf meinem Server. Wenn ich DFH eintippe, kannst
du genau sehen, dass das
mein Server ist , weil er
eine 29-Gig-Festplatte hat Mir stehen 28 Gig zur Verfügung. Genau das haben wir vor einer Minute
gesehen als ich mit der AWS-Konsole eine lokale
Verbindung hergestellt habe. Aber dieses Mal, weißt du, kann
ich das minimieren, nur
um sicherzugehen, dass es klar ist. Ich verbinde mich von meinem Laptop aus
, den ich zu Hause habe, und ich bin mit meinem Server verbunden, der sich irgendwo in der AWS-Cloud
befindet. Und ich kann einige
dieser Geräte ausführen. Sie können sehen, dass das mein Laufwerk ist. Du kannst rennen wie was auch immer. Sie können die CPU-Auslastung, die
Speicherauslastung und
all das coole Zeug sehen Speicherauslastung und
all das coole Zeug Und wenn ich Cut starte, schauen wir uns die Betriebssystemversion an.
Ich kann sehen, dass es sich tatsächlich um ein
Ubuntu-Betriebssystem handelt. Okay, so erstellt man den Server und stellt von einem entfernten Standort aus eine Verbindung
zu ihm her. Wenn du aufhörst,
mit deinem Server zu spielen, würde
ich vorschlagen, dass du ihn auch hier
zerstörst, denn
wenn du ihn einmal zerstört
hast, sparst du auch diese
Stunden auf dieser kostenlosen Stufe. Denken Sie daran, dass Sie 750 Stunden haben. Aber wenn ich jetzt
diese Instanz zerstöre ,
Instanzstatus, beende. Ja, beenden. Ich entferne
diesen Server, wie Sie sehen können, er wird heruntergefahren,
weil
ich vielleicht morgen zwei Server einrichten möchte Und wenn die Gesamtstunden für alle meine Server 750 Stunden nicht
überschreiten, wird
mir trotzdem
nichts berechnet, denn das insgesamt
750 Stunden
für alle Dienste
, die ich hier betreibe . Ich kann also einen Server
einen Monat lang
ununterbrochen betreiben oder ich kann zwei
Server kontinuierlich für, sagen
wir, 15 Tage oder vielleicht
drei Server für zehn Tage betreiben. Nichts davon wird 750 Stunden
überschreiten. Mir wird also immer noch nichts berechnet. Hoffe das macht
Sinn. In Ordnung, und wir sehen uns in
der nächsten Folge. Tschüss.
12. VSCode-Installationsprozess: In diesem Video werden wir
VS-Code installieren. VS-Code ist eine IDE, was eine integrierte
Entwicklungsumgebung bedeutet Diese ID kann Ihnen helfen,
nicht nur mit Terraform,
sondern auch mit Python oder
anderen Programmiersprachen zu arbeiten sondern auch mit Python oder
anderen Programmiersprachen Es kann Ihnen helfen,
mit antwortbaren Yaml
- und anderen Dateiformaten zu arbeiten . Es ist zwar nicht
erforderlich, dass VS-Code installiert ist, wenn
Sie mit Terraform arbeiten, aber es ist ein sehr
hilfreiches Tool, dessen Installation nur etwa eine Minute
dauert Mal sehen, wie es gemacht wird, und ich bin mir sicher, dass es Ihnen
auch gefallen wird Es ist ein sehr beliebtes Tool und
es ist sehr beliebt bei AASM. vielleicht zuerst in Windows Lassen Sie mich vielleicht zuerst in Windows meinen Browser öffnen Ich werde einfach nach dem VS-Code-Download
suchen. Verwenden wir den ersten Link oben, und es könnte nicht einfacher sein. Sie laden einfach die
Version für Windows herunter. Und sieh dir den Downloader an, warte ein paar Sekunden. Jetzt lassen
wir es einfach laufen Ich akzeptiere die
Vereinbarung als Nächstes und werde das Symbol auf
dem Desktop hinzufügen und
sicherstellen, dass es dem Pfad hinzugefügt wird. Es sollte standardmäßig angekreuzt sein, also sollte es in
Ordnung sein. Als Nächstes installieren Wenn wir auf Fertig stellen klicken,
sollte auch
der VS-Code gestartet werden. So
sieht es aus. Wie Sie sehen können, hat es
einige Hervorhebungen, eine automatische Vervollständigung und viele andere nützliche Funktionen. Wie gesagt, es lohnt sich, es installiert
zu haben. Aber jetzt schauen wir uns die Linux-Installation
an. Das ist meine Ubunto-Distribution. Auch hier werde ich einfach meinen Browser
öffnen. Aber weißt du was,
bevor wir etwas tun, lass mich
vielleicht auch die
Kommandozeile öffnen und wir
sollten immer das Get-Update
durchgehen. De und höher, um auch ein Upgrade zu bekommen, nur für den Fall,
aber es sieht so aus,
als ob
ich auf dem neuesten Stand bin, also kann ich es schließen und
jetzt den VS-Code herunterladen. Wir werden zuerst T wieder ganz
oben wählen und jetzt
statt Windows wählen
wir Ubuntu, weil
das meine Distribution ist. Sie können sehen, es ist auch ein
Paketmanager für MAC. Ich werde
den Vorgang nicht auch auf dem MAC durchführen, weil es
genau das Gleiche ist. Es ist sehr einfach.
Das einzige ist, dass mein Ubuntu auf meinem
MacBook parallel läuft Das heißt, ich muss die
RM-Version dieses Pakets wählen. Also klicke ich auf dieses ARM 64 Debian. Ja. Ich klicke darauf.
Es wird heruntergeladen. Also kann ich darauf klicken,
Software installieren, öffnen. Möglicherweise unsicher, da es von einem Drittanbieter
bereitgestellt wird, aber ich weiß, dass es sicher ist,
also werde ich es installieren Und wir brauchen das Sudo-Passwort. Und es heißt Vorbereitung. Jetzt hat sich das Symbol geändert, also glaube ich, dass alles erledigt ist. Schließe es, schließe es und ich
suche einfach nach VS-Code. Wir können sagen, dass es korrekt
installiert wurde, also öffnen Sie es einfach und wir haben dasselbe Fenster, es sieht
genauso aus wie unter Windows. Das ist alles, worum es bei der Installation von
VS-Code geht.
13. VSCode-Erweiterungsinstallation: Der VS-Code ist jetzt installiert. Lassen Sie uns nur eine
kleine Funktion hinzufügen. Da wir mit Terraform
arbeiten werden, werden
wir unserem VS-Code die
Terraform-Erweiterung hinzufügen Das ist die wahre Stärke,
die wahre Stärke von VS-Code. Sie haben diese Erweiterungen. Ich meine, du klickst auf die
vier kleinen Quadrate hier, da stehen Erweiterungen. Also klicke ich darauf und du wirst viele, viele
verschiedene Erweiterungen
finden,
je nachdem, womit du arbeiten
möchtest. Hier
hast du zum Beispiel etwas für Python. Sie können sehen, dass es
151 Millionen Mal heruntergeladen wurde, und Gitans ist ein weiteres , an dem Sie später
interessiert sein könnten Aber jetzt
suchen wir nur nach Terraform. Und Sie werden nicht einen,
sondern auch viele von ihnen finden. Und du kannst sie ausprobieren. Ich meine, einer von ihnen kann besser
sein als der andere, und ich persönlich habe die
ersten beiden benutzt. Sie können sehen, dass einer
von Anton Kulikov und einer direkt
von HashiCorp ist Also werden wir heute einfach das offizielle von HashiCorp ausprobieren . Sie können in der Bewertung sehen, dass
es nur 2,5 Sterne hat, aber ich bin mir nicht sicher warum, weil
es nicht wirklich schlecht ist Ich habe damit gearbeitet und ich habe
es gefunden, es funktioniert wie erwartet. Also lass es uns installieren. Wir
klicken einfach auf das kleine Installieren und fertig. Es
wurde installiert. Nach einer Weile ist das
jetzt abgeschlossen, und es wird dir auch sagen,
was es mit dieser Erweiterung macht. Es heißt Syntaxhervorhebung und Autovervollständigung für
Terraform. Das ist genau das, was wir brauchen. Sie werden sehen, wie es
aussieht, sobald wir es verwenden. Das heißt, jetzt sind wir
bereit , mit Terraform zu arbeiten
14. Workspace- und Terraform-Provider-Konfigurationsprozess: Wir haben VS-Code. Wir haben die Terraform-Erweiterung VS
Code Bereiten wir nun unseren Arbeitsbereich in dem wir all unsere Arbeit speichern werden Du
kannst zum Beispiel ein Terminal öffnen und entscheiden, dass ich mich in
Home Parallels Das ist in Ordnung. Was ist hier? Ich glaube nicht, dass es
etwas Interessantes gibt. Ich werde einen neuen Ordner erstellen und
ihn Terraform nennen. Die Terraform. Also werde
ich in meinem Home-Ordner einen Ordner namens Terraform haben Das wird mein Arbeitsbereich sein.
Ich werde es einfach schließen. Hier können wir auf
das obere Symbol klicken, den Explorer, und wir
können auf Ordner öffnen klicken. Und wir werden den Ordner öffnen
, den wir gerade erstellt haben,
den Terraform-Ordner Lassen Sie uns ihn öffnen und er sollte
leer sein, weil wir ihn
gerade erstellt haben Ja, ich vertraue darauf, dass das mein Gerät ist. Vielleicht mache ich es größer
und wir können
unseren Anbieter konfigurieren. Ich habe bereits erwähnt , dass dieser Anbieter diese Brücke ist. Das verbindet Terraform
mit dem Bereich, in dem Sie Infrastruktur erstellen
möchten, und wir wollen mit AWS zusammenarbeiten, wir brauchen einen AWS-Anbieter Lassen Sie uns dazu googeln, wie dieser AWS-Anbieter aussehen
sollte Ich werde den Terraform
AWS-Anbieter googeln. Ganz oben haben wir den
AWS-Anbieter HashiCor. Lass uns darauf klicken
und das war's. Sie sagen, dass es so gemacht wird, aber sie haben auch
die Ressource hier. Wir werden noch keine Ressource
erstellen. Wir sind nur
am Anbieter selbst interessiert. Lassen Sie mich diesen Teil einfach kopieren. Wir kommen schon, sehen.
Gehen wir jetzt zurück zum VS-Code. Und in meinem Ordner habe ich
hier kleine Symbole Neue Datei, und ich werde eine neue Datei erstellen
und sie Provider nennen. Ich werde den Erweiterungspunkt TF hinzufügen. Sobald ich das getan habe, schau mal,
das Symbol auf
der linken Seite hat sich geändert, denn wenn ich auf Enter klicke, habe
ich eine neue Datei und der VS-Code genau
erkannt,
dass es die VS-Code-Erweiterung war , die
wir installiert haben. Diese Erweiterung hat
die Terraform-Datei erkannt, die wir auch hier
in der unteren rechten Ecke sehen können Es kann sehen, dass wir mit
Terraform arbeiten. Lassen Sie mich jetzt den Teil einfügen, den
ich von dieser Website kopiert habe. In diesem Teil erfahren Sie in Terraform,
womit wir arbeiten Bitte beachten Sie, dass Sie mehrere Anbieter haben können Vielleicht arbeiten Sie mit AWS, aber vielleicht auch mit Azure
und vielleicht mit Proxmox und vielleicht mit Sie können hier
mehrere Anbieter einfügen, aber in unserem Fall werden
wir nur mit AWS arbeiten, das ist
also der einzige
Anbieter, den Es ist jedoch möglich, hier mehr als
einen Anbieter
anzugeben. Und hier heißt es, konfiguriere
den AWS-Anbieter. Möglicherweise wissen Sie bereits, dass wir
diesen Teil der Region bereits
zuvor spezifiziert haben, als wir mit
IM-Gruppen und IM-Benutzern
gearbeitet Wir haben die AWS-Region angegeben
und ich habe EU West Two angegeben. Lassen Sie mich einfach Command S auf dem
Mac oder Controls
unter Windows drücken , das wäre so. Befehl S, um das zu speichern, und
ich werde auf das Terminal klicken. Ich werde neues Terminal sagen.
Ich werde hier eröffnen. Wenn ich nun AWS configure
eintippe, haben wir das
bereits in der Vergangenheit getan. Wir konfigurieren den Zugriffsschlüssel, wir konfigurieren den geheimen Schlüssel
, der wie Benutzer und Passwort ist. Das ist es, was
Terraform für den
Zugriff auf die AWS-Cloud
verwenden wird Zugriff auf die AWS-Cloud Wenn ich dann erneut auf Enter klicke, gebe ich auch die
Standardregion EUS zwei ist eigentlich London, aber vielleicht möchten Sie
Ihre Ressourcen in einer
anderen Region erstellen , oder vielleicht möchte ich sogar
diese nächste Ressource erstellen , die
wir erstellen werden, vielleicht möchte ich
sie woanders haben. Auf diese Weise kann ich alles,
was ich hier angegeben habe, überschreiben. Wenn ich diese
Einstellung unverändert lasse, bedeutet das, dass meine
Ressource, z. B. der
Server, in der Region USA Ost erstellt wird. Wenn ich es also entferne, wird
der Standardwert verwendet
, der EU West Two ist. Ich
hoffe, das macht Sinn. Es gab auch Ausgaben, aber wir haben nicht gesagt,
an welcher Standardausgabe wir interessiert
sind. Was ich aber machen werde, werde
ich hier abgleichen. Ich werde den Eintrag belassen, aber ich werde auch mit dem abgleichen, was ich
als Standardregion habe. Aber ich werde mich daran erinnern, dass
dies der Ort ist
, an dem ich diesen Wert überschreiben kann. Also befehlen Sie S noch einmal
und das war's. Wir haben unseren Arbeitsbereich. Es ist dieser Terraform-Ordner, und wir haben die
Anbieterkonfiguration
15. Terraform Init- und Terraform-Lockdatei: Lassen Sie uns nun über den Befehl Terraform Init sprechen. Terraform darin ist
der erste Befehl, den wir verwenden
möchten, wenn es sich um einen neuen Arbeitsbereich
handelt, und wir haben noch nie Also müssen wir alles initialisieren. Lassen Sie mich einfach diesen Befehl ausführen und Sie werden sehen, was ich meine Ich lasse Theraform im Grunde einfach
laufen. Das ist alles was es ist.
Drücken wir die Eingabetaste. Was Sie sehen können, ist, dass es das Backend
initialisiert, es initialisiert die
Provider-Plugins
und es wird uns
alles sagen, was es tut Sie können sehen, dass
HashiCur installiert wird, es ist bereits fertig. Es dauert nicht lange,
aber was Sie
hier sehen können , dass der Anbieter
installiert wurde, wurde Es ist Version 583 Punkt eins. Siehe Terraform hat eine Protokolldatei
erstellt. Es heißt Terraform Log HCL, und wir können Denken Sie daran, wir hatten nur einen
Terraform-Ordner und eine Datei. Aber schauen Sie sich jetzt um.
Wir haben noch einen Ordner. Es ist ein versteckter Terraform-Ordner. Es gibt noch ein paar Dateien und wir haben auch
dieses Terraform-Protokoll In diesem Ordner hat
Terraform also
alle Binärdateien heruntergeladen, die es für die Zusammenarbeit mit dem
AWS-Anbieter benötigt
, und Terraform Log enthält Informationen für Terraform . Welche
Version es für die Zusammenarbeit mit dem
AWS-Anbieter benötigt
, und Terraform Log enthält Informationen für Terraform. Welche
Version dieser Binärdateien wurde installiert? Wir können sehen, dass es Version 583 Punkt eins ist. Das liegt daran, dass die Einschränkung, die
wir Terraform gegeben haben
, darin besteht , dass es
Version fünf oder höher sein sollte Wir haben
Version 583 Punkt eins heruntergeladen. Was ich meine, wenn wir
zu dieser Anbieterdatei gehen, können
wir sehen, dass wir angegeben haben, dass wir eine
Version des AWS-Anbieters benötigen dass wir eine
Version des AWS-Anbieters höher
ist als Version
fünf Punkt Null Terraform hat also die
neueste Version heruntergeladen, nämlich 5831. Das sind also einfach zusätzliche
Informationen zu Binärdateien
, die sich in
diesem Punkt-Terraform-Ordner befinden
16. Erster Server mit Terraform: Das ist großartig. Wir sollten
jetzt bereit sein,
unseren ersten Server in der
Cloud mit Terraform zu erstellen unseren ersten Server in der
Cloud mit Terraform Ich habe mich bei meinem AWS-Konto angemeldet. Die Region, die wir
bereits erwähnt haben, ist hier, also sind wir zwei London. Anfänglich hatten
wir im
Anbieterkonflikt Seast One, das war North Virginia, aber ich möchte meine
Ressourcen in der Nähe meines Wohnortes aufbauen Für mich
ist London also am nächsten, nur zwei. Das ist also im Grunde
das, was wir
in unserer Provider-Dot-TF-Datei haben . Ich sagte, ich möchte sie
in Region Ust zwei haben, und wir haben
unseren Terraform AWS-Anbieter bereits initialisiert Also sollte es jetzt mit AWS funktionieren können
. Also, wie erstelle ich hier einen Server? Wie wir sehen können,
haben wir keine Instanzen. Instances bedeutet virtuelle Server, und virtueller Server
wird in AWS Elastic
Compute Cloud auch EC
Two genannt , und alles, was wir
in AWS erstellen, wird Ressource genannt. Also was ich jetzt googeln kann, ich kann Terraform googeln,
EC zwei Ressourcen Und der allererste Link, da steht AWS-Instanz Nun, das ist genau das
, was ich brauche. Wenn wir nach unten scrollen, werden
wir tatsächlich viele Beispiele dafür sehen wie wir
eine Instanz in AWS erstellen können. Aber lassen Sie uns ganz
nach oben zurückkehren. Einfaches Beispiel mit AMI-Suche. Aber weißt du was? Ich werde es noch einfacher
machen. Wir werden nicht
einmal die AMI-Suche verwenden. Ich werde das AMI einfach fest codieren. Ich werde dir zeigen, was ich meine. Ich brauche
im Grunde nur etwa fünf Codezeilen, und ich werde einfach auf meinem PC
nachschauen, um es zu kopieren. Ich werde zu meinem VS-Code zurückkehren und hier eine weitere
Datei erstellen, eine neue Datei. Ich werde es Server nennen. Punkt Tf. Nochmals, Terraform-Datei. Ich werde es
hier einfügen. Was ist das? Das Erste,
das erste Wort ist Ressource. Wie gesagt, alles, was wir erstellen
wollen , wird als Ressource bezeichnet. Der zweite Teil ist, um welche
Art von Ressource es sich handelt und um welche AWS-Instanz es sich handelt. Instanz bedeutet virtuelle
Maschine oder mit anderen Worten, elastische Compute-Cloud, die
einfach zu instanzieren ist. So nennt es AWS einfach. Das heißt, wir werden einen virtuellen Server
erstellen, und das ist der Name. Ich
kann es wie auch immer nennen. Das kann es vielleicht ändern. Kein Web, vielleicht kein Webserver. Ich möchte es
Mark- oder Marx-Server nennen. Ich kann es wie auch immer nennen.
Spielt eigentlich keine Rolle. Das AMI kann
ich selbst spezifizieren. Was ist AMI? Wir haben uns bereits mit AMI
befasst. Ich bin mir nicht sicher, ob Sie sich erinnern,
aber wenn wir zu AWS gehen, haben wir einen
Server manuell erstellt. Wir haben dann auf diese
Startinstanz geklickt, und hier haben wir
unser Betriebssystem ausgewählt und
uns dort für Ubuntu entschieden Jedes Betriebssystem hier wird eine Amazon-Maschinen-Image-ID haben Dies ist diese Amazon
Machine Image-ID. AMI ist 05 bla bla bla. Sie können es auch hier sehen. Jedes
einzelne Betriebssystem, zum Beispiel Red Hat, wird eine
andere
Amazon-Computer-Image-ID haben andere
Amazon-Computer-Image-ID Wenn du zu Ubuntu gehst, möchte ich
vielleicht
meinen Server auf Basis des
Ubuntu-Betriebssystems bauen . Das ist die Kennung, die ich benötige, und ich kann sie einfach kopieren
und in meinen Code einfügen. Ich muss es nur hier hinzufügen. Ich muss es als
Zeichenfolge vom Datentyp Zeichenfolge hinzufügen,
was bedeutet, dass ich
doppelte Anführungszeichen verwenden muss und
Command V verwende , um die
Amazon-Maschinen-Image-ID einzufügen. Als Nächstes folgt der Instance-Typ, der standardmäßig auf T
Three Micro konfiguriert ist. Ich meine, das haben wir kopiert. Aber wenn wir noch einmal
zu diesem AWS-Konto zurückkehren, können
wir uns an die
drei Stufen erinnern, über die wir bei der Erstellung eines AWS-Kontos
gesprochen haben. Wir überprüfen T Three Micro, T Three Micro nicht über das für
das kostenlose Kontingent in Frage kommenden Tag verfügt. Das heißt, wir werden dafür bezahlen. Wenn Sie ein neues AWS-Konto haben, haben
Sie dieses kostenlose Kontingent. Ich würde also vorschlagen
,
stattdessen T two Micro zu verwenden , da dies Teil der für das kostenlose Kontingent infrage kommenden Services ist. Gehen wir also zurück und
ich werde das
T three micro auf T two micro ändern . Und dann die Tags, dieses
Namensschild ist einfach das, was Sie hier
platzieren würden , wo wir
einen Namen für unsere Instanz ausgewählt haben.
Also werde ich es ändern. Du kannst es natürlich lassen, aber ich werde es in was ändern? Mex erster Server. Ordnung. Und jetzt mache ich
einfach Command S und ich habe
alles gespeichert, was ich
brauche, um meinen ersten Server zu erstellen.
17. Terraform-Plan und Terraform-Anwendung-Befehle: Okay, wir haben alles, was wir brauchen
. Also, wie erstellen wir diesen Server? Gehen wir zunächst zurück zu unserem AWS. Lassen Sie mich zurückgehen, um
die Anzahl der Instanzen zu zeigen. Wie Sie sehen können, laufen bei uns
keine Instanzen, was bedeutet, dass wir
keine virtuellen Server haben. Wenn ich darauf klicke, musst
du auch
sicherstellen, dass es sich um falsche Regionen handelt. Wir werden
unseren Server in London einrichten, das ist EUS zwei.
Lassen Sie uns ihn also überwachen. Ich lasse es einfach so wie es ist, und wir haben keine
laufenden Instanzen. Ich kann das sogar entfernen, wodurch mir alle Instanzen angezeigt
werden, auch wenn sie gestoppt sind, aber wir haben immer noch keine. Also gehe ich jetzt zurück zu meinem Code zum VS-Code,
zu meinem Terminal. Ich werde es vielleicht löschen. Und der erste Befehl, den ich vielleicht ausführen
möchte , heißt Terraform Plan Und der Terraform-Plan
zeigt mir alles, was er
in der AWS-Cloud erstellen wird,
aber er verwendet
diese Ressourcen nicht,
was bedeutet, dass es sich nur
um Informationen für mich handelt Lassen Sie mich einfach
diesen Befehl ausführen und Sie
werden sehen, was ich meine Ich klicke auf Enter und der
Plan wird erstellt. Ordnung, das ist der Plan.
Lass es mich größer machen. Was steht da? Es heißt, dass der
Mark-Server erstellt wird. Das AMI wird das sein. Das liegt daran, dass wir das
spezifiziert haben. Es ist das Ubuntu-AMI. Der Instanztyp
ist T two micro. Und der Name wird
Mark First Server sein
und alles andere, sagt Terraform, wird es nach der Bewerbung
bekannt sein Es weiß noch nicht,
was es sein wird. Sobald wir das angewendet haben, werden wir erst dann herausfinden,
welchen Wert es , zum Beispiel
für
öffentliches IP usw. Wenn wir weiter scrollen,
ist geplant eine Ressource hinzugefügt weil wir
eine virtuelle Maschine erstellen, keine geändert und
keine gelöscht werden muss. Wir werden später
sehen, was das macht. Lass vielleicht. Wenn ich jetzt die Pfeiltaste nach oben anstelle von Terraform Plan verwende, kann
ich Traform Apply ausführen Was Apply macht, wird
im Grunde sowieso
zuerst
Terraform Plan ausführen, aber dann Lass mich einfach auf Enter klicken.
Ich werde auf Enter klicken. Wir können genau den gleichen Plan
wie beim Befehl Terraform Plan sehen , aber jetzt fragt er mich, Sie
diese Aktionen ausführen möchten Terraform führt die oben beschriebenen Aktionen aus. Nur Ja wird zur Genehmigung
akzeptiert. Wenn ich jetzt Ja sage, erstellt
Terraform
einen virtuellen Server für mich in der AWS Cloud Das brauchen wir. Also lass mich auf Enter klicken und mal
sehen, was passiert. Warten wir ein paar Sekunden und es heißt, dass der Server gerade erstellt
wird. Das war's. 13 Sekunden. Wir haben die
Instanz-ID,
die die Kennung für meinen virtuellen Server ist Sie können sehen, dass es
mit acht CE endet. Gehen wir zurück zu unserem AWS
und aktualisieren wir es. Schauen Sie sich das an, acht
CE-Instanz-IDs. Das ist mein Server. Es heißt immer noch,
Statuscheck initialisieren , aber
es ist schon da Instanzstatus läuft, und all diese Informationen
wie öffentliches DNS, öffentliche IP usw. Denken Sie daran, Terraform konnte nicht
herausfinden, was es sein wird,
weil wir diese Details nicht
angegeben haben, weil wir diese Details nicht
angegeben haben, sie wurden einfach zufällig von AWS Cloud
ausgewählt Das ist alles. Das ist unsere
Instanz, die läuft. Und wenn Sie interessiert sind,
lassen Sie mich das noch einmal klarstellen. Das passiert jetzt, wenn ich
Terraform Apply erneut ausführe. Was glaubst du wird
passieren? Lass uns einen Blick darauf werfen. Ich drücke die Eingabetaste, Terraform
prüft, was im Code steht? Was ist in diesen Dateien. Sie können sehen, dass es einen
Server gibt, den wir haben wollen. Und dieser Server ist
bereits betriebsbereit. Terraform kann hier vergleichen, was sich in der Cloud befindet und was
im Code enthalten ist Und wenn der gewünschte
Status übereinstimmt, wird dies als deklarativ bezeichnet Sie deklarieren, was Sie in der Cloud haben möchten
. Ich möchte einen Server haben, und dieser eine Server ist schon da.
Er ist betriebsbereit. Terraform sagt also keine Änderungen. Ihre Infrastruktur
entspricht der Konfiguration. Was auch immer wir hier konfiguriert haben,
ist bereits in der Cloud, es gibt
also nichts
zu tun, und das ist sehr wichtig zu verstehen. Wir werden mehr
dieser Dateien mit
unterschiedlichen Ressourcen erstellen , und wenn beispielsweise eine davon
fehlt, Terraform nur
die fehlende neu Die Infrastruktur wird also wieder der
Konfiguration entsprechen. Es ist immer der
gewünschte Zustand, ja, und dieser Zustand ist jetzt
gewissermaßen bestätigt. Terraform hat also nichts
zu tun.
18. Terraform Zerstörungsbefehl: Wir haben also unsere Instanz.
Sie ist betriebsbereit. Ja. Instanz, ich
meine virtuelle Server. Wenn ich es jetzt aktualisiere, hat sich auch die
Statusprüfung geändert. Es heißt, beide
Prüfungen wurden bestanden. Meine Instanz läuft
und es ist cool. Aber was ist jetzt, wenn ich meine Instanz entfernen
möchte? Ich möchte nicht, dass es noch länger
läuft. Ich möchte diese Instanz zerstören. Und denken Sie daran, als
wir das manuell gemacht haben, haben wir den Instanzstatus „Instanz
beenden“ und „Instanz löschen“ gewählt. Aber in Terraform verwende ich
den Befehl destroy. Also sage ich einfach Traform Destroy. Und Terraform
Destroy
entfernt einfach alles, was wir in unserem Code
haben Lass es mich ausführen, um dir zu zeigen, dass
du auf Enter klickst. Und bevor es etwas zerstört, wird
es uns fragen, ob wir das wirklich wollen. Wollt ihr wirklich alle Ressourcen
vernichten? Nun, wir müssen nur einen
zerstören, wie Sie sehen können, weil dadurch auch ein Plan erstellt wird, aber dieses Mal ist es
ein Zerstörungsplan. Und wenn wir weiter nach oben scrollen, können
wir sehen, dass der
AWS-Instance Mark-Server mit diesem AMI zerstört
wird, aber Sie können sehen, dass Terraform jetzt viel mehr Informationen
über diese Instanz
enthält , da unabhängig davon, welche AWS Cloud uns
zugewiesen Terraform all diese Werte kennt Das ist unsere öffentliche
IP und so weiter. Wenn das also die Instanz ist, die
ich zerstören möchte, sage
ich einfach Ja, und
wenn ich auf Enter klicke, heißt es, dass diese Instanz
zerstört Oh, es hat eine Weile gedauert, 41 Sekunden, aber Sie können sehen, dass sie
jetzt zerstört wurde. Und wenn ich zur
Konsole zurückkehre und sie aktualisiere, können
wir diese Instanz immer noch sehen, aber der Status ist beendet. Und das wird
nach einer Weile verschwinden, aber das ist nur eine
Bestätigung, dass diese Instanz gerade entfernt
wurde. Nehmen wir an, ich möchte jetzt schnell eine weitere Instanz erstellen. Wenn ich mich
erneut bei Terraform bewerbe, sage ich ja. Eine weitere Instanz wird von Terraform für mich
erstellt, aber diese Instanz wird Das war schnell, 13 Sekunden, und jetzt können wir sehen, dass es mit Null
EA endet Wenn ich also zurückgehe und erneut aktualisiere, haben wir
jetzt zwei Einträge, aber nur, dass kein
EA läuft und der
vorherige beendet ist. So erstellt und
zerstört man Ressourcen
mit Terraform Lassen Sie mich auch diesen
zerstören, weil ich ihn
nicht zum Laufen brauche.
Ich sage vernichten. Also ja, in dieser
neuen Instanz wird auch
Null EA zerstört,
was bedeutet, dass wird auch
Null EA zerstört,
was bedeutet, ich in Kürze
zwei Instanzen haben werde, bei denen angegeben wurde, dass sie beendet wurden. Aus irgendeinem Grund
dauerte es viel länger, 1 Minute und
31 Sekunden, bis diese zerstört war, aber irgendwann wurde sie zerstört. So sehr frisch. Wir können zwei Fälle
sehen, aber beide sind beendet.
19. AWS VPC mit Terraform erstellen: Lassen Sie uns jetzt darüber nachdenken. Wir hatten diesen Server in AWS erstellt, und dieser Server hatte eine
private und öffentliche IP-Adresse. Woher kamen ihre
Adressen? Die private
IP-Adresse ist eigentlich Teil der VPC und
Teil eines Subnetzes Gehen wir wegen AWS zurück zu
AWS und lassen Sie mich diesen Tab
duplizieren AWS erstellt ein
Standardnetzwerk für uns. Das gesamte Netzwerk wird
für uns im Hintergrund erstellt denn wenn ich kein
Netzwerktechniker bin und
zum Beispiel nur
einen Webserver betreiben möchte, mache ich mir
vielleicht keine Gedanken über das
gesamte Netzwerk, das dahinter steckt. Dann platziert AWS diesen
Server in der Standard-VPC in einem
Standardsubnetz Lassen Sie uns nach VPC suchen. Warten Sie also die virtuelle
private Cloud von VPC. Dies ist im Grunde ein Bereich, in dem alles gespeichert wird
, wofür all Ihre
Ressourcen verwendet werden, sofern
Sie nichts anderes angeben.
Und das ist es. Sie können die VPC-ID sehen, Sie können die IPV Four
Sir sehen, was das IP-Präfix ist Unserem Server wurde also eine private IP innerhalb
dieses IP-Präfixes
zugewiesen Und wir haben eine Routingtabelle, die HCP-Option, bla, bla. Und wenn ich es noch einmal dupliziere, können
Sie diese VPC sehen Wenn wir auf diese VPC klicken, werden
Sie auch drei
Subnetze sehen, die in
dieser VPC erstellt wurden , und unser Server
wird einem wird Sie können das Subnetz
Est sehen, zwei A, zwei B
und C. Klicken wir auf eines davon, vielleicht A, und sie werden ein Auch hier handelt es sich um ein
kleineres IP-Präfix. Es ist ein Präfix, das
in dieses größere
Präfix der VPC passt in dieses größere
Präfix der VPC Ich weiß, dass es sich nicht um eine
AWS-Schulung handelt sondern um
eine
Computernetzwerkschulung, aber , sondern um
eine
Computernetzwerkschulung, aber
ich möchte nur, dass Sie
wissen, dass
unser Server standardmäßig einfach in
der Standard-VPC und in
einem dieser Subnetze platziert wird der Standard-VPC und in
einem dieser Das heißt aber nicht, dass
es so sein muss. Wir können unsere eigene
VPC, unser eigenes Subnetz, erstellen und angeben, dass
unser Server in einem der Subnetze platziert
werden soll in einem der Subnetze platziert
werden ,
die wir erstellen
werden Aber was noch interessanter ist ,
und das
möchte ich Ihnen
hier wirklich zeigen, ist, dass die Terraform einige Abhängigkeiten auflösen muss,
und ich weiß, dass das etwas verwirrend sein könnte Machen Sie sich zu diesem Zeitpunkt darüber keine
Sorgen. Sie werden verstehen, was ich meine , wenn wir anfangen, damit zu arbeiten. Gehen wir vielleicht zurück zu VPC. Wir können eine VPC sehen. Es ist nur die Standardversion und sie hat Apfelwein mit
172 30 100 Schrägstrich 16. Aber wir werden unsere eigene
VPC erstellen. Also gehe ich zurück zu meiner Terraform. Ich werde vielleicht eine neue Datei erstellen. Ich nenne es vpc dottf und jetzt können wir
googeln, wie man Ich meine, ich werde
TorraformRSolves, AWS VPC, Virtual Private Cloud googeln . Die erste, die oberste,
ist die, die ich brauche,
wir haben einige Beispiele. Ich könnte diesen verwenden, aber ich kann sehen, dass der zweite
auch einen Namen hat, also das ist etwas
, das bereits
enthalten ist . Also vielleicht werde
ich das benutzen. Ich werde es einfach hierher kopieren,
auf diese Schaltfläche klicken, zu meinem Code zurückkehren
und ihn hier einfügen. Vielleicht machen wir das kleiner. Der Apfelweinblock ist
dieser IPV-Vier-Cidre. Die Standard-VPC hat 1723 100, und in diesem Code haben
wir 100 00s Es ist in Ordnung. Wir können es so
lassen, wie es ist. VPC, ich nenne es nicht meins, aber ich werde es vielleicht
in Mark ändern oder weißt du was? Meine VPC, M unterstreicht VPC,
so ähnlich. Dann haben wir das Instanzmietverhältnis. Ich bin mir nicht sicher, warum
sie das hinzugefügt haben. Wenn wir zur VPC-Ressource zurückkehren und nach unten scrollen, haben Sie eine Argumentreferenz. Es zeigt Ihnen im Grunde, was Sie hier hinzufügen können,
was Sie angeben können Und wie Sie sehen können,
ist die
Instanztendenz optional, sie
muss also nicht vorhanden sein. Und wie dem auch sei, Standard ist Standard. Wenn wir hier nichts hätten, wäre
die Instanztendenz sowieso auf Standard
gesetzt.
Aber das spielt keine Rolle Es kann so gelassen werden, wie es ist. Aber der Name für meine VPC, der Name, der in AWS
angezeigt wird, ich werde ihn
tatsächlich in
meinen PC ändern, ungefähr so Ich werde S befehlen,
es zu speichern und nur um es zu testen, gehe
ich zurück zu meinem Server Aber was ich tun werde, ich
werde es kommentieren. Also werde ich Strg
und Schrägstrich benutzen um alles
auszukommentieren, ich werde es speichern Dies wird von
Terraform als Befehl angesehen und
daher
einfach ignoriert, weil ich mich jetzt nur
auf meine VPC konzentrieren
und nur testen möchte, ob sie wie Ich werde einfach Theraform Plum ausführen, und Sie fragen sich vielleicht,
die andere Sache ist, Sie fragen sich vielleicht,
Mark, Sie haben den Anbieter nicht
oder so, was ist das Ich meine, denken Sie daran, dass der Anbieter eigentlich
eine separate Datei ist
und es nicht wirklich wichtig ist, dass es sich um eine separate Datei handelt Die Sache ist, ich erstelle eine
separate Datei für alles, separate Datei für den
Server, eine separate Datei für VPC und für den Provider Aber tatsächlich könnten Sie die gesamte Konfiguration
in nur einer Datei
haben, die heißt,
was auch immer Punkt TF ist Es spielt keine Rolle, wie du es nennst. Es muss nur die
Erweiterung von Punkt TF haben. Aber Terraform
liest tatsächlich alles, was sich in diesem Ordner in dem Arbeitsbereich
befindet , den wir
im Terraform-Ordner erstellt haben Es spielt keine Rolle, ob sich
Ihre Konfiguration
in einer Datei oder in 100 Dateien befindet in einer Datei oder in 100 Dateien Terraform liest zuerst alle
Informationen aus allen Dateien und erst
dann beginnt es Es wird anfangen, alles zu erstellen, was
Sie in diesen Dateien haben. Es ist auch sehr wichtig
, das zu verstehen. Ich wollte auch darauf hinweisen, dass
es eine neue Datei namens
Terraform TF Es wurde erstellt, als wir unseren Server
erstellt haben, und wir werden in Kürze darüber sprechen,
da es sich auch um eine sehr
wichtige Datei Aber im Moment erstellen
wir gerade die VPC und der Anbieter ist bereits
in einer separaten Datei angegeben, aber sie wird von
Terraform gelesen Sowieso. In Ordnung. Also
werde ich den Terraform-Plan ausführen Mal sehen, ob es funktioniert
und es so aussieht, als ob es Eine muss hinzugefügt werden, weil ich den Server
auskommentiert habe, das heißt, ich erstelle nur DVPC. Wir können die Zehn von 0016 sehen, die
Instanztendenz ist Standard, und vielleicht lassen wir uns nach der Anwendung eine
Look-ID bekannt Außerdem ist ARN
nach dem Anwenden usw. bekannt. Es gibt viele
Dinge, die erst
bekannt sind, nachdem diese
Ressource angewendet Ich meine, es wurde auf AWS übertragen und dort tatsächlich
erstellt. Diese ID ist sehr wichtig , da wir sie später
benötigen werden, wenn wir unser Abonnement erstellen. Lassen Sie mich vorerst den Kommentar
noch einmal wiederholen, aber ich werde mich jetzt bewerben. Diesmal werde ich ja sagen, eins muss hinzugefügt werden. Ja, das ist meine VPC, und sie sollte meine VPC
heißen, wenn wir sie in der AWS-Cloud sehen, also ja Sollte nicht lange dauern. Es ist
schon 2 Sekunden her. Wenn wir also
zu VPCs zurückkehren und diese Seite,
aktualisieren
, habe
ich jetzt meine eigene VPC, und sie heißt meine VPC, und der Apfelwein ist Diese VPC-ID habe ich erwähnt. VPC-ID, laut Terraform wird
sie nach der
Bewerbung bekannt sein , da AWS sie für uns erstellt,
und Terraform kann sie
erst lesen, wenn
diese Ressource tatsächlich
erstellt wurde und sie sich in der Cloud befindet
20. Subnet- und Terraform-Abhängigkeitsbaum erstellen: Warum habe ich
über diese VPC-ID gesprochen, wenn wir sie noch nirgends verwendet Nun, das liegt daran, dass
wir sie jetzt verwenden werden , wenn wir
ein Subnetz erstellen , das
Teil dieser neuen VPC sein wird Denn wenn wir derzeit zu Subnetzen
gehen, können
Sie sie hier links unter
VPC sehen Wenn wir zu Subnetzen gehen, haben wir
derzeit drei Subnetze, aber selbst wenn wir uns den
Apfelwein bei den IP-Präfixen ansehen, können
wir sehen, dass sie
zu dieser Standard-VPC gehören,
weil die IP-Adressen können
wir sehen, dass sie
zu dieser Standard-VPC gehören weil die Wir können
hier auch sehen, dass sie alle derselben VPC, der
virtuellen privaten Cloud, gehören Wir haben unsere eigene VPC erstellt, aber wir haben dort noch keine
Subnetze Das ist meine VPC, aber sie hat keine Subnetze.
Lass uns eins erstellen Kehren wir zu
unserem Code zurück und vielleicht bevor ich eine weitere
Datei namens Subnetze erstelle, bearbeiten wir sie
vielleicht zuerst hier. Ich werde dir den
Grund dafür zeigen. Ich werde zu Google gehen.
Wir suchen jetzt nach Terraform-Ressourcen AWS-Subnat über diesen Link. Und so kann ich mein
Subnetz erstellen. Aber wenn wir vielleicht
ein bisschen genauer nachschauen, können
Sie auch die ID der
Verfügbarkeitszone angeben Es ist optional, aber es ist
etwas Naja, 1 Sekunde. Ich glaube, wenn wir zu Instanzen
zurückkehren, ich meine, ich weiß, dass es nicht die
Ergebnisse sind, nach denen wir suchen, aber wenn wir weiter scrollen, glaube
ich, schauen wir uns das an.
Das ist das Subnetz Es hat aber auch eine angegebene
Verfügbarkeitszone. Tatsächlich verfügt es auch über eine
separate
Netzwerkschnittstelle, über die wir IP-Adresse
für unseren Server angeben
können Dies ist die Konfiguration
für den Server selbst. Weißt du was? Das ist cool. Das sollten wir wirklich alles nutzen. Also zuerst brauche ich mein Subnetz. Ich werde nur das kopieren, lass es mich aber
zuerst hier einfügen. Ich möchte dir etwas zeigen. Wir haben hier ein Subnetz hinzugefügt, Konfiguration, und
es heißt Mein Subnetz Das ist in Ordnung. Wir können es lassen. Wir können es nennen, wie wir wollen. Aber wo wird dieser
Name überhaupt verwendet? Wenn ich mit der Maus darüber fahre,
heißt es Referenzname. Dieser
Referenzname, zum Beispiel
dieses M-Subnetz, wird verwendet wenn wir auf
diesen Teil,
diese Ressource in einer
anderen Ressource verweisen diese Ressource in einer
anderen Ressource Und schau, es
passiert schon hier in dieser Zeile. Ich möchte
zum Beispiel ein Subnetz erstellen,
aber dieses Subnetz ist Teil breiteren oder größeren VPC, und tatsächlich möchte
ich, dass mein Subnetz Teil dieser VPC,
dieser Ressource Was ich meine, wenn ich meine
Ressource zum Beispiel
Mark nenne, dann muss dieser Referenzname auch hier geändert werden Jemand könnte denken,
was ist hier los? Warum wird das so gemacht? Denken Sie daran, dass die VPC-ID
nur bekannt ist , wenn diese VPC
tatsächlich in AWS existiert Terraform muss zuerst die VPC
erstellen. Es muss warten, bis AWS die VPC-ID
zuweist, die nur dann hier in dieser Zeile
verwiesen werden kann Wir sagen, wir wollen, dass dieses Subnetz
Teil der VPC-Ressource ist,
und diese Ressource nennen
wir Marek Das ist unser Name für diese
Ressource, der Referenzname, und Terraform benötigt nur eine ID,
da AWS ID,
ARN, bla bla und viele
verschiedene Dinge bereitstellt , aber wir müssen hier in dieser Zeile nur auf Aus diesem Grund benötigen wir, wenn wir
zu dieser Instanz gehen, wir in diesem Beispiel sehen können, nur die
ID Wie auch immer ich diese VPC nenne, lassen Sie uns sie wieder zu meiner VPC Ich muss dann auch
diesen Referenznamen hier ändern. Nochmals, meine VPC, sie muss passen. Stellen Sie sich vor, ich hätte
diese Anführungszeichen entfernt und hier
einfach einen Punkt gesetzt, so
etwas AWS VPC, meine VPC-ID,
AWS VPC, Punkt, meine VPC, und dann brauche ich nur noch Ich weiß, dass es verwirrend ist. Ich verstehe das. Das alles
wird auf diese Weise gemacht, sodass Terraform versteht, dass es zuerst
eine VPC erstellen muss,
und das wird es wissen, weil diese VPC später
hier in dieser Zeile referenziert wird Es erstellt einen sogenannten Abhängigkeitsbaum. Ordnung, ich weiß. Jetzt
Apfelwein für mein Subnetz Nehmen wir an, ich möchte
10.0.1.0 Schrägstrich 24, und weil wir alles
in EuWST und nicht in US West erstellen, muss
ich hier
die Verfügbarkeitszone von
EuWST auf A ändern , weil wir
drei Verfügbarkeitszonen haben,
A, B und C und den Namen, und weil wir alles
in EuWST und nicht in US West erstellen, muss
ich hier
die Verfügbarkeitszone von
EuWST auf A ändern, weil wir
drei Verfügbarkeitszonen haben,
A, B und C und den Namen,
ich werde in mein Subnetz wechseln. Ich werde den Befehl S ausführen. Lassen Sie uns teraform apply ausführen Und ich muss Aha
hinzufügen, weil wir die
VPC nicht wirklich zerstört haben.
Die VPC ist immer noch da In diesem Fall wird nur ein
Subnetz hinzugefügt. Und Sie werden sehen
, dass das Subnetz auch eine eigene Kennung hat und diese auch
erst nach der Anwendung bekannt ist Also vielleicht
lassen wir es vorerst einfach laufen, ja Und es wurde hinzugefügt. Das ist 1 Sekunde. Noch schneller und schneller. Wenn ich jetzt also zu Subnetzen gehe, sollte
ich ein weiteres Subnetz haben,
mein eigenes Subnetz . Und hier Es heißt mein Subnetz. Es ist Teil von VPC, meiner VPC, und das IP-Präfix
ist zehn.01 Aber bevor ich es vergesse, lassen Sie uns jetzt alle vernichten Terraform zerstört,
und ich sage, ja,
zwei müssen zerstört werden, weil wir dieses Mal VPC und
Subnetz
zerstören werden VPC und
Subnetz
zerstören Ja. Schau dir den Plan an. VPC wird zerstört
. Beachten Sie, dass Terraform die ID
jetzt
kennt , da diese VPC Es endet mit 166e, und tatsächlich Und das Subnetz hat auch eigene ID Endet mit 71 B. Wenn ich
also zu Subnetzen gehe, können
wir sehen, dass es tatsächlich 71b ist Es ist diese Kennung, und beide werden jetzt vernichtet Also sage ich ja, tritt ein.
Wir haben zwei zerstört. Wenn ich also aktualisiere, kehren
wir zur
Standard-VPC und den Subnetzen zurück.
Wenn ich auch aktualisiere, haben
wir nur die
drei, die von AWS erstellt wurden
21. Server, Subnetz und VPC und mehr über Abhängigkeiten erstellen: Wenn wir jetzt zu unserem Code zurückkehren,
denken Sie daran, dass wir diese Server
auskommentiert haben Lassen Sie mich das Kommentieren mit Control Forward Slash und Command S entfernen. Wir
haben uns dieses Beispiel in einer
AWS-Instanz angesehen . Wir haben unseren VBC Wir haben bereits unser Subnetz
und diese Instanz, wir
können sehen, dass sie über eine
zusätzliche
Netzwerkschnittstelle verfügt, über die wir angeben
können, welche private IP wir
diesem virtuellen Server zuweisen müssen Lassen Sie uns auch diesen Teil kopieren. Gehen wir zurück zu unserem Code. Im Moment werde ich es
unten einfügen, um es größer zu machen. Jetzt habe ich
bereits eine AWS-Instanz. Das einzig Neue hier
ist wirklich diese Netzwerkschnittstelle. Lassen Sie mich diesen Teil kopieren, und ich werde
ihn in meine Instanz einfügen. Das ist es. Das heißt, ich
brauche dieses Ding nicht. Werde den Teil los. Was wir jetzt haben, ist
genau das, was wir früher hatten, aber mit dieser zusätzlichen
Netzwerkschnittstelle. Auch diese Netzwerkschnittstelle hat die Abhängigkeit, die
Terraform auflösen muss Weil die Netzwerkschnittstellen-ID die
Punkt-F-Punkt-ID der
AWS-Netzwerkschnittstelle ist Punkt-F-Punkt-ID der
AWS-Netzwerkschnittstelle Das bedeutet, dass Terraform
diese Ressource zuerst erstellen muss Beachten Sie, wenn ich diesen Teil
hervorhebe, hebt der
VS-Code auch diesen Teil
hervor Es kennt die Erweiterung, die wir für Terraform
installiert haben,
es weiß, dass diese beiden verwandt sind Das Gleiche gilt, wenn ich diese vier
hervorhebe, das sind
diese Abhängigkeiten Ja. Deshalb ist es
viel einfacher zu arbeiten, wenn Sie diese
Terraform-Erweiterung hinzugefügt haben Nochmals, wenn ich diesen
Ressourcennamen in, sagen wir, Mark ändere, dann muss ich ihn auch hier in Mark
ändern Terraform weiß, dass
es zuerst diese
Netzwerkschnittstelle
erstellen muss , da diese ID erst bekannt ist, wenn diese Schnittstelle erstellt
wurde Und jetzt private IP, ich kann
wählen, was ich will, aber es muss
Teil meines Subnetzes sein Also 1001 vielleicht 20, sage ich. Warum stand da 10.0.1.20? Denn auch hier
hat diese
Netzwerkschnittstelle eine andere Referenz, eine
weitere Abhängigkeit, und
es ist das AWS-Subnetz, mein Subnetz Wenn wir zu VPC zurückkehren, können
wir diese Ergebnisse hier sehen, AWS-Subnetz, mein Subnetz Wir können sehen, dass es in einer
anderen Datei ist, aber wie gesagt, es
spielt keine Rolle Terraform liest zuerst
alle Informationen,
alles, was sich
in diesem Arbeitsbereich befindet, in diesem Ordner Dieses Subnetz hat das
Präfix 10010. Das bedeutet, dass IDs, meine private
IP-Adresse innerhalb
dieses Bereichs liegen muss und 100 Punkt
120 innerhalb dieses Bereichs liegen Dann
ändere ich den Namen vielleicht in mein Interface. Wie wir sehen können, haben wir
immer mehr Abhängigkeiten. Zuerst muss es mir vielleicht
den
Befehl S geben und das Terraform
muss zuerst die VPC
erstellen, da
VPC bereits
im Subnetz referenziert wird Sobald das Subnetz erstellt wurde, wird
dieses Subnetz
hier in der Netzwerkschnittstelle referenziert,
und dann gehört diese Netzwerkschnittstelle zu meinem Und wir sind bereit zu rennen.
Aber bevor wir das tun, lassen Sie mich zu VPC zurückkehren,
weil
wir dieses Subnetz auch einfach von hier aus
abschneiden können, und ich gebe den Befehl S, und ich werde eine neue Datei erstellen, und ich werde es Subnetz nennen Punkt TF und ich werde es hier einfügen.
Tatsächlich, weißt du was? Ich werde Ihnen zeigen,
wie einfach es
für uns jetzt ist , ein zweites
Subnetz zu erstellen, wenn wir wollen Wo auch immer Sie sind, was auch immer
Sie kopieren möchten, was auch immer Sie erstellen möchten, Sie können
es einfach anhand der folgenden Tabelle kopieren Ich
nenne es zum Beispiel auch mein Subnetz. Es wird Teil derselben VPC sein. Ich werde den
Cider-Block vielleicht auf 10.0.2.0 ändern,
und vielleicht möchte ich
dieses Subnetz auch in einer anderen Verfügbarkeitszone haben dieses Subnetz auch Ich ändere es vielleicht in B. Ich werde es
auch mein zweites Subnetz nennen, vielleicht Und dieses hier nenne ich mein erstes Subnetz, die Arbeit
erledigt wird den Befehl S. Nun wollen wir mal sehen, ob ich etwas
vermasselt Lassen Sie uns alles löschen und ich führe
das Formular „Vielleicht bewerben Wie wir uns erinnern, wird Apply sowieso
auch einen Plan erstellen. Wir werden sehen, ob alles in Ordnung
ist oder nicht. Ich werde es ausführen.
Sieht aus, als ob alles in Ordnung ist. Es heißt, fünf hinzuzufügen. Und was noch hinzugefügt wird, gehen
wir zurück zum Anfang. Und was Sie vielleicht interessant
finden, ist zunächst, dass wir
einen Marx-Server erstellen werden. Ja. Nun, das stimmt nicht.
Es ist einfach in diesem Stadium, es hat diese
Abhängigkeiten noch nicht gelöst, aber Sie werden sehr
bald sehen, was ich meine. Wenn wir noch weiter gehen, haben
wir eine Instanz, ja, wir haben diesen Server, dann wird er auch eine
Netzwerkschnittstelle
für diesen Server erstellen .
Wie wir sehen können, ist er hier. Es wird das Subnetz erstellen. Es wird ein zweites
Subnetz und eine VPC erstellen. Wenn wir es jedoch ausführen, sage ich,
ja, wenn Sie sich konzentrieren, klicke
ich auf Enter Es wird von VPC aus gestartet
und dann, wie Sie sehen, ein Subnetz erstellt. Anschließend wird
eine Netzwerkschnittstelle erstellt Dann ist es das zweite Subnetz, weil nicht
auf das
zweite Subnetz verwiesen Es spielt also keine Rolle, wann es
erstellt wird, das zweite. Aber das erste Subnetz musste
erstellt werden, bevor die
Schnittstelle erstellt wurde Und der Server wurde ganz
am Ende erstellt , weil all diese Abhängigkeiten gelöst werden
mussten Server hatte diese
Netzwerkschnittstelle, die Teil dieses Subnetzes war Dieses Subnetz war Teil der VPC. Deshalb musste es es der
Reihe nach machen. Ordnung. Lass uns nachschauen, ob wir alles
haben, was wir wollten. VPC, ich werde aktualisieren. In der Tat habe ich meine VPC mit diesem IP-Präfix.
Wir gehen zu Subnetzen Ich aktualisiere. Wir
haben zwei Subnetze, mein erstes Subnetz
und mein zweites Subnetz Und wenn wir zu
Instanzen wechseln, lassen Sie uns das Ganze aktualisieren. Wir haben Marks ersten Server. Nun, es ist nicht der erste, aber das ist unser Tag. Aber Sie können sehen, dass es eine
private IP-Adresse vor der
Adresse 100120 hat , was genau das ist, was wir hier in
unserem Serverteil
angegeben haben hier in
unserem Serverteil
angegeben Das ist unsere private IP.
Alles funktioniert wie erwartet, also zerstören wir Sachen. Ich werde es löschen und ich werde
sagen, Theraform zerstöre es. Und es wird auch in einer bestimmten Reihenfolge
entfernt, überprüft alles und
es heißt fünf zu zerstören Ja,
genau das wollen wir tun. Also sage ich ja, und es
beginnt mit Subnetz zwei, das nicht verwiesen wird, dann markiere Server mit der Schnittstelle Jetzt die Schnittstelle selbst, dann das Subnetz, auf
das
von dieser Schnittstelle verwiesen wurde , und ganz am Ende
die VPC Die Reihenfolge ist also genau das Gegenteil von dem, was sie
war, als wir
diese Infrastruktur angewendet haben .
Hoffe, das macht Sinn.
22. Terraform tfstate-Datei: Wir wissen also, wie man
mehrere Ressourcen konfiguriert und wie eine Ressource von einer anderen Ressource
abhängen kann Wie hier wird diese
Netzwerkschnittstelle
erst erstellt, wenn wir das Subnetz erstellt
haben Aber woher weiß Terraform, was
bereits in der AWS Cloud
erstellt wurde und was Das ist alles über diese
Theraform TF-Statusdatei. Wenn Sie
etwas in der Cloud erstellen, erzeugt AWS eine
Reihe von Informationen über diese Ressource, und Taform speichert sie
dann hier lokal In diesem Fall speichern wir es
lokal auf unserem Computer. Wie wir sehen können, ist diese
Datei jetzt sehr kurz. Aber lassen Sie uns jetzt
unsere Infrastruktur in der Cloud
erneut erstellen unsere Infrastruktur in der Cloud
erneut Ich führe einfach Terraform Apply aus
und wir werden sehen, wie sich diese
TF-Statusdatei ändert Also drücke ich einfach die Eingabetaste
und es heißt fünf zum Hinzufügen, weil wir das
VPC-Subnetz und die
Netzwerkschnittstelle sowie unsere Instanz hinzufügen werden VPC-Subnetz und die
Netzwerkschnittstelle Ich sage, ja, das
klingt ungefähr richtig. Also klicken Sie auf Enter, und diese
Infrastruktur wird erstellt. Sie können die
Unterschiede bereits erkennen. Etwas wird in diese Datei
geschrieben. Jetzt ist der Vorgang abgeschlossen.
Schauen wir uns an, was
in dieser Tf-Statusdatei enthalten ist. Wie wir sehen können, ist es jetzt viel
länger. Schau dir das an. Jede Menge
Informationen über die Ressourcen, die gerade in unserer AWS-Cloud
erstellt wurden. Ich kann zum Beispiel sehen,
dass es viele Informationen über meine VPC gibt, zum Beispiel, was ist
der Apfelweinblock Was ist meine Routing-Tabelle, ID,
Netzwerkzugriffsliste usw. Tatsache ist, dass Sie diese Informationen normalerweise nicht direkt aus dieser Datei
lesen Es ist nicht wirklich benutzerfreundlich. Es ist nur die Menge an Informationen im Grunde einfach überwältigend
ist. Du würdest es stattdessen tun,
normalerweise hier, lass mich das klarstellen. Du würdest wie
Terraform State rennen und dann können wir dir helfen. Wir wollen Informationen
über unsere Statusdatei, diese TF-Statusdatei Wir haben also
Unterbefehle wie list, show, remove, push usw. Mal sehen, was List macht. Bundesstaaten von Terraform.
Was wir hier haben, sind unsere Ressourcen weil wir sehen können, dass
wir eine VPC haben, wir haben zwei Subnetze, eine
Schnittstelle und Schnittstelle Wenn ich
zum Beispiel mehr
Informationen über meine Instanz erhalten möchte, kann
ich Terraform state, show verwenden und jetzt kopiere ich genau das Und es werden
alle
Informationen zu meiner Instanz und
zu meinen virtuellen
Servern in der Cloud angezeigt alle
Informationen zu meiner Instanz und
zu meinen virtuellen
Servern in der Und jetzt werden all diese Informationen in dieser TF-Statusdatei gespeichert. Also, wenn ich wieder renne,
lass mich wieder löschen. Wenn ich jetzt Terraform Apply starte, was glaubst du, wird
passieren? Lass uns präsentieren. Terraform hat
den Status aktualisiert, was bedeutet, dass es AWS über die von uns erstellten
API-Schlüssel
kontaktiert Ich habe überprüft, was bereits in der Cloud
vorhanden ist, dann wurde diese
Ausgabe mit dem verglichen, was sie
hier in dieser TF-State-Datei hat hier in dieser TF-State-Datei und weil alles perfekt
zusammenpasste, wurde uns gesagt,
dass keine Änderungen vorgenommen wurden, Ihre Infrastruktur der
Konfiguration entspricht Diese TF-Statusdatei
wird derzeit hier lokal
auf meinem Laptop gespeichert. Das Problem ist, dass Sie in der
Regel, insbesondere in größeren
Unternehmen, nicht die einzige Person sind ,
die
für die Wartung dieser
Infrastruktur verantwortlich ist . Ich weiß nicht, vielleicht haben Sie
fünf oder zehn Personen, die an derselben Infrastruktur
arbeiten, sie warten und aktualisieren
. Normalerweise
senden Sie diese Dateien wie Provider-Server-Tf-Dateien und PC-Dot-Tf-Dateien. Sie würden sie beispielsweise remote
in GitLab oder GitHub speichern , damit alle anderen Mitglieder diese Dateien
herunterladen können, sodass jeder oder jedes Mitglied genau den gleichen Code
hat Aber lassen Sie uns jetzt darüber nachdenken, was
passiert, wenn sowohl ich als auch
eines der anderen Mitglieder anfangen etwas an
dieser Infrastruktur zu
ändern Ich möchte zum Beispiel etwas
an meinem Server
ändern während eine andere Person etwas
am Subnetz
ändern möchte etwas
am Subnetz
ändern Das könnte zu Problemen führen
, da mein Server davon abhängt,
was sich im Subnetz befindet Wenn sich etwas im
Subnetz ändert, wirkt sich
das auf meinen Server aus, da wir uns daran erinnern,
dass wir diese Netzwerkschnittstelle haben und diese Netzwerkschnittstelle der
Subnetzkonfiguration
abhängt Was wir also im Grunde brauchen, dass jeweils nur
eine Person an dieser Infrastruktur arbeitet Selbst wenn beide Personen
einige Änderungen vornehmen, sollte jeweils
nur eine Person
die Infrastruktur ändern dürfen . Und sobald eine Änderung abgeschlossen
ist, nur die nächste Änderung vorgenommen werden, und wir können
diese TF-State-Datei verwenden, um dies zu erreichen, ich meine,
sie als Lösung dafür verwenden. Wenn wir im Team arbeiten, wird
diese TF-Statusdatei
nicht auf meinem Laptop gespeichert. Es sollte an einem
entfernten Ort aufbewahrt werden, wo es ständig aktualisiert
und gesperrt werden kann. Wenn also eine Person
an der Infrastruktur arbeitet, sperrt diese Person diese Datei, sodass niemand sonst diese Datei lesen
oder in sie schreiben kann. Die andere Person
müsste warten, bis ich zum Beispiel meine Änderungen abgeschlossen habe. Diese Datei wird aktualisiert, erst dann werde ich sie entsperren
und die andere Person kann die Datei
wieder
übernehmen und sperren. Wie machen wir das? Nun, es gibt viele Möglichkeiten, wie
wir das erreichen können. Da wir jedoch mit AWS
arbeiten, die gängigste Lösung darin, diese Datei im St. Bucket zu behalten. Es ist eine einfache
Speicherlösung in AWS, in der wir die Dateien speichern können. Ich kann Ihnen zeigen, wie
es früher aussah. Wir brauchen
neue Segmente wie Terraform-Backend und nennen Es ist der T-Bucket in AWS, und das ist der
Bucket-Name, in dem wir
unsere TF-Statusdatei speichern möchten Wir wollen es
verschlüsselt speichern. Oder weißt du was? Vielleicht sollte es verschlüsselt sein, aber lassen Sie mich das vorerst entfernen. Vielleicht sollten wir uns das
mal ansehen. Also werde ich es einfach entfernen. Aber es sollte
grundsätzlich verschlüsselt sein, ja. Auch in der Region EUS, weil alles andere dort aufbewahrt
wird, warum also? Dann müssen Sie, wie gesagt, diesen Sperrmechanismus
für diese Datei
haben. Früher hatten wir eine separate
DynamoDB-Tabelle. DynamoDB ist wie eine
Miniaturdatenbank, nennen wir sie. Und wenn jemand
eine Datei in der Datenbank öffnet, ist die gesamte Datei gesperrt Das war der Mechanismus
, mit dem wir die
TF-Statusdatei im ST-Bucket gesperrt haben. Das bedeutete aber auch
, dass wir eine weitere Sache in
unserer AWS-Infrastruktur
verwalten mussten, nämlich DynamoDB Mit der neuesten Terraform
ab Version 1.10 können Sie überprüfen, ob Ihre Du siehst mich auf 110 Punkt Vier. F, ein Punkt zehn, es gibt eine
neue Methode, und Sie können diese DynamoDB
durch eine US-Protokolldatei ersetzen Sie können sehen, dass die Formularerweiterung uns
dabei hilft. Wir haben das automatisch ausgefüllt. Lass uns darauf klicken und
wir wollen, dass es wahr ist. Wir wollen ihn verwenden, diesen Mechanismus zum
Sperren von Protokolldateien innerhalb von Tree selbst. Ordnung. Das sollte es sein. Ich werde nur
S befehlen. Jetzt muss dieser Bucket in AWS
existieren. Lassen Sie mich diesen Wert kopieren, weil
ich diesen Bucket nicht habe. Lassen Sie uns schnell
einen erstellen und ich gehe zu ST. Bucket ist wie ein Platzhalter in AWS, in dem Sie einfach Dinge speichern können Ich habe ein paar Eimer. Ich weiß nicht mehr,
wofür sie gedacht sind, aber ich werde neue erstellen Ich werde den Namen
hier einfügen und nach unten scrollen. Es ist auch ratsam, die Bucket-Versionierung zu
aktivieren. Somit bleiben alle älteren Versionen der TF State-Datei
erhalten Wenn jemand
diese Datei mit
etwas Falschem überschreibt , können
Sie zur vorherigen
Version dieser Datei
zurückkehren zur vorherigen
Version dieser Datei
zurückkehren Aber das liegt an
dir. Es ist jedoch ratsam, es aktiviert zu haben. Und ich erstelle einfach den Bucket. Der Bucket ist da, also gehe ich einfach zurück zu meinem Code, und
was ich tun muss, ich muss Terraform
erneut darin ausführen, um das gesamte Repository zu initialisieren Also lasse ich Terraform darin laufen. Geben Sie die Initialisierung des Backends ein. Terraform hat festgestellt, dass
wir die gesamte Backend-Konfiguration ändern werden, in
der der beibehalten Ich habe mich gefragt, ob Sie den vorhandenen Status in das neue
Backend
kopieren möchten vorhandenen Status in das neue
Backend
kopieren Ja, genau das möchte ich tun. Ordnung. Die Initialisierung
wurde erfolgreich initialisiert Wenn
ich also von nun an zu meinem Bucket gehe und darauf klicke, können wir sehen,
warum dieses Produkt hier ist. Das habe ich
hier im Schlüssel hinzugefügt. Sie könnten es zum Beispiel Prod Dev Test
nennen, oder Sie können es wie auch immer nennen,
weil ich es vielleicht nicht weiß, Sie möchten die
TF-Statusdatei für
verschiedene Umgebungen
im selben ST-Bucket behalten verschiedene Umgebungen
im selben ST-Bucket Vielleicht möchten Sie also nicht nur den Terraform-TF-Status
behalten,
sondern auch Informationen darüber, für welche
Umgebung er bestimmt ist Deshalb habe ich prod hinzugefügt, aber es ist optional,
es liegt wirklich an dir Wenn ich jetzt zu diesem Prod gehe, diese Terraform-TF-Statusdatei von
nun Und wenn ich anfange, daran zu arbeiten, wenn ich irgendwelche Änderungen vornehme, wird
diese Protokolldatei
verhindern, dass jemand anderes die Änderungen
zur gleichen Zeit wie ich Es wird jeweils nur eine Person in der Lage
sein, die Änderungen vorzunehmen. Ich hoffe also, dass es Sinn macht.
23. Variablen: Lassen Sie uns jetzt über Variablen sprechen. Fast jede
Programmiersprache hat das Konzept der Variablen, und HCL aus HashiCorp HashiCorp-Konfigurationssprache ist nicht anders hat das Konzept der Variablen,
und HCL aus der
HashiCorp HashiCorp-Konfigurationssprache ist nicht anders
. Es hat auch ein Konzept von Variablen. Lassen Sie mich also zuerst
Terraform zerstören oder ausführen. Zerstöre, weil wir
vergessen haben, es zu zerstören. Sie können auch die automatische Genehmigung hinzufügen. Sie werden nicht gefragt, ob
Sie das tun möchten. Ja, ich bin mir sicher, dass ich das tun möchte, damit wir die automatische Genehmigung hinzufügen können. Lassen Sie uns diese
Konfiguration,
diese vorherige
Infrastruktur, zerstören und über
diese Variablen sprechen. Schauen wir uns die
Serverkonfiguration an. Ich habe diese Instanz. Ich habe die
Netzwerkschnittstelle dafür. Vielleicht ist
es in dieser Situation nicht so
klar, warum wir Variablen verwenden
möchten. Lassen Sie mich zu dem wechseln, was wir früher hatten. Wir hatten so
etwas. Unser Konflikt war
viel einfacher und wir hatten mehrere Fälle. Ich werde das kopieren. Füge
es hier ein und das wird, nennen
wir es Geizhals, kürzer Mein Server eins. Mein Server zwei
und auch hier mein Server eins. Mein Server zwei. Wenn Sie Erfahrung mit
Programmiersprachen
hatten, wissen
Sie, dass Sie Variablen überall dort verwenden
würden wo Sie sich
wiederholende Informationen haben. Was sind das für wiederholte
Informationen hier? Nun, ich kann es auch sehen. Es ist AMI, weil
wir es hier für Server Nummer eins und Server Nummer zwei plus Instance-Typ haben. Es ist T zwei Micro. Denn wenn ich diesen Instanztyp
ändern wollte, müsste
ich zu
jeder einzelnen Zeile gehen und
sie durch T T oder T drei ersetzen. Oder und so weiter. Nun,
mit zwei Servern ist das
vielleicht kein
Problem, aber was ist, wenn ich 1.000 Server habe Dort können wir also diese Variablen
verwenden. Und wie verwende ich
Terraform-Variablen? Was ich tun kann, ist
zum Beispiel mein AMI zu kopieren, es zu kopieren, und ich ersetze diesen Wert durch VR-Punkt und nennen wir
ihn meinen Instance-Typ Ich könnte meine
Variable auch AMI nennen, aber ich möchte sie anders machen. Ich möchte also, dass du klar
siehst, was hier vor sich geht. Und dann füge ich
vielleicht oben eine weitere Zeile hinzu. Ich nenne es variabel, und meine Variable muss
in Anführungszeichen stehen, und ich habe meine Variable,
meinen Instanztyp, genannt und ich
werde geschweifte Klammern verwenden Und innerhalb dieser geschweiften Klammern kann
ich den Standardwert angeben Ich sage Standard ist gleich, ich kopiere mein AMI und füge Ich möchte es jedoch als Zeichenfolge
haben,
was bedeutet, dass ich Anführungszeichen
hinzufügen werde Auch hier
haben wir im Grunde dasselbe, aber jetzt ist es als Variable gespeichert, und jetzt kann ich all
die Zeilen, die
AMI haben, durch den Wert dieser
Variablen oder durch diesen
Variablennamen ersetzen AMI haben, durch den Wert dieser , meine ich. Lassen Sie uns auch diesen
Instance-Typ ersetzen. Es ist T zwei Mikrostrom. Also werde ich sagen, ich möchte eine neue Variable erstellen und mir wurde klar, dass ich
etwas Dummes gemacht habe Es ist nicht wirklich der Instanztyp, AMIs, mein Instanz-Betriebssystem, sagen
wir, nennen wir es mein Instanz-Betriebssystem und mein Instanz-Betriebssystem, weil
es Betriebssystem ,
AMI, es ist Betriebssystem, und ich möchte meinen
Instance-Typ nennen, meinen Instance-Typ. Ja. Das ist genauer. Oder vielleicht nenne ich es einfach Typ EC Two, also ist es anders. Und auch hier vom Typ EC Two. Jetzt erstelle ich eine weitere Variable, die
ich EC two type genannt habe, und gebe hier den
Standardwert an. Oder weißt du was? Vielleicht tue ich das
nicht. Was ist, wenn ich es nicht tue? Lass uns sehen. Befehl S, ich habe das alles gespeichert
und werde sehen, was passiert. Ich habe einen Standardwert für AMI, aber keinen
Standardwert für den Typ EC Two. Lassen Sie mich also noch einmal löschen und
lassen Sie uns Terraform apply ausführen. Lass uns eintreten. Wir können sehen Terraform die
Variable für AMI gefunden hat, aber es konnte den Wert
für die Variable EC two type nicht finden für die Variable EC two Also werden
wir einfach gefragt, geben Sie einen Wert ein. Wofür soll diese
Variable konfiguriert werden? Also ich sage T zwei Mikro. Wenn ich auf Enter klicke, sollte Terraform jetzt
alles haben, was es braucht Und es heißt wieder, dass fünf hinzugefügt werden müssen, und wenn wir überprüfen, was
hinzugefügt werden soll, können
wir sehen, dass der Instanztyp
hinzugefügt werden soll, wobei der Typ T two micro ist.
In Ordnung, aber ich sage nein. Bewerbung storniert, und ich möchte
diesen Standardwert angeben. Standard entspricht also T zwei Mikro
und wenn ich S erneut befehle, wenn ich die Reform apply now ausführe, hat sie
jetzt alle
Informationen, die
sie benötigt, und muss mich nicht nach dem Wert
für diese Variable fragen dem Wert
für diese Variable Es geht direkt zu dieser Phase. Ordnung, aber ich sage wieder nein ,
weil das alles ist, was ich über Variablen sagen
wollte.
24. tfvars-Datei erklärt: Wenn wir nun
über die Variablen sprechen, gibt es noch eine weitere Datei, die
Sie interessieren könnte Und es ist eine Datei mit der Erweiterung
TF Vars. Lassen Sie mich Ihnen Create zeigen, nennen
wir es vielleicht Terraform, aber wir werden die Dot
TF Vars-Erweiterung verwenden Kein TF, aber TF Vars, ja. Und diese Datei dient nur
dazu, die Variablen zu behalten. Aber jemand könnte fragen, Mark, aber wir haben die
Variablen schon, ja. Wir haben sie hier.
Was ist also der Sinn einer anderen Datei, die
nur Variablen enthält? Nun, es gibt verschiedene Gründe
, warum Sie die TF-Variablen verwenden möchten Nehmen wir an, was ist, wenn ich eine
Variable habe , die
für mich sehr wichtig ist, wie ein Passwort Und dann hast du vielleicht auch den
Standardwert. Mein sicheres Passwort. Vielleicht ist es etwas, das du nicht in Github oder Gitlab behalten
und mit
irgendjemandem teilen
möchtest , oder jeder, der
Zugriff auf Gitlab hat, wird diese
Passwörter auch sehen Was du also tun kannst, du
kannst es einfach leer lassen. Das haben wir ursprünglich mit dem
EC-Typ gemacht. Denken Sie daran, Sie können
dieses Passwort vielleicht leer lassen und stattdessen zu den TF-Variablen
gehen und nur sagen, dass Passwort meinem
sicheren Passwort entspricht, und dann möchten Sie diese TFRs vielleicht woanders in
einer Art Tresor
aufbewahren , nur einige Techniker oder vielleicht
nur Sie Zugriff haben Somit wird niemand sonst in der Lage sein, an diese Informationen
heranzukommen. Vielleicht möchten Sie aber auch, die TARs die Standardwerte, in Variablen haben, einfach auf einfache Weise
überschreiben die Sie in Variablen haben, einfach auf einfache Weise
überschreiben
können Lassen Sie mich Ihnen zeigen, was ich meine. Entferne vielleicht dieses Passwort und lass uns bei dem bleiben,
was wir bereits haben. Ich werde das entfernen.
Wir haben den Typ EC Two. Ich kann auch einfach, vielleicht möchte ich einfach den Typ EC
Two ändern oder ihn einfach kopieren. Die Notation ist
etwas anders. Ich glaube, du hast es schon bemerkt. Wenn wir nach Tavars gehen, füge
ich es einfach hier Ich sage nicht, dass es variabel ist, und es steht nicht in Anführungszeichen weil wir bereits
wissen, dass es variabel ist, es ist Tavars, es ist
nur für Ich sage nur gleich
und dann als Zeichenfolge, vielleicht R vier groß Das heißt, ich möchte alles überschreiben,
was in dieser Datei steht. Der Standardwert ist Tito micro, aber ich möchte bei großen Werten
mit R überschreiben Lass mich einfach
S befehlen. Lass uns sehen,
löschen, und wenn ich
Terraform apply ausführe , schauen wir mal, was passiert Wir müssen fünf
hinzufügen, aber was ist das? Wir können sehen, dass es die Instanz
erstellen möchte, aber dieses Mal ist der
Instanztyp tatsächlich R für groß. Seien Sie vorsichtig damit, denn
das ist kein kostenloses Kontingent, dafür müssten
Sie bezahlen, ja. Aber wenn ich ja sage, wurden die
Instanzen erstellt, und wenn wir sie in der
Cloud direkt aktualisieren, kann
ich sehen, dass es sich
nicht mehr um Tito-Mikros handelt Sie sind in der Tat groß. Aber um auf Nummer sicher zu gehen, lassen Sie mich sie sofort vernichten. Es könnte mich also kosten, aber es wird eine vernachlässigbare
Summe sein Ein Formular, vernichten, automatisch genehmigen.
25. 100 Server mit dem Meta-Argument „zählen“: Nehmen wir nun an, ich
möchte nicht einen, sondern 100
Server in Terraform erstellen Wie mache ich das? Nun, vielleicht sollten wir das
zuerst
loswerden. Ich möchte
sie nicht so groß haben. Oder weißt du vielleicht was? Ich
werde einfach die gesamte Datei entfernen. Wir brauchen es nicht
mehr. In den Papierkorb verschieben. Tito Micro ist also unser
dreistufiger Standardwert für den Instance-Typ. Okay. Und jetzt möchte ich 100 Server
erstellen. Jemand könnte sagen: Ja, Mark, du musst das nur etwa
50 Mal kopieren und schon
hast du 100 Server. Nun, das könnte die Lösung
sein, aber definitiv nicht etwas, was
wir in Terraform machen wollen Tatsächlich
brauche ich nicht einmal zwei davon. Dies sind bereits
wiederholte Informationen. Ich benötige wirklich nur eine
Ressource, eine AWS-Instanz. Ich kann es nur meinen Server nennen. So können wir es so lassen wie es ist, und ich kann etwas verwenden, das
als Meta-Argument bezeichnet wird. Lassen Sie mich befehlen, das zu speichern, und lassen Sie uns Terraform googeln Meta-Argument. Und ich brauche nicht, dass es vom Meta-Argument
abhängt. Ich brauche wirklich das
Meta-Argument zählen. Aber lass uns vielleicht auf diesen klicken. Und in der
Terraform-Dokumentation können
Sie viele
verschiedene Metaargumente sehen Und die, an der ich
interessiert bin, ist, wie gesagt, zählen. Wir könnten zwar
eigentlich auch für jeden verwenden, aber ich werde dieses Mal count verwenden. Ich möchte, dass Sie gleichzeitig
auch feststellen, Sie nicht immer zur Terraform-Ressource
AWS wechseln möchten Was Sie wirklich
tun sollten, Sie sollten diese
Terraform-Dokumentation
durchgehen und sich
einige andere Dinge ansehen
, die mit Terraform erreicht werden können , aber nicht AWS-spezifisch Terraform bietet eine
perfekte Dokumentation für jedes einzelne Bit
und gibt
Ihnen auch Beispiele
wie hier, create four für jedes einzelne Bit
und gibt
Ihnen auch Beispiele
wie hier, create four. Wenn ich count four verwende, werden
einfach vier
ähnliche EC-Two-Instanzen erstellt. Kann es einfacher sein? Zähl vier, ich
brauche keine vier. Ich brauche 100. Was ich in meinem
Code sage ist, dass zählen gleich 100 ist. Das ist alles. 100 Server
werden erstellt. Aber wenn wir zu diesem
Zähl-Meta-Argument zurückkehren, können
Sie auch so
etwas sehen. Zähle den Punktindex.
Worum geht es da? Index, es ist auch eine
programmsprachspezifische Sache. Jedes Objekt, das einfach von Terraform erstellt
wird, hat seine Indexnummer Wir können das verwenden, um für jeden der Server,
die erstellt
werden,
unterschiedliche Namen zu haben Server,
die erstellt
werden,
unterschiedliche Namen zu da sie sonst
alle denselben Namen haben werden Vielleicht werde ich es dir zeigen
, anstatt zu versuchen zu erklären
, dass das dann Sinn macht. Ich werde den Zählindex kopieren. Ich werde hierher zurückkehren und ihn meinen Server nennen, nicht einen, sondern
ich habe natürlich 100 Server. Ich möchte nicht, dass sie alle als mein Server bezeichnet
werden. Ich werde vielleicht Dash und
dann diesen Zählindex verwenden , so
etwas oder vielleicht
sogar so etwas. eigentlich keine
Rolle. Lass mich einfach S
befehlen. Mal
sehen, was passiert. Lass mich das klarstellen. Wir bewerben uns bei
Terraform Bevor wir das vielleicht tun,
gehen wir zurück zu den Instanzen und lassen Sie uns den ganzen Mist beenden Es sind zu viele Dinge. Lassen Sie mich das jetzt auffrischen. Ich wollte
Ihnen nur sagen oder zeigen , dass bei uns keine
Instanzen laufen. Ich meine, wir haben drei, aber
sie sind jetzt beendet. Wir haben in einem
früheren Video damit gespielt. Wenn ich also den Instanzstatus
gleich Running wähle ,
sollte ich keinen haben Lassen Sie uns diesen Filter entfernen. Wir haben drei beendet. Gehen wir zurück zu unserem Code. Vielleicht werde ich
es etwas größer machen, Terraform auftragen und Enter drücken
. Mal sehen, was passiert Da steht 103 zum Hinzufügen. Das klingt ungefähr richtig,
denn wir haben 100 Instanzen, was 100 virtuelle Server
plus VPC plus zwei Subnetze bedeutet plus VPC plus zwei Subnetze Wenn wir überprüfen, was hier ist, VPC ist es Subnetz zwei,
Subnetz eins, und dann
haben wir unsere Instanzen Und das ist diese
Indexnummer, von der ich gesprochen habe. Zum Beispiel ist dieser 99. Ich wollte nur
überprüfen, ob es zwei Mikrometer sind. Ja, das ist in Ordnung. Wenn wir
weiter nach oben gehen, haben wir 98 usw., und
jemand wird sagen, warum es 99 sind und nicht 100 Ich glaube nicht, dass ich so weit nach
oben scrollen kann. Nein, ich kann nicht. Aber die Sache ist,
diese Indexzahl beginnt standardmäßig bei
Null zu zählen. Also Null ist wirklich
Server Nummer eins und 99 ist Server Nummer 100. Ja. Ja, ich könnte es bei plus eins
ändern, aber es hat wirklich
keinen Sinn und es würde bei eins
anfangen und bei 100
enden. Das ist nicht
wirklich mein Punkt. Wir sehen , dass es 100 Server
schaffen wird. Also sage ich einfach ja, klicke auf Enter und sie
werden erstellt. Wir sehen, dass es
zufällig ist, wie eine Zahl. Es fängt nicht bei
Null, Eins, Zwei, Drei an, es versucht einfach, sie
alle
gleichzeitig oder stapelweise zu erstellen , wie zuerst ein Haufen Server
und dann ein Haufen Server. Wenn wir gehen, ist es vielleicht abgeschlossen. Wir können 13 Sekunden sehen, wir sollten schon welche haben. Wenn ich hier schnell aktualisiere, Ordnung, wir können sehen, dass einige von ihnen hier bereits in Betrieb sind. Gehen wir also zurück zu unserem Code. Wir haben 68, ungefähr 22
Sekunden 13-22 Sekunden, ich kann die
Erstellungszeit für jeden Server sehen, wie hier, 22 und 13. Es wurden immer mehr von ihnen erstellt. Wenn ich also schon 28 zurückgehe, aktualisiere
ich, 37 aktualisiere ich erneut. Wir haben wieder mehr und mehr
Server aktualisiert. Oh, 99 wird gerade erstellt. Das ist der letzte. In Ordnung. Das war nicht erfolgreich,
was lustig ist denn es heißt API-Fehler,
VCPO-Limit überschritten Sie haben mehr VCPU
als Ihr aktuelles VCPUO-Limit von
32 angefordert als Ihr aktuelles VCPUO-Limit von
32 Ich war mir dessen nicht bewusst
, um ehrlich zu sein. Ich wusste nicht, dass
es so etwas gibt. In der Vergangenheit konnte ich 100 Server einrichten.
Das war kein Problem. Da steht, kontaktiere jetzt Amazon. Es ist einfach,
eine Anpassung dieses Limits anzufordern. Es sieht also so aus, als
hätten wir ein gewisses Limit. Also, wie viele Server
wurden tatsächlich erstellt? Lass uns einen Blick darauf werfen.
Oh, es hat bei 37 aufgehört. Hmm. Aber weißt du was?
Das war nicht der Punkt. Wir werden keine Änderungen
der Grenzwerte beantragen. Mein Punkt war, dass es einfach sehr
einfach ist , diese
Count-Metaargumente oder
andere Metaargumente zu verwenden , um
mehrere Dinge desselben
oder eines ähnlichen Typs zu erstellen . Wir haben 37 Instanzen, das ist
also gut genug für mich. Ich muss dieses
Limit nicht wirklich anpassen. Also sage ich einfach, Terraform
zerstören, automatisch genehmigen. Treten Sie ein und wir werden zerstören,
was wir dort haben. Wenn du zerstörst, wirst du sehen, dass Terraform
nur zerstört Du kannst jetzt 37 zum Zerstören sehen Terraform weiß, wie viele
dieser Server erstellt wurden,
und es weiß genau, wie viele es
zerstören muss, weil es all diese Informationen
in der TF-Statusdatei speichert all diese Informationen
in Wir können sehen, dass sie jetzt
zerstört wurden. Wenn wir also zurückgehen und uns aktualisieren, sollten
wir keine haben. Ich meine, sie wurden gekündigt. Also nochmal, Instanzstatus, wenn wir prüfen, ob der
Instanzstatus läuft, sollten
wir keine haben, und wir haben auch keine. Das ist cool.
26. Terraform mit GCP, Azure und anderen Anbietern: Jetzt haben Sie also einige
Terraform-Kenntnisse. Die Frage ist, was
machst du dagegen? Was machst du als Nächstes? Ja? lernst
du noch mehr
über Terraform Tatsache ist, dass die
Terraform-Dokumentation wirklich alles
ist Denn wenn Sie zurückgehen, könnte
ich mit Ihnen
jedes einzelne Beispiel hier durchgehen, wie man in IS,
Interraform usw. konfiguriert Aber was ist der Sinn?
Sie haben hier die gesamte Dokumentation, die
Sie benötigen, und Sie haben
sogar die Beispiele für Sie
parat. Ich sehe keinen
Sinn darin, das zu tun. Zweitens
weiß ich nicht einmal, ob Sie mithilfe von
Terraform mit AWS arbeiten möchten mithilfe von
Terraform mit AWS arbeiten Was ist, wenn Sie zum Beispiel GCP verwenden
möchten, GCP verwenden
möchten, wie den Google
Cloud-Anbieter, ich meine, wie verwenden Sie
Terraform Nun, die Antwort lautet,
Sie gehen einfach zu Google und sagen Terraform-Ressource,
GCP, Google Cloud-Anbieter und dann zum Beispiel und sagen Terraform-Ressource,
GCP, Google Cloud-Anbieter und dann zum Beispiel
Instanz. Wie nennen
sie Dateninstanzen? Es ist eine Google Compute-Instanz.
Du klickst einfach darauf. Und Sie haben hier die Beispiele, wie Sie Terraform
mit Google-Diensten verwenden können Wir haben eine
Google-Compute-Instanz. Es heißt Standard. Sie können diesen Namen in einen
beliebigen Namen
ändern. Der Maschinentyp ist etwas
anders und entspricht dem Standard, aber das ist sehr
einfach herauszufinden. Sie müssen nur in Google Cloud überprüfen
, was genau es ist und welchen
Instanztyp Sie benötigen. Sie haben die Zone,
Sie haben die Seiten. Alles ist dem,
was wir früher in AWS hatten, sehr ähnlich was wir früher in AWS hatten, sich im Grunde einfach die Dokumentation
an, gehen Sie sie durch und spielen Sie damit. Und wie ich bereits erwähnt habe, verlassen Sie sich
nicht nur darauf, was für einen
bestimmten Anbieter
verfügbar ist .
Schauen Sie in der Terraform-Dokumentation
nach, was verfügbar ist
und was nicht, was wir mit diesen
Zähl-Meta-Argumenten
getan haben Weil dies im Grunde
die Dokumentation für das
gesamte Terraform ist und Sie die Ressourcen sehen
können, aber Sie können Sie können Module sehen. Module sind wie die
Äquivalenz von Funktionen in Hoshi
Cor-Konfigurationssprache, bei der Sie
ein Modul erstellen und
es wiederverwenden können, indem Sie Parameter
und Attribute ändern Aber ich werde das nicht durchgehen , weil es nichts für
Anfänger ist und Sie nur damit arbeiten
werden, wenn Sie
mit einer riesigen
Infrastruktur arbeiten Dann
möchten Sie vielleicht Module verwenden. Aber mein Punkt ist, von hier aus können
Sie hingehen, wohin Sie wollen, mit allem
arbeiten, was Sie wollen. Sie müssen nur
diese Dokumentation verwenden, und sie wird Ihnen genau sagen, wie
Sie diese
bestimmte Ressource oder diese bestimmte Funktion
oder
dieses bestimmte Hilfsprogramm innerhalb
der Ära verwendet Funktion
oder
dieses bestimmte Hilfsprogramm innerhalb haben. Denken Sie also daran, dass Sie viele
andere DevOps-Tools erlernen können, wenn Sie hier
nicht
nur auf Terraform aufhören wollen Sie Wenn Sie einfach zur
Automation-Plattform avenue.com gehen. Sie finden AWS-Schulungen, Python-Programmierschulungen und viele,
viele weitere Informationen.
Wenn Sie sich in Richtung DevOps
oder Cloud Engineer
weiterentwickeln möchten , ist
das der perfekte Ausgangspunkt
für Sie Wenn Sie diesem
Material gefolgt sind und tatsächlich mit der
Infrastruktur in AWS
gespielt haben, möchten Sie
vielleicht vielleicht einen Load
Balancer hinzufügen ,
vielleicht eine Zielgruppe usw. Sie möchten
Ihrer Infrastruktur
immer mehr Elemente hinzufügen immer mehr Elemente hinzufügen und damit spielen Aber alle Informationen, die
Sie hier benötigen, finden Sie in der Terraform-Dokumentation mit Beispielen, die für Sie bereit stehen Sie kopieren sie einfach, fügen sie ein und ändern, was auch immer
Sie ändern möchten Ich hoffe, das ist hilfreich und
danke fürs Zuschauen.