Glossar
Das Glossar erklärt die Fachbegriffe des Kurses kurz und verweist auf das Kapitel, das sie einführt. Viele Begriffe des Cloud Computing bleiben auch auf den deutschen Seiten englisch, etwa Front-end, Deployment oder Snapshot, damit du sie in Dokumentationen, Fehlermeldungen und Werkzeugen wiedererkennst.
| Begriff | Bedeutung | Kapitel |
|---|---|---|
| Alertmanager | Nimmt die auslösenden Alerts von Prometheus entgegen, fasst ähnliche zusammen, unterdrückt Wiederholungen und leitet sie an Empfänger wie einen Webhook weiter. | 5.3 |
| Alloy | Der Agent, der auf jedem Node die Logs der Pods liest und an Loki schickt. | 5.2 |
| Ansible | Ein Werkzeug, das Server über SSH in einen beschriebenen Zielzustand bringt. Ein zweiter Lauf ändert nur, was noch nicht stimmt. | 2.2 |
| Application | Ein Objekt von Argo CD, das festlegt, welcher Ordner welches Repos in welchen Namespace gehört. | 4.4 |
| ApplicationSet | Erzeugt Applications nach einem Muster, im Kurs eine pro Ordner unter members. | 4.5 |
| Argo CD | Ein Satz von Controllern im Cluster, der Manifeste aus Git liest, mit dem Cluster vergleicht und ihn an Git angleicht. | 4.4 |
| Burn Rate | Wie schnell ein Dienst sein Fehlerbudget verbraucht. Bei einer Burn Rate von 1 ist das Budget genau am Ende des Zeitraums aufgebraucht. | 5.3 |
| Chargeback | Der Verbrauch wird dem Budget des Bereichs belastet, der ihn verursacht hat. | 3.3 |
| Check | Ein Skript des Kurses, das den Zustand deines Labs prüft und einen Bericht mit Hash schreibt. Mit den Screenshots belegen die Berichte der Checks die Basis eines Meilensteins. | 0.5 |
| Client | Die VM, von der aus du auf smartlearn arbeitest, ein Kali-Linux-Desktop mit einem Browser für die Weboberflächen und einem Terminal für SSH zu den Servern. Mit eigenem Hypervisor übernimmt dein PC diese Rolle. | 0.2 |
| Container | Ein Prozess mit eigener Sicht auf Dateisystem, Netz und Prozesse. Er teilt den Kernel mit dem Rechner und bringt nur seine Anwendung mit. | 1.3 |
| Control Plane | Der Teil von Kubernetes, der den Cluster steuert, mit API-Server, Scheduler, Controllern und Datenbank. In k3s läuft sie auf dem Server. | 4.3 |
| Datastore | Ein Speicherort von OpenNebula. default hält die Images, system die Disks laufender VMs, files kleinere Dateien und ab Kapitel 6.2 backups die Backups der VMs. | 2.4 |
| Deployment | Hält eine Zahl gleicher Pods am Laufen und tauscht sie bei einem Update aus. | 4.3 |
| Drift | Eine Abweichung des Ist-Zustands vom Code, etwa nach einer Änderung von Hand. tofu plan zeigt sie. | 4.1 |
| Elastizität | Ressourcen wachsen mit der Last und schrumpfen wieder, nach Regeln und ohne Eingriff von Hand. | 3.5 |
| etcd | Eine verteilte Datenbank für den Zustand eines Clusters. Im Kurs ersetzt sie in Teil 6 SQLite, damit k3s Snapshots schreiben kann. | 6.2 |
| Exporter | Ein Programm, das Messwerte eines Systems im Format von Prometheus anbietet, etwa node_exporter auf Port 9100. | 5.1 |
| Fehlerbudget | Der Anteil an Fehlern, den ein SLO erlaubt. Beim Webshop sind das 0,5 % der Anfragen über sieben Tage. | 5.3 |
| Front-end | Die VM, auf der OpenNebula die Cloud verwaltet, mit dem Dienst oned, dem Scheduler und der Weboberfläche. Im Kurs ist sie auch das Gateway des internen Netzes. | 0.2 |
| Gateway | Der Rechner, über den die VMs eines Netzes andere Netze erreichen. Im Kurs leitet das Front-end den Verkehr des internen Netzes mit NAT ins Internet. | 0.2 |
| Gitea | Ein schlanker Git-Server mit Weboberfläche und Pull Requests. Im Kurs läuft er auf dem Front-end und hält das Repo platform. | 4.4 |
| GitOps | Der Soll-Zustand liegt versioniert in Git, ein Agent im Cluster holt ihn sich und gleicht laufend ab. Änderungen machst du deshalb in Git. | 4.4 |
| Grafana | Zeigt Abfragen an Prometheus und Loki als Dashboards. | 5.1 |
| Gruppe | Fasst in OpenNebula die Benutzer eines Mandanten zusammen. Ein Gruppenadmin verwaltet die Leute seines Mitglieds selbst. | 3.1 |
| Härten | Alles abschalten oder abschotten, was nicht gebraucht wird, im Kurs mit SSH nur über Schlüssel, einer Firewall und automatischen Updates. | 6.1 |
| Hash | Eine kurze Prüfsumme, die sich ändert, sobald sich der Inhalt ändert. Der Check-Bericht endet mit dem Hash seines Inhalts. | 0.5 |
| Helm | Installiert Pakete in Kubernetes, sogenannte Charts, mit Werten, die du anpasst. | 4.2 |
| HorizontalPodAutoscaler | Passt die Zahl der Pods eines Deployments an eine Metrik an, meist an die CPU in Prozent des Requests. Kurz HPA. | 5.4 |
| Hypervisor | Teilt einen physischen Rechner in mehrere virtuelle Maschinen mit eigenen CPUs, eigenem Speicher und eigenen Disks auf. | 1.3 |
| IaaS | Infrastructure as a Service. Der Anbieter liefert VMs, Netze und Speicher, Betriebssystem und Anwendung betreiben die Nutzenden selbst. | 1.2 |
| Image | Eine Disk, aus der VMs starten, etwa ein vorbereitetes Ubuntu. Es liegt in einem Datastore. | 2.4 |
| Infrastructure as Code | Infrastruktur wird in Dateien beschrieben, versioniert und von einem Werkzeug angelegt, statt von Hand. | 4.1 |
| Inventar | Die Datei, in der Ansible die Server und ihre Gruppen findet, dazu Werte, die für alle oder für einzelne gelten. | 2.2 |
| k3s | Eine schlanke Kubernetes-Distribution als einzelnes Programm. Ein Server enthält die Control Plane, ein Agent führt nur Pods aus. | 4.3 |
| Knoten | Eine VM, auf der OpenNebula die virtuellen Maschinen der Mitglieder ausführt. Im Kurs gibt es zwei Knoten mit KVM. | 0.2 |
| Kontextualisierung | OpenNebula gibt einer VM beim Start Adresse, Namen, Schlüssel und Skripte mit, das Paket one-context richtet sie damit ein. | 2.4 |
| Kustomize | Setzt aus einer Vorlage und kleinen Anpassungen die Objekte für jedes Mitglied zusammen, ohne die Vorlage zu kopieren. | 4.5 |
| KVM | Der Hypervisor im Linux-Kernel. Er nutzt die Virtualisierungsfunktionen der CPU und führt die VMs auf den Knoten aus. | 0.2 |
| Least Privilege | Jede Identität bekommt nur die kleinsten Rechte, mit denen sie ihre Aufgabe erfüllt, im Kurs etwa Prometheus mit lesenden Rechten. | 6.1 |
| LimitRange | Setzt Standardwerte und Obergrenzen für Requests und Limits jedes Containers in einem Namespace. | 4.5 |
| LogQL | Die Abfragesprache von Loki. Eine Abfrage wählt zuerst Streams nach Labels und filtert dann den Text. | 5.2 |
| Loki | Sammelt Logs zentral und behält sie über das Ende eines Pods hinaus. Es indexiert nur wenige Labels, nicht den Text. | 5.2 |
| Mandant | Eine Organisation, die eine Cloud mit anderen teilt und nur ihre eigenen Ressourcen sieht. Englisch Tenant. | 3.1 |
| NAT | Network Address Translation ersetzt die Absenderadresse von Paketen, damit Rechner eines internen Netzes über eine einzige Adresse ins Internet kommen. | 0.2 |
| Namespace | Ein abgegrenzter Bereich im Kubernetes-Cluster. Im Kurs bekommt jedes Mitglied einen eigenen mit Quota und Regeln. | 4.3 |
| Nested Virtualization | Verschachtelte Virtualisierung. Eine VM reicht die Virtualisierungsfunktionen der CPU an ihr eigenes Betriebssystem weiter, sodass darin wieder VMs laufen. | 0.2 |
| netplan | Richtet auf Ubuntu das Netz eines Servers aus YAML-Dateien in /etc/netplan/ ein. Im Kurs legt es die festen Adressen der drei Server fest. | 0.3 |
| NetworkPolicy | Legt fest, wer einen Pod im Netz des Clusters ansprechen darf. Ohne Regel erreicht jeder Pod jeden anderen. | 4.5 |
| nftables | Das Paketfilter-Werkzeug von Linux. Im Kurs hält es die NAT des Gateways und die Firewall des Front-ends in je einer eigenen Tabelle. | 6.1 |
| Ollama | Lädt offene Sprachmodelle und bietet sie über eine HTTP-Schnittstelle an. In den Zusatzaufträgen von Teil 5 kann es das lokale Sprachmodell der Plattform bereitstellen. | 5.5 |
| OneDeploy | Die Sammlung von Ansible-Playbooks, mit der das OpenNebula-Projekt eine Cloud aus Front-end und Knoten installiert. | 2.2 |
| OneFlow | Verwaltet in OpenNebula Dienste aus mehreren VMs in Rollen und passt die Zahl der VMs nach Regeln an. | 3.5 |
| OpenNebula | Eine freie Plattform für Private Clouds. Sie verwaltet Knoten, Netze, Speicher und virtuelle Maschinen und teilt sie an Mandanten zu. | 2.2 |
| OpenTofu | Ein Werkzeug für Infrastructure as Code, ein freier Fork von Terraform. Im Kurs legt es die VMs von k3s in OpenNebula an. | 4.2 |
| PaaS | Platform as a Service. Der Anbieter betreibt auch Betriebssystem und Laufzeitumgebung, die Nutzenden bringen nur ihre Anwendung. | 1.2 |
| Persönliche Parameter | Die Werte deines Labs, die aus deinem persönlichen Code entstehen, etwa Hostnamen, das interne Netz und die Kennung des VXLAN. Sie liegen in /etc/cc-lab.env. | 0.3 |
| Playbook | Eine Datei, die beschreibt, welche Schritte Ansible auf welchen Servern ausführt. | 2.2 |
| Pod | Die kleinste Einheit in Kubernetes, ein oder mehrere Container mit gemeinsamer Adresse. | 4.3 |
| Pod Security Admission | Prüft Pods gegen ein Sicherheitsprofil, das ein Label am Namespace festlegt. Das Profil restricted weist Pods ab, die etwa als root laufen. | 6.1 |
| Postmortem | Ein Bericht nach einer Störung mit Ablauf, Auswirkung, beitragenden Ursachen und Massnahmen, ohne Schuldige zu suchen. | 6.3 |
| Private Cloud | Eine Cloud für eine einzige Organisation. Teilen sich mehrere Organisationen mit gemeinsamen Anforderungen eine Cloud, wie bei Wolkenwerk Bern, heisst sie Community Cloud. | 1.2 |
| Prometheus | Fragt Messwerte in festen Abständen ab und speichert sie als Zeitreihen, ein Name mit Labels und Werten mit Zeitstempel. | 5.1 |
| PromQL | Die Abfragesprache von Prometheus, etwa für Raten, Summen und Perzentile über Zeitreihen. | 5.1 |
| Provider | Übersetzt in OpenTofu die Blöcke im Code in Aufrufe einer API, etwa der API von OpenNebula auf Port 2633. | 4.2 |
| Pull Request | Ein Antrag in Gitea, einen Branch in main zu übernehmen. Andere prüfen die Änderung, bevor sie gilt. | 4.5 |
| Quota | Eine Obergrenze für die Ressourcen, die eine Gruppe oder ein Benutzer belegen darf. | 3.2 |
| RBAC | Role-Based Access Control. Kubernetes erlaubt einer Anfrage nur, was eine Role oder ClusterRole dem Absender über ein Binding gibt. | 6.1 |
| Recording Rule | Eine Regel, die Prometheus regelmässig ausrechnet und als neue Zeitreihe speichert, damit Alerts und Dashboards schnell darauf zugreifen. | 5.3 |
| Regel 3-2-1 | Drei Kopien wichtiger Daten auf zwei verschiedenen Medien, eine davon ausser Haus. | 6.2 |
| ResourceQuota | Begrenzt, was alle Pods eines Namespaces zusammen an CPU, Speicher und Objekten anfordern dürfen. | 4.5 |
| Right-Sizing | Die reservierten Ressourcen an den gemessenen Verbrauch anpassen. | 6.4 |
| RPO | Recovery Point Objective. Der Zeitpunkt, bis zu dem Daten nach einem Ausfall wiederhergestellt sein müssen, also wie viel Datenverlust tragbar ist. | 6.2 |
| RTO | Recovery Time Objective. Die längste Zeit, die ein Dienst ausfallen darf, bevor der Schaden nicht mehr tragbar ist. | 6.2 |
| Runbook | Eine Anleitung für eine wiederkehrende Störung mit Symptomen, ersten Prüfungen und Massnahmen. | 6.3 |
| SaaS | Software as a Service. Die Nutzenden beziehen eine fertige Anwendung und verwalten nur ihre Daten und Zugriffsrechte. | 1.2 |
| Schutzbedarf | Wie stark Daten und Dienste bei Vertraulichkeit, Integrität und Verfügbarkeit zu schützen sind, gemessen am Schaden eines Verlusts. | 1.4 |
| Sealed Secrets | Verschlüsselt ein Secret mit dem öffentlichen Schlüssel eines Controllers zu einem SealedSecret, das in Git darf. Nur der Controller kann es entschlüsseln. | 6.1 |
| Self-Heal | Argo CD setzt zurück, was jemand im Cluster von Hand ändert, damit der Cluster wieder Git entspricht. | 4.4 |
| Self-Service | Ein Mitglied holt sich Ressourcen selbst, wenn es sie braucht, innerhalb des Rahmens, den das Plattform-Team vorgibt. | 3.4 |
| Showback | Zeigt jedem Bereich, was er verbraucht hat, ohne dass Geld fliesst. OpenNebula rechnet dafür mit Preisen aus der Vorlage. | 3.3 |
| SLA | Service Level Agreement. Eine Vereinbarung mit dem Mitglied über die Qualität eines Dienstes, mit Folgen, wenn sie verfehlt wird. | 6.3 |
| SLI | Service Level Indicator. Eine Messung, wie gut ein Dienst aus Sicht der Kundschaft arbeitet, meist als Anteil guter Ereignisse. | 5.3 |
| SLO | Service Level Objective. Das interne Ziel für einen SLI über einen Zeitraum, beim Webshop 99,5 % der Anfragen ohne Serverfehler über sieben Tage. | 5.3 |
| Snapshot | Ein gespeicherter Stand zu einem Zeitpunkt, in smartlearn von einer ganzen VM, in k3s von der Datenbank des Clusters. Mit einem Snapshot von etcd und dem Token des Servers lässt sich der Cluster auf diesen Stand zurücksetzen. | 0.4, 6.2 |
| Sprachmodell | Ein Modell, das Text Token für Token erzeugt. Es schreibt wahrscheinliche Texte und prüft nicht, ob sie stimmen. | 5.5 |
| SSH-Schlüssel | Ein Paar aus privatem und öffentlichem Schlüssel, mit dem du dich ohne Passwort an einem Server anmeldest. Nach der Härtung in Kapitel 6.1 nimmt das Front-end nur noch Schlüssel an. | 0.5 |
| State | Die Datei, in der OpenTofu festhält, welches Objekt in OpenNebula zu welchem Block im Code gehört. Sie enthält geheime Werte und gehört nicht in Git. | 4.1 |
| Sunstone | Die Weboberfläche von OpenNebula auf Port 2616 des Front-ends, für das Plattform-Team und die Mitglieder. | 2.1 |
| TLS | Transport Layer Security. Verschlüsselt eine Verbindung, macht Veränderungen unterwegs erkennbar und weist den Server mit einem Zertifikat aus. | 6.1 |
| Triage | Die erste Einschätzung eines Alerts. In den Zusatzaufträgen baust du einen Dienst, der mit dem lokalen Modell eine Ursache und eine Aktion aus einer festen Liste vorschlägt. Ein Mensch gibt sie frei. | 5.5 |
| VDC | Virtual Data Center. Ein Ausschnitt der Infrastruktur, den OpenNebula einer oder mehreren Gruppen zuteilt. | 3.1 |
| Vollkosten | Alle Kosten eines Dienstes, neben Hardware und Strom auch Arbeit und weitere Posten. Bei einer kleinen Plattform macht die Arbeit den grössten Teil aus. | 6.4 |
| Vorlage | Beschreibt in OpenNebula eine VM, aus der du beliebig viele VMs startest, im Kurs etwa ubuntu. | 2.4 |
| VXLAN | Ein Verfahren, das ein Netz für VMs in UDP-Paketen über ein bestehendes Netz trägt. Im Kurs verbindet es die VMs deiner Cloud über das Front-end und die Knoten. | 2.3 |
Texte und Abbildungen stehen unter CC BY-SA 4.0 und der Code unter der MIT-Lizenz. Die Quellen liegen auf GitHub.