[10]: https://git-scm.com/downloads ![TBZ Banner](../../x_gitres/tbz_logo.png) # Inhaltsverzeichnis KN02 Challenge A) ### Erster Teil-Challenge [TOC]
## Ausgangslage: Verwenden Sie für den folgenden Teil-Challenge (bestehend aus zwei Labs) das AWS Academy *"**Learner Lab**"*. Ab jetzt arbeiten Sie **immer** im **Learner Lab** - **Ausser explizit anders angegeben.** - Der **erste** Teil-Challenge von **KN02 A)** heisst **EC2 Einstieg**. Dieses Lab ist der erste Kompetenznachweis von Challenge **A)**. Sie erstellen erstmals eine **EC2 Instanz** und ergänzen diese mit einem einfachen **IaC-Code**, der zusätzlich einen Webdienst installiert, aktiviert und eine einfache Webseite mit einem Titel **Modul 346 Challenge KN02a: **CAL** mit den **ersten drei Buchstaben ihres Nachnamens**. ```bash #!/bin/bash yum update -y yum -y install httpd systemctl enable httpd systemctl start httpd echo '

Modul 346 Challenge KN02a: CAL

' > /var/www/html/index.html ``` **:pushpin: Details zum Skript:** - Dieses Bash-Skript wird mit Root-Benutzerrechten auf dem Gastbetriebssystem der Instanz ausgeführt. - Es wird automatisch ausgeführt, wenn die Instanz zum ersten Mal startet. - Das Skript führt folgende Aktionen aus: - Aktualisiert den Server - Installiert einen **Apache Webserver (httpd)** - Konfiguriert den Webserver so, dass er automatisch beim Booten startet - Startet den Webserver - Erstellt eine einfache Webseite #### 8. Task: Überprüfen Sie die Instanz und starten Sie diese **:radio_button: Schritt 13: Instanz starten** - Wählen Sie am Ende des **Summary**-Panels auf der rechten Seite des Bildschirms das orange Feld **Launch instance**. - Sie werden eine **Success message** (Erfolgsnachricht) sehen. **:radio_button: Schritt 14: Alle Instanzen anzeigen** - Wählen Sie das orange Feld **View all instances**. - Die Instanz wird zunächst im **Pending**-Zustand angezeigt, was bedeutet, dass sie gestartet wird. Der Zustand ändert sich dann auf **Running**, was anzeigt, dass die Instanz mit dem Booten begonnen hat. Es kann einige Minuten dauern, bis die Instanz hochgefahren ist. **:radio_button: Schritt 15: Details zur Instanz überprüfen** - Wählen Sie die Instanz **Web Server 1** aus und überprüfen Sie die Informationen im Tab **Details**, der im unteren Bereich angezeigt wird. - Beachten Sie, dass die Instanz eine **öffentliche IPv4-Adresse** hat. Sie können diese IP-Adresse verwenden, um von außerhalb mit der Instanz zu kommunizieren. **:radio_button: Schritt 16: Warten auf den vollständigen Start** - Bevor Sie fortfahren, warten Sie, bis Ihre Instanz Folgendes anzeigt: - **Instance state:** Running - **Status check:** 2/2 checks passed **:pushpin: Hinweis:** Dies kann einige Minuten in Anspruch nehmen. Wählen Sie das **Aktualisieren**-Symbol oben auf der Seite alle 30 Sekunden oder so, um schneller über den neuesten Status der Instanz informiert zu werden. #### 9. Task: Greifen Sie auf Ihre EC2-Instanz zu Als Sie Ihre EC2-Instanz gestartet haben, haben Sie ein Skript bereitgestellt, das einen Webserver installiert und eine einfache Webseite erstellt hat. In diesem Task werden Sie versuchen, auf den Inhalt des Webservers zuzugreifen. **:radio_button: Schritt 17: Öffentliche IPv4-Adresse kopieren** - Kopieren Sie den Wert der **Public IPv4 address** Ihrer Instanz aus dem Tab **Details** in Ihre Zwischenablage. **:pushpin: Hinweis:** Eine öffentliche Adresse bedeutet, dass die Instanz von Internet aus erreichbar ist. Jede Instanz, die eine öffentliche IP-Adresse erhält, erhält auch einen externen DNS-Hostnamen, zum Beispiel: **ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com**. AWS löst einen externen DNS-Hostnamen in die öffentliche IP-Adresse der Instanz auf, wenn die Kommunikation von außerhalb ihrer VPC kommt. Wenn die Kommunikation von innerhalb der VPC erfolgt, wird der DNS-Hostnamen in die private IPv4-Adresse aufgelöst. **:radio_button: Schritt 18: Im Webbrowser zugreifen** - Öffnen Sie einen neuen Tab in Ihrem Webbrowser, fügen Sie die öffentliche IP-Adresse, die Sie gerade kopiert haben, ein und drücken Sie die Eingabetaste. **:pushpin: Hinweis:** Die Webseite wird nicht geladen. Sie müssen die **Security Group** (Sicherheitsgruppe) noch mit einer **Inbound rule** ergänzen, um auf die Seite zugreifen zu können. #### 10. Task: Aktualisieren Sie die Security Group Sie können nicht auf Ihren Webserver zugreifen, da die Sicherheitsgruppe den eingehenden Datenverkehr über **Port 80**, der für HTTP-Webanfragen verwendet wird, nicht zulässt. In dieser Aufgabe aktualisieren Sie die Sicherheitsgruppe. **:radio_button: Schritt 19: Zur EC2-Management-Konsole zurückkehren** - Kehren Sie zum Browser-Tab der EC2-Management-Konsole zurück. **:radio_button: Schritt 20: Sicherheitsgruppen auswählen** - Wählen Sie im linken Navigationsbereich unter **Network & Security** die Option **Security Groups**. **:radio_button: Schritt 21: Webserver-Sicherheitsgruppe auswählen** - Wählen Sie die Sicherheitsgruppe **Web Server** aus, die Sie beim Start Ihrer EC2-Instanz erstellt haben. **:radio_button: Schritt 22: Eingehende Regeln anzeigen** - Wählen Sie im unteren Bereich den Tab **Inbound rules**. #### 11. Task: Inbound rule erstellen **:radio_button: Schritt 23: Eingehende Regeln bearbeiten** - Wählen Sie **Edit inbound rules** und dann **Add rule**. **:radio_button: Schritt 24: Konfigurieren Sie die Regel** - Konfigurieren Sie folgendes: - **Type:** HTTP - **Source:** Anywhere-IPv4 - Wählen Sie **Save rules**. **:pushpin: Hinweis:** Die neue eingehende HTTP-Regel erstellt einen Eintrag für IPv4-IP (0.0.0.0/0) und IPv6-IP-Adressen (::/0). #### 12. Task: Regel testen **:radio_button: Schritt 25: Zur vorherigen Registerkarte zurückkehren** - Kehren Sie zu dem Tab zurück, den Sie verwendet haben, um eine Verbindung zum Webserver herzustellen. **:radio_button: Schritt 26: Seite aktualisieren** - Aktualisieren Sie die Seite. - Die Seite sollte die Nachricht **Modul 346 Challenge KN02a: ** anzeigen. #### Lab abgeschlossen Herzlichen Glückwunsch! Sie haben das Lab abgeschlossen. **:radio_button: Schritt 27: Abmelden von der AWS Management Console** - Melden Sie sich von der AWS Management Console ab. - Klicken Sie in der oberen rechten Ecke der Seite auf Ihren Benutzernamen - Wählen Sie **Sign out**. **:radio_button: Schritt 28: Labor beenden** - Wählen Sie **End Lab** im **Learner Lab** und bestätigen Sie mit **Yes**, dass Sie das Labor beenden möchten. #### Ziel der Übung :bell: Erste Hands-on Erfahrung mit dem AWS Service **EC2** (Elastic Compute Cloud) ##### Leistungsnachweis - [ ] HTML-Seite, inkl. URL - [ ] Liste der EC2-Instanzen - [ ] Details der *Web Server*-Instanz (öffentliche IP sichtbar) - [ ] Security-Group: Liste der Inbound-Regeln. Beachten Sie ausserdem die [allgemeinen Informationen zu den Abgaben](../../Abgaben.md). #### b) 2. Lab - S3 Einstieg Führen Sie alle Schritte durch. Sie erstellen die Screenshots der verschiedenen Bereiche für Ihre Abgabe **nachdem** Sie **alle** Schritte des Challenges durchgeführt haben. #### Ziel der Übung :bell: Erste Hands-on Erfahrung mit dem AWS Service **S3** (Object Storage) ##### Leistungsnachweis - [ ] Liste der Buckets. - [ ] HTML-Seite, inkl. URL. - [ ] Liste der Dateien im Bucket. - [ ] Eigenschaften von "Static website hosting". Beachten Sie ausserdem die [allgemeinen Informationen zu den Abgaben](../../Abgaben.md).


---- ALLES WAS HIER KOMMT, AM ENDE LÖSCHEN ##### Leistungsnachweis - [ ] Erstellen Sie Screenshots der **drei** Webseiten (mit sichtbaren URLs). - [ ] Differenziert und nachvollziehbar im persönlichen Repository dokumentiert. - [ ] Fachgespräch mit Coach. Beachten Sie ausserdem die [allgemeinen Informationen zu den Abgaben](../Abgaben.md). ##### Beispiel-Abgabe: - Screenshots der drei URLs: Apache | PHP | DB-User :---:|:---:|:---:| ![Apache](./x_res/03a_apache_300.png) | ![PHP](./x_res/03b_apache_300.png) | ![User](./x_res/03c_user_300.png)
--- > [⇧ **Zurück zu KN02**](../KN02.md) --- > [⇧ **Zurück zur Hauptseite**](https://gitlab.com/ser-cal/M346) ---