Slurm DevOps – eine besser funktionierende Meise in 3 Tagen als ein schöner Kran in ferner Zukunft

Ich liebe einwöchige Projekte und habe Angst vor jahrelangen Projekten. Bei Agile gefiel mir das Konzept von MVP und Inkrementen sehr gut, es ist genau mein Ding: ein funktionierendes Teil erstellen, es implementieren und weitermachen.

Gleichzeitig ist die DevOps-Transformation, wie sie in Büchern und auf Konferenzen diskutiert wird, genau genommen ein jahrelanges Projekt. Oder Jahre.

Wir haben unseren DevOps-Kurs nach dem Paradigma „MVP DevOps in einem Sprint“ und „Bereitschaft für Inkremente“ aufgebaut. Oder einfacher ausgedrückt: „So dass der Teilnehmer nach seiner Rückkehr sofort etwas umsetzen und davon profitieren kann.“

MVP DevOps: Der Kurs beinhaltet Tools für die wichtigsten DevOps-Prozesse. Wir haben uns nicht vorgenommen, alle CI/CD-Systeme zu überprüfen und zu vergleichen oder die Details des Infrastructure-as-Code-Ansatzes zu erläutern. Wir bieten einen übersichtlichen Stack: Gitlab CI/CD, Ansible, Terraform und Packer, Molecule, Prometheus, EFK. Sie können nach den Kursen aus den Schulungsmaterialien eine Infrastruktur für ein Pilotprojekt zusammenstellen und darin arbeiten.

Slurm DevOps – eine besser funktionierende Meise in 3 Tagen als ein schöner Kran in ferner Zukunft

Bereit für schrittweise Änderungen: Wir bieten für jedes Element ausreichend Übungsmöglichkeiten und Beispiele. Sie können ein Tool auswählen und es mithilfe der Schulungsvorlagen implementieren. Schreiben Sie beispielsweise ein Ansible-Playbook für die Bereitstellung von Entwicklungsumgebungen oder verbinden und verwalten Sie einen Bot. Server Direkt von Ihrem Smartphone aus. Das heißt, Sie erhalten innerhalb einer Woche konkrete, praktische Ergebnisse. Auch wenn diese noch weit von einer unternehmensweiten DevOps-Transformation entfernt sind, existieren sie, sie sind da, sie funktionieren und sie liefern Mehrwert.

Slurm DevOps-Themen

Thema Nr. 1: Best Practices für Git — spricht für sich.
Thema Nr. 2: Arbeiten mit der Anwendung aus Entwicklungssicht – Ein Ingenieur benötigt die Kompetenzen eines Administrators und eines Entwicklers, deshalb informieren wir Administratoren über die Entwicklung.

Thema Nr. 3: CI/CD-Grundlagen

  • Einführung in die CI/CD-Automatisierung
  • Grundlagen der Arbeit mit Gitlab CI
  • Best Practices mit Gitlab-Runner
  • Bash-, Make-, Gradle-Tools als Teil von CI/CD und mehr
  • Docker als Lösung für CI-Probleme

Thema Nr. 4: Gitlab CI/CD in der Produktion

  • Konkurrenz beim Berufseinstieg
  • Ausführungskontrolle und Einschränkungen: nur, wann
  • Arbeiten mit Artefakten
  • Vorlagen, Includes und Microservices: Vereinfachung der Bereitstellung

Wir führen die Studierenden in die grundlegenden Konzepte und Ideen von CI/CD sowie in die Werkzeuge zur Implementierung von CI/CD ein. Dadurch sind die Studierenden in der Lage, selbstständig ein CI/CD-Designmuster und ein geeignetes Implementierungswerkzeug auszuwählen.

Anschließend zeigen wir die Implementierung von CI/CD in Gitlab, analysieren das Setup und erörtern Möglichkeiten zur erweiterten Nutzung von Gitlab CI. Dadurch sind die Studierenden in der Lage, Gitlab CI selbstständig für eigene Projekte zu konfigurieren.

Im Vergleich zum ersten DevOps Slurm haben wir die Theorie um die Hälfte reduziert (eine Stunde pro Thema), uns von der Überprüfung aller Systeme entfernt und nur Gitlab CI belassen. Wir haben uns auf die Praxis konzentriert und viele Best Practices hinzugefügt.

Thema Nr. 5: Infrastruktur als Code

  • IaC: Infrastruktur als Code angehen
  • Cloud-Anbieter als Infrastrukturanbieter
  • Systeminitialisierungstools, Image-Erstellung (Packer)
  • IaC am Beispiel von Terraform
  • Konfigurationsspeicherung, Zusammenarbeit, Anwendungsautomatisierung
  • Übung zum Erstellen von Ansible-Playbooks
  • Idempotenz, Deklarativität
  • IaC am Beispiel von Ansible

Wir haben den theoretischen Teil zu UI und OpenStack-CLI gekürzt und uns auf die Praxis konzentriert.
Wir betrachten zwei IaC-Ansätze anhand derselben Anwendung und zeigen die Vor- und Nachteile jedes Ansatzes auf. Dadurch versteht der Student, welcher Ansatz wo eingesetzt werden sollte und kann sowohl mit Terraform als auch mit Ansible arbeiten.

Im Terraform-Thema beschäftigen wir uns mit Teamarbeit und der Statusspeicherung in einer Datenbank in der Praxis. Bei der Arbeit mit Modulen schreibt und konfiguriert der Student das Modul selbst und lernt, wie man damit arbeitet: Wiederverwendung, Versionierung. Wir ergänzen die Arbeit mit Consul, zeigen, in welchen Fällen es notwendig ist und wie man es richtig einsetzt.

Thema Nr. 6: Infrastrukturtests

  • Lassen Sie uns herausfinden, warum keine Tests geschrieben werden.
  • Welche Tests gibt es in IaC?
  • Sind statische Analysatoren wirklich so nutzlos?
  • Unit-Tests von IaC am Beispiel von Ansible + Molecule
  • Testen im Rahmen von CI
  • Steroidtests oder wie man nicht 5 Stunden auf das Ende des IaC-Tests wartet

Wir haben den theoretischen Teil gekürzt, weniger Geschichten über Vagrant/Molecule, mehr Praxis und Tests selbst, mit einem Fokus auf Linters und der Arbeit mit ihnen. Wir betrachten aus der Sicht von CI
wie man Tests schneller macht. In der Praxis wird es so aussehen:

  • ein selbstgeschriebener Linter, der je nach Rolle das Vorhandensein erforderlicher Variablen für einen Host überprüft;
  • Wir fügen dem CI-Test nur die Rollen hinzu, die sich geändert haben. Dadurch können wir die Zeit, die zum Ausführen der Tests benötigt wird, erheblich verkürzen.
  • Fügen Sie Szenariotests hinzu. Stellen Sie die gesamte Anwendung als Integrationstest bereit.

Thema Nr. 7: Infrastrukturüberwachung mit Prometheus

  • So bauen Sie ein gesundes Überwachungssystem auf
  • Monitoring als Werkzeug zur Analyse, Entwicklungseffizienz und Code-Stabilität, schon vor dem Verkauf
  • Einrichten von Prometheus + Alertmanager + Grafana
  • Von der Ressourcenüberwachung zur Anwendungsüberwachung

Wir werden viel über die Überwachung von Microservices sprechen: Anforderungs-ID, API-Überwachungstool. Es wird viele Best Practices und viel eigenständige Arbeit geben.

Schreiben wir unseren eigenen Exporter. Wir richten die Überwachung nicht nur der Produktionsinfrastruktur und -anwendung, sondern auch der Assemblies in Gitlab ein. Wir betrachten Statistiken zu fehlgeschlagenen Tests. Wir werden in der Praxis sehen, wie die Überwachung mit und ohne HealthCheck aussieht.

Thema Nr. 8. Protokollieren einer Anwendung mit ELK

  • Übersicht über Elastic und seine Tools
  • ELK/Elastic Stack/x-pack – was ist was und was ist der Unterschied?
  • Welche Aufgaben können mit ElasticSearch gelöst werden (Suche, Speicherung, Skalierungsfunktionen, Flexibilität der Konfiguration)
  • Infrastrukturüberwachung (x-pack)
  • Container- und Anwendungsprotokolle (x-pack)
  • Protokollierung am Beispiel unserer Anwendung
  • Kibana-Praktiken
  • Open Distro für Elasticsearch von Amazon

Das Thema wurde komplett überarbeitet und von Eduard Medvedev geleitet. Viele haben ihn bereits im Webinar zu DevOps und SRE gesehen. Er wird die Best Practices für die Arbeit mit EFK am Beispiel einer Trainingsanwendung erläutern und demonstrieren. Es wird auch Übungen mit Kibana geben.

Thema Nr. 9: Infrastrukturautomatisierung mit ChatOps

  • DevOps und ChatOps
  • ChatOps: Stärken
  • Slack und Alternativen
  • Bots für ChatOps
  • Hubot und Alternativen
  • Sicherheit
  • Testing
  • Beste und schlechteste Praktiken

ChatOps fügte Authentifizierungspraxis mit Rechtetrennung, Bestätigung von Aktionen durch einen anderen Benutzer, Theorie und Praxis einer Alternative zu Slack in Form von Mattermost, Theorie der Unit- und Integrationstests für den Bot hinzu.

Slurm DevOps startet am 30. Januar. Preis: 30.
Für alle, die bis zum Ende lesen, gibt es mit dem Promo-Code habrapost 15 % Rabatt auf den DevOps-Kurs.

Anmelden hier

Ich freue mich, Sie bei Slurms zu sehen!

Source: habr.com

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz und VPS-VDS-Servern 🔥 Kaufen Sie zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server | ProHoster