
Im April haben die Organisatoren von SlĂ«rm â den Kubernetes-Kursen â bei mir angeklopft, um mich zum Testen und Teilen meines Eindrucks einzuladen:
Dmitry, SlĂ«rm ist ein dreitĂ€giger Intensivkurs zu Kubernetes, ein intensives Lern-Event. Es wird schwierig sein, darĂŒber zu berichten, wenn man nur zwei Stunden in der ersten Vorlesung sitzt. Sind Sie bereit, aktiv teilzunehmen?
Vor dem Slërm sollte man die vorbereitenden Online-Kurse zu Ansible, Docker und Ceph absolvieren.
Dann in den Repositories den Code und die genauen Anweisungen abrufen, nach denen man in den Vorlesungen jeden Befehl Schritt fĂŒr Schritt mit den Dozenten durchgeht.
â Ich bestĂ€tige, dass ich bereit bin, an beiden Kursen aktiv teilzunehmen.
Und danach wartet eine intensive Arbeit von 6 Tagen (Basis Slërm und MegaSlërm) in einem Raum, der voll mit Systemadministratoren ist.
FontÀnen
Was ist eigentlich die Schwierigkeit bei der Entwicklung von Services? Zum Beispiel fordert das Business eine Werbe-Push-Nachricht! Es scheint, dass es einen Full-Stack-Entwickler mit einer Website und Mobile-Entwickler mit einer mobilen Anwendung gibt. Eine Aufgabe von 15 Minuten. Sagen wir dem Business, dass wir das an einem Tag schaffen!
Hier zeigt sich, dass Push-Nachrichten bisher nie versendet wurden. Die frĂŒhzeitige Anbindung an eine externe oder selbst gehostete Push-Plattform fand nicht statt. Das bedeutet, dass es nicht in 15 Minuten oder einer Stunde erledigt werden kann; gut, wenn es in einer Woche angeschlossen wird. Hier beginnt die Magie und das Wunder. Alles ist unklar, seltsam und unvorhersehbar.
Die Entwicklung wurde nur aus einem Grund vollkommen unvorhersehbar: Man hat nicht berĂŒcksichtigt, dass es neben der Schicht der GeschĂ€ftsanfragen auch eine infrastrukturelle Schicht gibt.
Wenn die Schicht der GeschĂ€ftsanfragen ein Springbrunnen ist, der eine Vielzahl kleiner Aufgaben, das ĂberprĂŒfen von Hypothesen und visuelle Gimmicks ausspuckt, dann ist die Infrastruktur dessen Rohrsystem. Hier ist ein Planungshorizont von mindestens sechs Monaten erforderlich.
Rohrleitungen fĂŒr Springbrunnen
Aus GrĂŒnden der KomplexitĂ€t und der Notwendigkeit, Ă€uĂerst sorgfĂ€ltig auf die Details zu achten, wird die Entwicklung dieser 'Rohre' von speziell geschulten Fachleuten durchgefĂŒhrt: DevOps-Experten, die aus den erfahrensten Administrators und Entwicklern hervorgegangen sind. Ihre Arbeit ist planmĂ€Ăig und strikt sequenziell. Sie sind vergleichbar mit BrĂŒckenbauern â jeder Fehler fĂŒhrt dazu, dass eine einfache GeschĂ€ftsanfrage von 15 Minuten plötzlich in eine Umplanung der Infrastruktur fĂŒr viele Tage und viel Geld umschlĂ€gt.
Sleurm ist derzeit der einzige mir bekannte Kurs in Russland, der das Design von Infrastrukturen auf standardisierte Weise lehrt, um Planungsfehler zu minimieren. Ich habe an Kursen zu Kubernetes teilgenommen und plane im September, einen neuen Kurs zu DevOps zu besuchen.
Sleurm wurde von der Firma Southbridge, einem Outsourcing-Anbieter fĂŒr Administration, ins Leben gerufen, der Dutzende von Brunnen in verschiedenen Formen gebaut hat. Southbridge ist ein zertifizierter KTP und KCSP (CNCF, Mitglied der Linux Foundation).
Was genau wird in den Kursen zu Kubernetes gelehrt?
Wie organisiert man alles, was die Entwickler erstellt haben, damit es nicht ausfÀllt?
- Arbeiten mit Kubespray
- Installation zusÀtzlicher Komponenten
- Testen und Troubleshooting des Clusters
Wie ermöglicht man die Autorisierung von Benutzern (Entwicklern) im Cluster fĂŒr die Arbeit mit dem Cluster selbst?
- LDAP (Nginx + Python)
- OIDC (Dex + Gangway)
Wie schĂŒtzt man sich auf Netzwerkebene vor Hackern?
- EinfĂŒhrung in CNI
- Network Security Policy
Und ĂŒberhaupt Sicherheit!
- PodSecurityPolicy
- PodDisruptionBudget
Wir verstecken nichts â wir erklĂ€ren ausfĂŒhrlich, was im Hintergrund passiert.
- Aufbau des Controllers
- Operatoren und CRD
Stateful Anwendungen im Cluster
- Starten eines DB-Clusters am Beispiel von PostgreSQL
- Starten eines Clusters fĂŒr RabbitMQ
Wie man zahlreiche Passwörter und Konfigurationen nicht im Klartext speichert
- Das Management von Geheimnissen in Kubernetes
- Vault
Horizontale Skalierung auf Knopfdruck
- Theorie
- Praxis
Backups
- Backup und Wiederherstellung eines Clusters mit Heptio Velero (ehemals Ark) und etcd
Einfache Rollouts in Test-, Stage- und Produktionsumgebungen
- Lint
- Templates und Deployment-Tools
- Deployment-Strategien
Es gibt auch einen Kurs, der auf Steroiden ist, da wird es wirklich hardcore. Dennoch kann man nach dem Grundkurs bereits sein eigenes System aufbauen.
Nach dem Slurm hatten die Teilnehmer Artefakte â Videoaufzeichnungen aller Tage, detaillierte Anleitungen zu jedem Punkt sowie genaue Rezepte, deren Befehle man einfach kopieren kann, um entweder eine Backup-Lösung, eine Lösung fĂŒr Testumgebungen oder etwas anderes zu erstellen.
Das heiĂt, es ist alles ganz einfach. Ja. Du kommst fĂŒr ein paar Tage, tauchst in das Thema ein, erhĂ€ltst prĂ€zise Anleitungen und kehrst an deinen Arbeitsplatz zurĂŒck, um die Infrastruktur des Projekts aufzubauen â einfach, korrekt und vor allem termingerecht. Magie und Zauberei sind vorbei, jetzt bleibt nur noch die Arbeit.
Was ist das Ergebnis?
Am Ende des Rennens stellt sich fĂŒr einige Tage das GefĂŒhl ein, dass ernsthafte Projekte quasi von DevOps selbst aufgebaut werden. Erstaunlicherweise ist das gesamte vermittelte Material verstĂ€ndlich; ich wende es bereits jeden Tag auf meinen eigenen Servern an.
Zum GlĂŒck hat sich das ganze Publikum in den Telegram-Chat bewegt, wo auch Wochen spĂ€ter noch Leben herrscht.
Wie geht es weiter?
Die Organisatoren bereiten im Herbst Slurm DevOps vor, und ich bereite mich bereits vor. DarĂŒber werde ich bald in meinem .
Quelle: habr.com
