generated from HackyHour/template
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
183 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,125 @@ | ||
The notes will appear here soon after the event. | ||
# Kubernetes a gentle introduction | ||
|
||
Vortrag von: Burkhard Linke | ||
Bioinformatik Core Facility | ||
DNBI Cloud Architekt | ||
Vertritt sein persönliche Meinung. | ||
|
||
Notizen von: Christian Krippes | ||
|
||
## Was ist Kubernetes | ||
- Ein sehr komplexes System | ||
- Vielfältig; jede Installation kann und wird sich unterscheiden | ||
- Open-Source-Kern | ||
- Anbieter-Plugins für verschiedene Aspekte | ||
- Vier wichtige Entwicklungen hin zu Kubernetes | ||
|
||
## Geschichtsstunde | ||
|
||
Einen Service aufbauen im Jahr 2000: | ||
- Rackplatz im Serverzentrum mieten und Maschine einbauen | ||
- oder Maschine mieten | ||
- IPv4 Adresse erhalten | ||
- Maschine konfigurieren | ||
- Service installieren und konfigurieren | ||
- Updates, Bug-Fixes und Ausfälle handhaben | ||
- Sehr schwer skalierbar | ||
- Ziemlich schwer einen globalen Dienst bereitzustellen | ||
|
||
## Entwicklung 1 - Virtualisierung | ||
|
||
- Günstige Multicore-Prozessoren haben es wirtschaftlich interessant gemacht | ||
- Viele Dienste auf einer physischen Maschine möglich | ||
- Dienste sind voneinander isoliert | ||
- Frühe Performanceverluste heute nahezu gänzlich verschwunden (Paravirtualisierung) | ||
- Gängige Virtualisierungssoftware vmWare,Xen,qemu,bhyve ... | ||
|
||
**Cloud** | ||
- Virtualsierung war grundlage für Cloud - Infrastruktur als Service | ||
- VM mieten -> Nur die Nutzungszeit zahlen | ||
- Hyperscalers (AWS,MS Azure etc.) ermöglichen globale Infrastruktur | ||
--> Es ist jetzt möglich, (virtuelle) Server überall und jederzeit in beliebiger Anzahl und Konfiguration zu erhalten! | ||
|
||
## Entwicklung 2 - Container | ||
|
||
- Nicht wirklich neues Konzept (OpenVZ 2005, lxc 2008) | ||
- Vorläufer chroot, jails, zones ... | ||
- Isolierte Anwendungen | ||
- Verbesserte Sicherheit und Resourcenkontrolle | ||
|
||
**Docker** | ||
- Hat Container handhabbar gemacht und damit populär | ||
- Öffentliches Repo mit vorgefertigten "docker images" | ||
- Eine Anwendung mit all ihren Abhängigkeiten | ||
- Lauffähig unabhängig vom Betriebsystem | ||
- Software in Containern wurde ein beliebtes Produkt | ||
- Standards für Container-Format und Container Build haben zur Verbreitung beigetragen | ||
---> Klassische Software Installation wurde durch Container weitestgehend abgelöst: | ||
Container: Schneller, weniger Fehleranfällig, weniger Abhängigkeitskonflikte | ||
|
||
## Entwicklung 3 - Infrastruktur als Code IaC / DevOps | ||
|
||
- Entwicklungen 1 und 2 ermöglichen mehr und größere Dienste was aber auch mehr Komplexität | ||
mit sich bringt | ||
- Anzahl der virtuellen und baremetal Systeme wächst und macht es schwieriger für den Menschen handhabbar | ||
- Automatisierung notwendig, Server werden vom handgepflegten "Pet" zur einheitlich automatisiert behandelten Massenware | ||
"Cattle". | ||
- Ziel: Reproduzierbare und parametrisierbare Deployments, also Installation & Konfiguration sämtlicher Server und der notwendigen Software die ich für meinen Dienst brauche. | ||
- Unterschiedliche Umgebungen (staging vs. testing) | ||
- IaC ermöglicht automatisierte Tests von Deployments (Unit Test, Integration Test, etc.) | ||
- Änderungsmanagement über Werkzeuge wie bspw. git. | ||
--> Weniger Personen können heute wesentlich größere und komplexere Systeme handhaben | ||
|
||
Infrastruktur als Code meint das die Konfiguration eines Servers als abstrakte Beschreibung (Code) vorliegt | ||
die auf einen oder beliebig viele Server(Cattle) verteilt werden kann. | ||
Siehe auch [HackyHour #10()]/notes/2023-05-24-HackyHour-10.md) in der wir bereits über Ansible gesprochen haben. | ||
|
||
Devops= Developer become Operators (and vice versa). | ||
|
||
## Entwicklung 4 - Nutzer/ "Cloud" / Smartphones | ||
- Wachsende Zahl von Nutzern | ||
- Unterschiedliche Wahrnehmung von Computern | ||
- Dienste "laufen" in der Cloud | ||
- Immer weniger Funktionalität läuft auf dem Gerät des Nutzers | ||
- "Always on" - Hochverfügbarkeit als Anforderung | ||
- Anwendungen werden global vertrieben -> Einfluss auf Lastspitzen | ||
- Neue Dienste (Content-Delivery-Networks, Streaming) | ||
|
||
Herrausforderung: Wie handhaben? | ||
|
||
## Kubernetes | ||
|
||
Kubernetes (häufig abgekürzt mit K8s) ist ein Open-Source-Container | ||
Orchestrierungssystem zur Automatisierung von Softwarebereitstellung, Skalierung und | ||
Verwaltung. (Wikipedia) | ||
|
||
## Kubernetes Design | ||
|
||
- Datenbank von Resourcen Definitionen | ||
- verschachtelte Key->Value Entitäten | ||
- verschiedene Typen für unterschiedliche Entitäten | ||
- Namensräume zur Abgrenzung | ||
- JSON Format zum Import/Export der Definitionen | ||
- API zur Interaktion mit K8s Cluster | ||
|
||
## Helm | ||
- Templating System für K8s Resourcen | ||
- Ermöglicht komplexe Deployments | ||
- _helm chart_ definiert die Komponenten der Anwendung/Service bspw. Chatdienst | ||
- Werden von Entwicklern der Anwendung bereitgestellt | ||
- de-facto Standard für Deployments | ||
|
||
## Schöne neue Welt? | ||
|
||
- Steile Lernkurve! | ||
- Wahnsinnig komplex in großen Deployments | ||
- Konstant Änderungen unterworfen | ||
- Erfordert gute Instandhaltungsstrategie | ||
- Debugging bereitet häufiger starke körperliche Schmerzen | ||
- Daten Backup wird häufig übersehen | ||
|
||
## Zusammenfassung | ||
|
||
- K8s ist ein mächtiges modernes System um Dienste im Sinne von Entwicklung 4 zu handhaben | ||
- Es ist anpassbar und erweiterbar und komplett automatisierbar | ||
- Aber eine Herrausforderung für seinen Administrator |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
## VR Praxis | ||
|
||
- Mareike Büst und Eva Dabrowski vom ["Lab for Innovative Teaching"][lfit]{:target="_blank" rel="noopener"} | ||
- Das Lab ist Teil des "Network for Impactful Digital International Teaching Skills" (NIDIT) | ||
- Das [NIDIT][nidit]{:target="_blank" rel="noopener"} ist ein Verbundprojekt von JLU, Philipps-Universität Marburg und THM | ||
- Ziel Förderung/Aufbau von Kompetenz der Lehrenden im digitalen und internationalen Raum | ||
|
||
**Das Angebot des Labs** | ||
- Inovation in der Lehre unterstützen | ||
- Ausleihe von VR Brillen, Support bei Lehrkonzepten | ||
- Makerspace/Lab arbeiten an Workstations für 3D Arbeiten. | ||
- Training im Umgang mit VR Headset und Technologien | ||
- VR-Use-Case Katalog, Sammlung von Projekten zu VR in der Hochschule.(DACH weit) | ||
|
||
[lfit]: https://www.uni-giessen.de/de/studium/lehre/projekte/nidit/goals/lab | ||
[nidit]: https://www.uni-giessen.de/de/studium/lehre/projekte/nidit | ||
|
||
### Einführung in die VR | ||
|
||
- Vier verschiedene Headsets Pico Neo 4 Enterprise, Meta Quest Pro, Meta Quest 2 | ||
und Meta Qest 3 | ||
- Alle Headsets sind Standalone, arbeiten also ohne externen Rechner. | ||
- Kabelgebundene Headsets dagegen nutzen die Hardware eines Desktopsystems. | ||
|
||
|
||
**Erfahrungen der Teilnehmenden** | ||
- Anatomie Anwendung war sehr spannend. Man kann einzelne Köpersysteme ein/ausblenden und viele | ||
Teile des Körpers "anfassen" und bewegen sowie sich zusätzliche Informationen anzeigen lassen. | ||
- Die Anwendung zur Raumeinrichtung war sehr spannend, weil man die Räume aus der Sicht eines Kindes oder eines Rollstuhlfahrers betrachten und erleben kann. | ||
- Generell ein wichtiger Punkt bei VR, es ermöglicht, ganz neue Perspektiven einzunehmen, die Real nur sehr schwierig zu erreichen sind. | ||
- Allgemein positives Fazit, auch wenn der persönliche Nutzen nicht unbedingt direkt klar ist. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
## Roboter Arm InMove | ||
- Die Studierenden haben in einem Projekt von Johannes | ||
den Arm des[ InMoov Roboters](https://inmoov.fr/){:target="_blank" rel="noopener"} gedruckt und zusammengebaut. | ||
- Dabei zeigte sich unter anderem, dass die Dokumentation des Projektes leider mäßig bis lückenhaft war. | ||
- Gedruckt wurde in der [UB](https://www.uni-giessen.de/ub/de/lern/ort/spezarb/3ddruck){:target="_blank" rel="noopener"} | ||
- Es gab einige offene Fragen, die in Zusammenarbeit mit dem Makerspace gelöst werden konnten. | ||
Vor allem die Verkabelung der Servomotoren wurde dabei verbessert. | ||
|
||
- Der Arm wird angetrieben durch je einen Servomotor pro Finger. | ||
- Jeder Finger kann sich durch die Servos krümmen. Die Streckung erfolgt über eine Feder im Finger. | ||
- Antrieb des Arms: 6 Servos, je Finger einer und einer für die Rotation der Hand. | ||
- In den Fingern sind je Finger ein Hall-Sensor verbaut. | ||
- Die Fingerkuppen wurden mit Badezimmersilikon nachempfunden, was eher mäßig funktioniert hat. | ||
|
||
- Die Idee ist nun, dass die Studierenden im Rahmen des Projektes die Fähigkeiten des Arms vermessen. | ||
|
||
## KI (mal wieder) | ||
- [Google Media Pipe](https://developers.google.com/mediapipe){:target="_blank" rel="noopener"} Solutions -> Low-Code Machine-Learning für Apps u.ä.; Framework-> Für alle die ihre Anwendung selber schreiben wollen(C++) | ||
- [Mistral](https://mistral.ai/news/announcing-mistral-7b/){:target="_blank" rel="noopener"}, kann lokal auf Gaming-Grafikkarten betrieben werden und erzeugt sehr gute Ergebnisse und ist vorallem ziemlich schnell im Output. | ||
- [Groq Onlinedienst](https://wow.groq.com/){:target="_blank" rel="noopener"} für KI-Modelle aller Art. Gut zum Ausprobieren verschiedener Modelle. Man muss sich aber anmelden. | ||
- [LangChain Framework](https://python.langchain.com/docs/get_started/introduction){:target="_blank" rel="noopener"} ähnlich wie Media Pipe aber für Python. | ||
- ChatGPT bietet jetzt einen Weg spezialisierte Ableger zu basteln, die für | ||
beschränkte Aufgaben taugen. | ||
|
||
## 22 Mai. | ||
Ab 19:30 Uhr Mach-Nacht. | ||
|