.. | ||
x_res | ||
README.md |
KN04 Inhaltsverzeichnis
[TOC]
Lernziele
- Kompetenzband E: Betriebsarchitektur konzipieren (Handlungsziele 1,2)
- Kompetenzband F: Applikation in Betrieb nehmen (Handlungsziele 3,4)
- Kompetenzband H: Daten-Sicherheit implementieren (Handlungsziel 3,4)
Challenges
A) S3 Bucket (Object Store) erstellen und Objekte darin ablegen (Beginner)
Ausgangslage:
Im ersten Challenge dieses Kompetenznachweises werden Sie einen sogenannten S3-Bucket aufsetzen, konfigurieren und anschliessend ein Bild (Object) darin ablegen. Sie lernen ausserdem, was ein Object Store ist und welche Vor- und Nachteile er gegenüber anderen Storage-Lösungen bietet.
B) Mit "Cloud-init" einen Webserver aufsetzen mit Zugriff auf Bild im S3-Bucket (Advanced)
Ausgangslage:
In diesem Auftrag werden Sie eine Amazon EC2-Instanz mit einem Cloud-Init-Skript aufzusetzen. Schwerpunkt ist der Content dieses IaC-Scripts, welches Sie selbständig und mit Know-how aus der letzten Übung selber zusammenbauen. Ziel ist es, dass Ihr Webserver das Bild, welches auf dem S3-Bucket liegt, auf der Index-Seite anzeigt.
C) Template (Beginner)
Ausgangslage:
Damit Ihr Coach / Lehrperson ebenfalls auf Ihre Instanz zugreifen kann, ergänzen Sie Ihre cloud-init-Scripts auch mit dessen Public-Key. Fordern Sie diesen an und ergänzen Sie diesen unter ssh_authorized_keys. Dieser Auftrag ist erfüllt, wenn die Lehrperson anschliessend ohne Authentifikation auf Ihre Instanzen zugreifen kann.
D) Auftrennung von Web- und Datenbankserver (Advanced)
Ausgangslage:
Bei KN02 haben Sie die gesamte Software für sämtliche Dienste und die zugehörige Software auf einer EC2-Instanz installiert (Apache Webserver, PHP, PHP-Erweiterung, PHP-Mysqli und den DB-Server). In dieser Übung erstellen Sie nun für dieselben Dienste zwei EC2-Instanzen. Diese Aufteilung ist ein erster Schritt in Richtung Microservices. Ausserdem werden sie die Kommandos aus KN02 nicht mehr von Hand ausführen, sondern in zwei separaten .YAML-Files schreiben. Damit erfüllen Sie zwei wesentliche Best practice Ansätze der modernen Plattformentwicklung:
- Aufteilung in Microservices
- Deklaratives Setup mit Infrastructure as Code (IaC)
Sozialform:
- Einzel / Tandem (Jede:r dokumentiert im eigenen Repository)
Leistungsnachweis:
- Dokumentation im persönlichen Repository
- Live-Demo