Alles was du für die Cloud Practitioner Zertifizierung wissen musst

Lerne die Basics von AWS um die AWS Cloud Practitioner Prüfung zu bestehen

AWS Überblick der Zertifikate (Quelle: AWS Homepage)

Die AWS Cloud Practitioner Zertifizierung ist perfekt für Leute welche über die Grundlagen von AWS lernen möchten ohne einen spezifischen Hintergrund (Entwickler, SysAdmin ..etc). In diesem Artikel präsentiere ich alle wichtigen AWS Services welche man für die AWS Cloud Practitioner Zertifizierung benötigt und erkläre euch ein bisschen etwas darüber was AWS und Cloud Computing eigentlich ist.

Cloud Computing

Bevor wir uns mit den spezifischen AWS Services beschäftigen müssen wir ein paar Vokabeln lernen und erklären. Der erste Grundlegende Begriff den wir kennen lernen ist Cloud Computing - Cloud Computing ist on-demand Speicher, Prozessorleistung und mehr via einer Internet Plattform - die kosten sind hierbei meist pay-as-you-go, dies bedeutet, man bezahlt nur Ressourcen welche man auch wirklich verwendet.

6 Vorteile von Cloud Compouting

Cloud Computing bietet 6 große Vorteile gegenüber dem altem Standard von On-Premise Hosting (In deinem eigenen Datacenter).

Ersetze Fixkosten durch Variable Kosten

Wenn ich ein eigenes Datacenter betreibe habe ich gigantische Investitionskosten und auch laufende Kosten für Ressourcen welche ich vielleicht (noch) nicht benötige. In Cloud Computing zahle ich nur für Ressourcen welche ich auch wirklich benötige.

Economies of Scale

Amazon besitzt hundert tausende Kunden auf der gesamten Welt - dadurch können sie die Preise für den einzelnen Kunden geringer halten.

Nie wieder Kapazitäten schätzen

In einem klassischen Datenzentrum muss man immer mehr Ressourcen haben als man benötigt, denn sollte es einen plötzlich Anstieg in Benutzern geben muss man diesen Anstieg abfangen können ohne Downtime zu haben. AWS löst dieses Problem durch Cloud Scaling. Die Cloud skaliert automatisch mit deinem Business Model und du zahlst trotzdem nur für die Ressourcen die du benötigst.

Sei schnell und Agil

Einen neuen Server zu deployen dauert Cloud Computing nur wenige Minuten - dies bedeutet, dass die IT Abteilung schneller entwickeln, deployen und testen kann wodurch deine Organisation schneller und agiler wird.

Kümmere dich nicht mehr um das Datacenter

Deine Firma kann sich auf die Entwicklung konzentrieren, Amazon kümmert sich um den Erhalt vom Datacenter.

Weltweit erreichbar in Minuten

Dank Amazon kannst du deine Applikation weltweit deployen innerhalb von Minuten. Dank AWS Regions brauchst du keine Datacenter auf anderen Kontinenten oder Verträge mit unterschiedlichen Anbietern.

Arten von Cloud Computing

Cloud Computing ist nicht gleich Cloud Computing - es gibt unterschiedliche Arten und jede hat seine eigenen Vor- und Nachteile.

Infrastructure-as-a-Service (IaaS)

Bei IaaS hast du direkten Zugriff auf deinen Server (dieser kann physisch oder virtuell sein) und du kannst dort tun was du willst. Der Provider kümmert sich nur um die Vor-Ort Wartung.

Platform-as-a-Service (PaaS)

Bei PaaS kümmert sich der Cloud Provider um die Plattform (Hardware und OS) von deinem Server und du kümmerst dich nur noch um die Software auf deinem Server.

Software-as-a-Service (SaaS)

Bei SaaS bietet dir der Provider eine fertige Software zum benutzen an. Software-as-a-Service richtet sich meist an Endkunden (z.B.: GMail)

AWS Infrastruktur

AWS hat 3 Arten von Infrastruktur Locations (sämtliche Locations findest du hier):

Region

Eine Region in AWS ist eine geographische Zone (z.B.: London oder Franfurt). Jede Region besteht aus mindestens 2 Availability Zones (AZs)

Availability Zone (AZ)

Eine Availability Zone ist einfach gesagt ein oder mehrere Datenzentren.

Edge Location

Edge Location sind CDN Punkte für CloudFront. Sie bieten dir die möglichkeit deinen Content schnell und einfach möglichst nahe an deine Endkunden zu platzieren. in Edge Locations können allerdings keine Daten gespeichert werden, sondern nur gecached.

AWS Support Plans

AWS bietet 3 unterschiedliche Support Plans für ihre Kunden an.

Basic Developer Business Enterprise
Preis Gratis 29$/Monat 100$/Monat 15.000$/Monat
Nutzen Zum ausprobieren Zum experimentieren Für Firmen mit Produktivsystem in AWS Für Firmen mit kritischen System in AWS
Support Kundenservice für Account & Zahlung Support während Geschäftszeiten 24/7 Support 24/7 Support
Support Reaktionszeit - Allgemein: < 24 Stunden
Systemkritisch: < 12 Stunden
Während Geschäftszeiten
Allgemein: < 24 Stunden
Systemstörung: < 12 Stunden
Produktionssysteme betroffen: < 4 Stunden
Produktionssysteme ausgefallen: < 1 Stunde
Allgemein: < 24 Stunden
Systemstörung: < 12 Stunden
Produktionssysteme betroffen: < 4 Stunden
Produktionssysteme ausgefallen: < 1 Stunde
Business Kritische Systeme ausgefallen: < 15 Minuten

Zugriff auf AWS

Es gibt 3 Arten wie du auf AWS Zugreifen kannst:

  • Mit der Console (Web)
  • Über das AWS Cli Tool (command line Interface)
  • Mit dem AWS SDK

AWS Root Account

Der AWS Root Account ist der Besitzer und hat komplette Admin Rechte. Er kann andere Nutzer erstellen und Rechte erteilen. Der Root User sollte aus sicherheitstechnischen Maßnahmen nie verwendet und mit multi-factor authentication (MFA) abgesichert sein.

Groups

In Gruppen sammelst du dein Benutzer. Ein User in einer Gruppe hat sämtliche Rechte dieser Gruppe (z.B.: Developer, Operations,…etc).

Policies

Rechte werden über Policies verteilt. Policies werden im JSON Format definiert.

AWS Services

Nun kommen wir zum wichtigsten Thema, den grundlegenden AWS Services.

EC2

Amazon Elastic Compute Cloud (EC2) bietet dir die Möglichkeit skalierbare Rechenkapazität zu konfigurieren. Es ist möglich so viele EC2 Instanzen wie man will du deployen und auch automatisch zu skalieren.

Grundlegende EC2 Funktionen
  • Umgebungen werden in sogenannten Instances deployed und verwaltet
  • Es gibt Vorlagen (Amazon Machine Images - AMIs) welche für die Erstellung des Virtuellen Servers verwendet werden können
  • Unterschiedliche Konfiguration für CPU, Arbeitsspeicher, Speicher und Netzwerkkapazität werden als Instance-Types bezeichent
  • Es ist möglich einer EC2 Instanz eine statische IP zuzuweisen - In AWS heißt dies Elastic IP Adresse
  • Eine Instance kann temporäre Volumes oder persistenten Block Storage besitzen
  • Durch EC2 Auto Scaling können jederzeit neue EC2 Instanzen gestartet bzw beendet werden.
Arten von EC2 Instanzen

EC2 bietet 3 unterschiedliche Instanzen an:

  • On-Demand Instanzen
    • On Demand Instanzen zahlst du pro benutzter Stunde und kannst sie jederzeit starten und beenden.
  • Reserved Instanzen
    • Reservierte Instanzen bieten einen Rabatt (Bis zu 75%) gegenüber On-Demand Instanzen an. Du kannst allerdings trotzdem flexibel die Art von Instanz & das Betriebssystem wählen.
  • Spot Instanzen
    • Spot Instanzen erlauben es dir billig unbenutzte Ressourcen zu kaufen. Sie sind wesentlich billiger als On-Demand & Reserved Instances, allerdings können sie jederzeit wieder beendet werden (Wenn die Ressourcen gebraucht werden) und stehen nicht immer zur Verfügung.

AWS Elasticbeanstalk

AWS ElasticBeanstalk ermöglicht es dir automatisch eine Infrastruktur für dein Projekt erstellen zu lassen. Du musst nur den Code auf AWS laden und AWS erstellt automatisch alle benötigten Services.

AWS Lambda

AWS Lambda ermöglicht es dir Code auszuführen ohne Infrastruktur. Amazon kümmert sich im Hintergrund um alles und die Entwickler müssen sich keinen Kopf machen die Infrastruktur, Server Ressourcen oder Performance.

S3

Amazon Simple Storage Service (S3) bietet Entwicklern einen sicheren, skalierbaren und hoch verfügbaren Objektspeicherservice. S3 kann mithilfe von der Web Console oder auch dem CLI und SDK verwendet werden. Die Daten werden redundant gespeichert.

Grundlegende S3 Funktionen
  • S3 ist Objektbasiert (man kann Dateien hochladen)
  • Maximale Dateigröße ist 5TB
  • S3 hat unlimitierten Speicherplatz (wird automatisch vergrößert & man bezahlt nur benutzten Speicherplatz)
  • Dateien werden in sogenannten Buckets gespeichert
  • Amazon garantiert 99.9% Availability & 99.999999999% (11x 9s) Durability für S3 Informationen
  • Es gibt unterschiedliche Speicherlevels
  • Lifecycle Mangement, Versioning & Verschlüsselung sind möglich
  • Zugriff auf S3 Buckets kann durch Access Control Lists (Objekt Level) und Bucket Policies (Bucket Level) eingeschränkt & erweitert werden
Data Consistency Model

Im Data Consistency Model wird beschrieben wann Daten Verfügbar (gespeichert) sind in S3

  • Neue Objekte sind sofort nach dem Schreiben verfügbar zum lesen
  • Überschreiben und Löschen von Objekten kann eine Zeit dauern - vorallem wenn die Daten redundant in unterschiedlichen Zonen gespeichert sind
S3 Speicherklassen

In S3 gibt es unterschiedliche Speicherklassen welche sich im Preis, Durability und Availability unterscheiden.

S3 Standard

S3 Standard bietet niedrige Latenz und hohe Performance. Objekte haben 99.99% Availability und 99.999999999% Durability.

S3 Intelligent-Tiering

Das S3 Intelligent-Tiering verschiebt Objekte automatisch zwischen den Unterschiedlichen Klassen um möglichst Kos­ten­ef­fi­zi­ent zu sein. Für diese Funktion zahlt man allerdings auch eine kleine Monitoring Gebühr.

S3 Standard-Infrequent Access (S3 Standard-IA)

S3 Standard-Infrequent Access speichert Daten welche seltener aber trotzdem schnell gebraucht werden. S3 Standard IA hat niedrigere pro GB kosten aber dafür höhere Transferkosten.

S3 One Zone-Infrequent Access (S3 One Zone-IA)

S3 One Zone IA hat die selbe Leistung wie Standard IA, kostet allerdings 20% weniger da die Daten nur in einer Zone gespeichert werden. Dadurch ist es allerdings wahrscheinlicher das Daten verloren gehen - hat nur eine 99.5% Availability.

S3 Glacier

S3 Glacier speichert Daten billig und sicher - allerdings kann es bis zu 12 Stunden dauern um auf die Daten zugreifen zu können.

Webseiten Hosten in S3

S3 bietet einem die Möglichkeit eine Website zu hosten - allerdings darf diese Seite nur aus statischen Objekten bestehen (HTML, CSS, JS). Webseiten welche eine Datenbank oder Serverseitige Skripts benötigen (wie z.B.: Wordpress) können nicht auf S3 gehostet werden. Allerdings bietet S3 damit eine billige, einfache und schnelle Variante um statische Website zu hosten.

AWS CloudFront

CloudFront ist Amazons CDN. Wir haben es bereits angesprochen in den Edge Locations. CloudFront speichert eine Kopie deiner Application in einem Datencenter welches näher an deinem Endkunden ist. Dadurch können Ladezeiten reduziert werden.

AWS Kostenmangement

In AWS gibt es ebenfalls einige Tools um dein Budget und deine Kosten zu managen, diese inkludieren AWS Budgets, AWS Cost & Usage Reports und den AWS Cost Explorer.

Amazon RDS

Amazon Relational Database Service (Amazon RDS) macht es einfach eine skalierbare, relationale Datenbank in der Cloud zu erstellen. Du kannst beim erstellen zwischen unterschiedlichen Datenbankprovidern wählen, unteranderem zwischen PostgreSQL, MySQL, Oracle DB und Microsoft SQL Server. Natürlich bietet Amazon auch eine hauseigene Datenbank Engine an, namens Amazon Aurora.

Amazon DynamoDB

Amazon DynamoDB bietet einem eine Key-Value oder Document Datenbank (NoSQL Datenbank). Der Service wird komplett verwaltet von Amazon und kann mehr als 20 Millionen Zugriffe pro Sekunde verarbeiten.

Amazon VPC

Amazon Virtual Private Cloud (Amazon VPC) ist ein essentieller Teil von AWS. Dieser Service ermöglicht es dir ein Virtuelles Netzwerk zwischen deinen einzelnen Services zu erstellen. VPC ermöglicht es dir Subnets, Routing Tables, Network Gateways, und vieles mehr zu konfigurieren.

Außerdem kannst du mithilfe eines hardware VPNs eine Verbindung zwischen deinem Lokalen Firmen Netz und dem Amazon VPC machen.

Amazon Route53

Amazon Route53 ist ein hoch verfügbarer skalierbarer Domain Name Service (DNS). Route53 ermöglicht Latenzbasiertes Routing, Geo DNS und weighted Round Robin.

Amazon API Gateway

Amazon API Gateway ist ein managed Service welcher es Entwicklern ermöglicht APIs zu entwickeln, veröffentlichen und zu überwachen. Die Schnittstellen im API Gateway können dann verlinkt werden mit EC2 Instanzen oder AWS Lambda Funktionen.

Elastic Load Balancing

Elastic Load Balancing (ELB) kann automatisch eingehende Verbindungen analysieren und Instanzen erstellen bzw zerstören. Hierbei kann man unterscheiden zwischen Application Load Balancer und Network Load Balancer.

Abschließende Worte

In diesem Artikel haben wir gelernt was Cloud Computing ist und wir haben die wichtigsten AWS Services kennen gelernt. Dieser Artikel soll eine Hilfe darstellen für das AWS Cloud Practitioner Zertifikat und keine 100% Anleitung. Ich empfehle trotzdem die verlinkten Ressourcen zu lesen und zu lernen (Vor allem das Overview Whitepaper), da ich in diesem Artikel nur auf die wichtigsten Services eingegangen bin.

Kommentare laden?