- Im ersten Challenge dieses Kompetenznachweises setzen Sie nach Anleitung eine **VPC** (Virtual Private Cloud) auf. Sie verwenden dazu den Kurs **AWS Academy Cloud Foundations Module 5 / Lab 2 - Build your VPC and Launch a Web Server** Auftrag nach Anleitung durchführen.
- In dieser Übung nutzen Sie das **Learner Lab**. Sie erstellen eine VPC (Virtual Private Cloud) mit je zwei Public- und Private Subnets in zwei verschiedenen Availability Zones. Für die Private Subnets erstellen Sie eine neue Route-Table und für die Public Subnets einen Internet-Gateway. Dieses virtuelle Datacenter ist somit so konfiguriert, dass sie in der nächsten Übung Instanzen im Public und im Privaten Subnet erstellen können. Während die eine Instanz von aussen zugänglich ist, kann die interne nur über die interne Adresse erreicht werden. Sie nutzen dafür ihre Subnet-Kenntnisse von früheren Modulen.
### C) Installation von zwei EC2-Instanzen mit unterschiedlichen Security Groups. Eine Instanz ist von aussen zugänglich (Webserver) und die andere kann nur vom Webserver aus über die Private IP-Adresse angesprochen werden
- Hier nutzen Sie ebenfalls das **Learner Lab**. Dieses Lab baut auf der vorangegangenen Aufgabe auf. Sie installieren zwei EC2-Instanzen. Die erste EC2-Instanz ist ein Webserver und wird in eines der beiden Public Subnets gelegt. Die zweite Instanz wird in eines der beiden Private Subnets gelegt und so aufgesetzt dass lediglich Instanzen innerhalb derselben VPC über die interne IP-Adresse per ICMP (Ping) darauf zugreifen können. Beweisen Sie danach, dass ihr Webserver funktioniert und Sie von da aus einen ****
Sie installieren zusätzlich weitere Software (Webserver, PHP und eine Datenbank), klonen ein bestehendes Repository in die laufende EC2-Instanz und kopieren den Content in das Hauptverzeichnis des Webservers (/var/www/html). Diese Schritte führen Sie der Reihe nach auf der Kommandozeile durch. Beweisen Sie danach, dass ihr Webserver funktioniert und Sie auch auf die Datenbank zugreifen können.
:bookmark: Beim **imperativen** Vorgehen werden die Anweisungen detailliert und Schritt für Schritt ausgeführt. In den folgenden Übungen werden Sie auch noch den **deklarativen** Ansatz und seinen **grossen Mehrwert** gegenüber dem **imperativen Ansatz** kennenlernen. In diesem Fall wird der gewünschte Zustand des Services in einem Manifest (z.B. YAML-File) **deklariert**. **IaC** (Infrastructure as Code) ist im Alltag der **Plattform- und Applikationsentwickler** nicht mehr wegzudenken.