ITEO - Virtualisierung
ITEO - Virtualisierung
ITEO - Virtualisierung
Set of flashcards Details
Flashcards | 94 |
---|---|
Students | 51 |
Language | Deutsch |
Category | Computer Science |
Level | University |
Created / Updated | 06.06.2017 / 23.11.2023 |
Weblink |
https://card2brain.ch/box/20170606_iteo_virtualisierung
|
Embed |
<iframe src="https://card2brain.ch/box/20170606_iteo_virtualisierung/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Create or copy sets of flashcards
With an upgrade you can create or copy an unlimited number of sets and use many more additional features.
Log in to see all the cards.
- Keine „fremden“ OS möglich. Nur gleiche OS können virtualisiert werden. Beispiel: kein Windows Programme möglich auf Linux Kern.
- Zonen müssen auf dem selben Patch Level laufen wie OS/Kern.
- Anforderungen an SysAdmin steigen (bei Hypervisor auch)
- Ressource Management muss eingeschaltet werden.
Zählen Sie OS auf, welche OS Virtualisierung beherrschen
- BSD --> Jails (Grundidee)
- Solaris --> Zonen
- Linux --> Container (LXC)
- Microsoft --> Container (WS 2016)
Was ist LXC? Welche Erweiterungen werden benötigt?
Linux Container (LXC) ist Open Source, eine schnelle und leichtgewichtige Art der Implementierung eines virtuellen OS auf einem Linux Server
§ Nur eine Instanz vom Linux Kern ist involviert.
§ LXC beinhaltet ein paar wenige einfache Modifikationen im Kern.
§ Der Linux Kern unterstützt eine Anzahl separater virtuellen Linux Servern.
§ Der Kern verwaltet alle System Ressourcen und Tasks, inklusive Prozess Scheduling, Memory, Disk Platz und Prozessor Zeiten.
Wir brauchen also mindestens 3 wichtige Erweiterungen:
§ Filesystemgrenzen für Prozesse chroot
§ Ressourcen sharing zwischen Prozess Gruppen cgroups
§ Namespaces ns
Beschreiben Sie einen Docker
- Docker verwendet die Möglichkeiten von LXC um Applikationen innerhalb eines Container bereitzustellen.
- SW Layer über dem Linux Container
- Dockt an jedes Linux an und verwendet die vorher besprochenen Kern Erweiterungen (erzeugt eigenen Namespace und cgroups für die Applikation durch die Virtualisierungs-APIs und die mitgebrachte libcontainer Library)
Was ist Copy on Write?
- Zweck: Silent Corruption verhindern (Inkonsistenzen finden und beheben).
- Beim Schreiben eines Blockes wird der alte Block, der an der zu beschreibenden Stelle war, nach unten kopiert.
- Macht Snapshots beim Schreiben.
- Konsistenz auch bei Stromausfall.
Was ist Redirect on Write?
- Verbesserte Version von Copy on Write.
- Neue Schreibanfrage möchte die Daten in den alten Block schreiben, wird aber redirected in einen neuen Block. Der alte Block behält die alten Daten.
- Weniger Operationen als Copy on Write.
- Macht Snapshots beim Schreiben.
- Konsistenz auch bei Stromausfall.
Was ist Reallocate or redirect on write?
- Aktive Daten werden nie überschrieben
- Ein neuer Block wird alloziert und mit den modifizierten Daten beschrieben.
- Jegliche Metadaten-Blöcke die darauf referenzieren werden gleich gelesen, neu alloziert und beschrieben.
- Um Overhead zu reduzieren werden mehrere Updates in transaktionale Gruppen zusammengefasst.
- Der Intent Log (ZIL) wird verwendet, wenn synchrone Schreib-Semantik verlangt wird.
Was ist chroot von Linux? Kontext Isolation von LXC
chroot ist eine Operation die das root Directory für den aktuell laufenden Prozess und dessen Kinder ändert. Ein Programm das in diesem modifizierten Umfeldes läuft kann auf keine Dateien und Kommandos mehr ausserhalb dieses Verzeichnis Baumes zugreifen. Das modifizierte Umfeld nennt man chroot jail.
Was sind cgroups von Linux? Kontext Isolation von LXC
§ cgroups sind ein Kernel Feature
§ Erlauben das allozieren von Systemressourcen wie zB: CPU Zeit, System Memory, Netzwerkbandbreite oder eine Kombination davon über eine Benutzer definierte Gruppe von Tasks (Prozesse)
§ cgroups erlauben dem Administrator eine feingranulare Kontrolle über die Zuordnung, Priorisierung, Verwaltung und Überwachung von Systemressourcen.
§ HW Ressourcen können so aufgeteilt werden unter Benutzern und Tasks (Prozesse).
§ cgroups sind wie Prozesse hierarchisch organisiert, wobei child cgroups die Attribute ihrer Eltern erben.
§ cgroups sind wie Prozesse hierarchisch organisiert, wobei die Kinder die Attribute ihrer Eltern erben. Trotzdem gibt es zwischen den beiden Modellen Unterschiede (vergl. nächste Folie)
Was sind Namensräume / Namespaces von Linux? Kontext Isolation von LXC
§ Ein Namespace abstrahiert eine globale System Ressource in der Art, dass der zum Namensraum gehörende Prozess meint er besitze diese Ressource einzigartig.
§ Änderungen an dieser globale Ressource sind nur sichtbar für die Mitglieder im gleichen Namensraum. Für andere Prozesse sind sie nicht sichtbar.
Eine offensichtliche Verwendung von Namensräumen ist die Implementation von Containern.
Was ist SMP?
Symmetrische Multiprozessoren
Beschreiben Sie Symmetrische Multiprozessoren (SMP)
- Zwei oder mehr gleichartige Prozessoren mit vergleichbaren Möglichkeiten
- Prozessoren teilen sich das gleiche main Memory und sind über einen Bus oder andere interne Verbindungen zusammengeschaltet
- Multicore chips sind eigentlich auch SMPs (auf Grund der gleichen Architektur)
- Teilen I/O Devices
- Fazit: Alle Prozessoren haben sehr ähnliche Eigenschaften. Gleiche Funktionen, gleiches Main Memory, gleiche I/O Devices usw. --> Cores haben dieselbe Architektur (selbe Ausführungseinheiten etc.)
Beschreiben Sie einen Multicore CPU
- Kombiniert 2 oder mehr Prozessoren (Cores)
- Jeder Core beinhaltet alle Komponenten von einem unabhängigen Prozessor
Was ist die grösste Bremse einer MultiCore Architektur?
L3-Cache
Was ist UMA?
Shared Memory Architektur (UMA)
UMA = Unified Memory Architecture
Was bedeutet NUMA?
NUMA = Non-Unified Memory Architecture
Beschreiben Sie eine NUMA (Non-Unified Memory Architecture)
- Alle Prozessoren haben den nicht mehr den gleichen Weg und die gleiche Zugriffszeit auf dieselben Memory-Stellen
- meistens werden 2 oder mehr SMPs physikalisch verbunden.
- Shared-Memory: ein globaler linearer Addressraum (vom OS aus) --> Memory Zugriff auf „remote“ Memory ist langsamer
- Ein SMP kann direkt auf das Memory der anderen SMPs zugreifen.
Was ist LLC?
Last level cache (shared Cache --> z.B. L3-Cache)
Was sind Memory Stalls?
Memory Stalls = Wartezeit betr. des Lesens / Schreibens vom / ins Memory
Was ist eine Load Store Architektur
Load Store Architektur: Zuerst laden des Befehls und dann benötigt man noch die Operanden --> den Wert (Operanden) holen bedeutet eine teure Operation
Was ist SMT?
Simultanious Multi Threading
Was ist CMP?
Chip-Level Multiprocessing
-
- 1 / 94
-