Test I (Virtualisierung) - Theorie

Cloud Computing

Trend zum Cloud Computing

Vorteile:

  • Skalierbarkeit:
    Cloud-Dienste passen IT-Ressourcen flexibel an. Unternehmen können bei steigendem Bedarf einfach mehr nutzen und bei sinkendem Bedarf wieder reduzieren.

  • Kostenersparnis:
    Statt teurer Hardware zahlen Unternehmen nur für die tatsächlich genutzten Cloud-Ressourcen, was Kosten senkt.

  • Zugänglichkeit und Mobilität:
    Mitarbeiter können von überall mit Internetzugang auf die Cloud zugreifen, was mobiles Arbeiten und Teamarbeit erleichtert.

  • Wartung und Updates:
    Der Cloud-Anbieter kümmert sich um die Wartung und Updates der Systeme, was interne IT-Teams entlastet.

  • Sicherheit und Zuverlässigkeit:
    Cloud-Anbieter sorgen durch hohe Sicherheitsstandards und automatische Backups für den Schutz der Daten und minimieren Ausfallzeiten.

Mögliche Nachteile:

  • Ohne Internet kann nicht gearbeitet werden.

  • Weniger Kontrolle über eigene Daten.

  • Möglicherweise über Langzeit teurer.

  • Vendor Lock-in möglich.



On-Premise vs Cloud-Computing

Vor- und Nachteile:

Cloud-Computing

On-Premise

Pay-As-You-Go Prinzip

Hohe Anfangsinvestitionen

Sehr gut skalierbar

Begrenzte Skalierbarkeit

Flexibel

Volle Kontrolle über Hardware/Software und Sicherheitsmaßnahmen

Wenig eigene Kontrolle über Sicherheit und Datenschutz



Cloud Maturity Model

Klassische Merkmale

Cloud Maturity Model

  • Klassisch (On-Prem):
    Unternehmen nutzen traditionelle physische Server und manuelle Prozesse.

  • Virtualisiert:
    Unternehmen setzen auf virtuelle Maschinen, um Hardware besser zu nutzen und flexibler zu sein.

  • Cloud Ready:
    Unternehmen bereiten ihre IT vor, um Cloud-Dienste zu nutzen, und starten die Migration von Anwendungen in die Cloud.

  • Cloud Native:
    Anwendungen werden speziell für die Cloud entwickelt, mit Fokus auf Skalierbarkeit und Effizienz. Es werden Microservices, Container und DevOps-Praktiken eingesetzt.

Erklärung der Begriffe

  • Monolithische 3-Tier Apps:
    Traditionelle Softwarearchitektur mit drei Schichten: Präsentation (Benutzeroberfläche), Logik (Geschäftslogik) und Datenbank (Speicherung). Alles ist in einer einzigen Anwendung zusammengefasst.

  • Lift-and-Shift:
    Migration einer Anwendung von einer lokalen Umgebung in die Cloud, ohne Änderungen an der Architektur vorzunehmen.

  • Refactoring:
    Überarbeitung des Codes einer Anwendung, um ihn für die Cloud zu verbessern, ohne die grundlegende Funktionalität zu ändern.

  • DevOps:
    Integration von Entwicklungs- (Development) und Betriebsprozessen (Operations) zur Verbesserung von Zusammenarbeit, Automatisierung und kontinuierlicher Auslieferung von Software.

  • Microservices:
    Architekturansatz, bei dem eine Anwendung in kleine, unabhängige Dienste zerlegt wird. Jeder Service kann separat entwickelt, bereitgestellt und skaliert werden.

  • Hybrid Cloud:
    Kombination aus On-Premise-Infrastruktur (lokal) und Public Cloud, um das Beste aus beiden Welten zu nutzen.

  • MultiCloud:
    Nutzung mehrerer Cloud-Dienste von verschiedenen Anbietern, um Abhängigkeiten zu verringern oder spezielle Funktionen zu nutzen.

  • HyperScaler:
    Große Cloud-Anbieter, die eine extrem skalierbare Infrastruktur anbieten, z. B. Amazon Web Services (AWS), Microsoft Azure, Google Cloud.



Hypervisor-Varianten

Typ-1-Hypervisor

  • Direkt auf die Hardware installiert (als Hypervisor Betriebssystem).
    Gast-OS können direkt auf die Hardware zugreifen.

Anbieter

Vorteile

Nachteile

Hyper-V, ESXi/ESX

Performant

Komplizierte Einrichtung



Typ-2-Hypervisor

  • Besitzt ein Host-Betriebssystem.
    Vollwertiges Betriebssystem zwischen Hardware und Hypervisor.

Anbieter

Vorteile

Nachteile

VirtualBox, VMware Workstation

Billiger für KMU’s

Potenzieller Overhead

Hypervisor



Warum verwenden wir Virtuelle Maschinen

Gründe für…

  • Partitionierung:
    Ressourcen eines physischen Servers effizient auf mehrere virtuelle Maschinen aufzuteilen.

  • Isolation:
    Anwendungen voneinander zu trennen, um Störungen oder Sicherheitsrisiken zu minimieren.

  • Kapselung:
    Anwendungen und ihre Umgebungen in separate Container zu packen, die leicht verschoben und verwaltet werden können.

  • Hardwareunabhängigkeit:
    Betriebssysteme und Anwendungen von der zugrunde liegenden Hardware zu entkoppeln, um Portabilität und Flexibilität zu gewährleisten.



Virtualisierung vs Cloud

Virtualisierung vs Cloud

  • Virtualisierung:
    Virtualisierung ist eine Technologie, die es ermöglicht, mehrere virtuelle Maschinen (VMs) auf einer einzigen physischen Hardware zu betreiben. Jede VM funktioniert wie ein eigenständiger Computer mit eigenem Betriebssystem und Anwendungen.

  • Cloud:
    Die Cloud beschreibt ein Modell, das bei Bedarf zeitnah und mit wenig Aufwand geteilte Computerressourcen zur Verfügung stellt und nach Nutzung abrechnet. Die Cloud nutzt Virtualisierung, um IT-Ressourcen wie Rechenleistung, Speicher und Netzwerke über das Internet bereitzustellen.

Unterschiede

![Typ 1 und 2 Hypervisor grafische Darstellung](images/GBS/M346/Typ 1 und 2 Hypervisor grafische Darstellung.png)



WSL

Was bedeutet WSL?

WSL bedeutet Windows Subsystem for Linux.

Es ist eine Kompatibilitätsschicht von Microsoft, die es ermöglicht, Linux-Befehlszeilenprogramme nativ unter Windows auszuführen. Mit WSL können Benutzer eine vollständige Linux-Distribution wie Ubuntu, Debian oder andere direkt auf ihrem Windows-System laufen lassen.

Für wen ist WSL geeignet?

Es eignet sich besonders gut für Entwickler, die in einer Linux-Umgebung arbeiten möchten, während sie auf einem Windows-Computer bleiben.
Es ist praktisch, wenn man keine virtuelle Maschine oder ein Dual-Boot-System nutzen möchte.



SSH Verschlüsselung

Funktionsweise eines SSH-Schlüssels

Die Funktionsweise eines SSH-Schlüssels basiert auf asymmetrischer Verschlüsselung. Dabei werden zwei Schlüssel verwendet: ein privater und ein öffentlicher Schlüssel.

Nutzen von Private- und PublicKeys

  • Der öffentliche Schlüssel wird auf dem Server gespeichert.

  • Der private Schlüssel bleibt geheim und wird lokal auf dem Benutzerrechner aufbewahrt.

  • Der Server überprüft die Identität, indem er eine Nachricht sendet, die nur mit dem privaten Schlüssel entschlüsselt werden kann.

SSH