DevOpsForum 2019. DevOps-Implementierungen können nicht warten.

Neulich war ich auf dem DevOpsForum 2019, das von Logrocon veranstaltet wurde. Auf dieser Konferenz versuchten die Teilnehmer, Lösungen und neue Werkzeuge fĂŒr die effektive Zusammenarbeit zwischen Unternehmen und Fachleuten fĂŒr Entwicklung und IT-Service zu finden.

DevOpsForum 2019. DevOps-Implementierungen können nicht warten.

Die Konferenz war ein voller Erfolg: Es gab wirklich viele nĂŒtzliche VortrĂ€ge, interessante Formate und jede Menge Austausch mit den Referenten. Besonders wichtig war, dass mir niemand etwas verkaufen wollte, was bei großen Konferenzen in letzter Zeit hĂ€ufig der Fall ist.

Zusammenfassungen der VortrÀge von Raiffeisenbank, AlfaStrakhovanie, die Erfahrungen von Mango Telecom bei der Implementierung von Automatisierung und weitere Details nach dem Cut.

Mein Name ist Jana, ich arbeite als Tester, beschÀftige mich mit Automatisierung sowie DevOps und liebe es, an Konferenzen und Meetups teilzunehmen. In den letzten zwei Jahren war ich auf den Konferenzen von Oleg Bunin (HighLoad++, TeamLead Conf), bei Jug-Veranstaltungen (Heisenbug, JPoint), auf der TestCon Moscow, DevOps Pro Moscow, Big Data Moscow.

Zuerst achte ich auf das Programm der Konferenz. Weniger darauf, worĂŒber der Vortrag gehalten wird, mehr auf den Referenten. Selbst wenn der Vortrag sehr technologieorientiert und interessant ist, ist es nicht sicher, dass du einige Best Practices aus dem Vortrag in deinem Unternehmen anwenden kannst. Und dann brauchst du einen guten Referenten.

Das Licht am Ende der Pipeline bei Raiffeisenbank

Normalerweise suche ich in den Pausen nach interessanten Referenten. Auf dem DevOpsForum 2019 fiel mir ein Referent von der Raiffeisenbank – Michail Bizhan – auf. WĂ€hrend seines Vortrags erklĂ€rte er, wie sie ihre Teams schrittweise auf DevOps umstellen, warum sie das benötigen und wie man der UnternehmensfĂŒhrung die Idee der DevOps-Transformation verkauft. Er sprach auch darĂŒber, wie man das Licht am Ende der Pipeline sehen kann.

DevOpsForum 2019. DevOps-Implementierungen können nicht warten.
Michail Bizhan, Direktor fĂŒr Automatisierung bei Raiffeisenbank

In ihrem Unternehmen gibt es derzeit kein „echtes DevOps“. Es ist echt, aber nicht in allen Teams. Bei der Implementierung von DevOps stĂŒtzen sie sich auf die Bereitschaft der Teams, sowohl aus Sicht der einzelnen Ingenieure als auch in Bezug auf die BedĂŒrfnisse des Produkts und die Reife der Plattform, auf der dieses Produkt aufgebaut ist. Misha erzĂ€hlte, wie man dem GeschĂ€ft erklĂ€rt, warum DevOps notwendig ist.

Der Bankensektor hat mehrere Wachstumsfaktoren: die Kosten der Dienstleistungen und die Erweiterung des Kundenstamms. Die Erhöhung der Kosten ist kein besonders guter Wachstumsfaktor, wĂ€hrend das Wachstum des Kundenstamms im Gegenteil positiv ist. Wenn die Wettbewerber ein objektiv gutes Produkt anbieten, gehen alle Kunden dorthin, und im Laufe der Zeit stabilisiert sich der Markt. Daher ist die EinfĂŒhrung neuer Produkte und die Geschwindigkeit, mit der sie auf den Markt gebracht werden, das Hauptaugenmerk der Banken. Genau dafĂŒr wird DevOps benötigt, und das GeschĂ€ft versteht das.

Ein weiterer wichtiger Punkt: DevOps verkĂŒrzt nicht immer die MarkteinfĂŒhrungszeit. DevOps kann nicht fĂŒr sich allein arbeiten; es ist nur ein Teil des Prozesses zur Erstellung und MarkteinfĂŒhrung des Produkts von der Entwicklung bis zur Produktion (von Code zu Kunde). Alles, was vor dem Code passiert, hat nichts mit DevOps zu tun. Das heißt, die Marketer können jahrelang den Markt analysieren und ein Leben lang hinter den Wettbewerbern herlaufen. Es ist entscheidend, schnell zu erkennen, was der Kunde braucht, und die Umsetzung eines bestimmten Features zu planen – oft fehlt genau das, damit DevOps effektiv arbeitet und das Unternehmen seine Ziele erreicht. Daher wurde zunĂ€chst bei Raiffeisenbank mit dem GeschĂ€ft vereinbart, dass man lernen muss, DevOps zu nutzen. Automatisierung um der Automatisierung willen wird im Kampf um neue Kunden nicht viel helfen.

Im Großen und Ganzen ist Misha der Meinung, dass DevOps eingefĂŒhrt werden muss, aber mit Bedacht. Man muss darauf vorbereitet sein, dass anfangs die ProduktivitĂ€t des Teams sinkt und weniger Geld verdient wird, aber letztendlich wird sich das auszahlen.

Die Testautomatisierung bei "Mango Telecom"

Eine weitere interessante PrĂ€sentation hielt Egor Maslov von "Mango Telecom" fĂŒr mich als Tester. Die PrĂ€sentation trug den Titel "Automatisierung des gesamten Testzyklus im SCRUM-Team". Egor ist der Ansicht, dass DevOps speziell fĂŒr SCRUM geschaffen wurde, doch gleichzeitig ist es ziemlich problematisch, DevOps in ein SCRUM-Team umzusetzen. Das liegt daran, dass das SCRUM-Team stĂ€ndig irgendwohin eilt und keine Zeit hat, um sich mit Neuerungen und Prozessanpassungen zu beschĂ€ftigen. Außerdem gibt es das Problem, dass SCRUM keine Unterteams innerhalb des Teams (Tester-Team, Entwickler-Team usw.) vorsieht. DarĂŒber hinaus ist fĂŒr die Automatisierung des bestehenden Prozesses Dokumentation erforderlich, und im SCRUM fehlt diese hĂ€ufig vollstĂ€ndig - "das Produkt ist wichtiger als irgendwelche Aufzeichnungen."

Nach dem Wechsel zu SCRUM begannen die Tester, die Entwickler zu konsultieren, wie sie die Funktionen testen sollten. AllmĂ€hlich nahm das Funktionsvolumen zu, die Dokumentation fehlte, und sie entdeckten viele Bugs in den Funktionen, die nicht getestet wurden, und es war unklar, wer und wann sie getestet hatte. Kurz gesagt - Chaos und Verwirrung. Sie beschlossen, zur Automatisierung des Testens ĂŒberzugehen. Doch auch dann gab es ein komplettes Fiasko. Sie engagierten externe Spezialisten fĂŒr die Automatisierung, die in einem fĂŒr die internen Tester unbekannten Stack programmierten. Das Framework fĂŒr die Autotests funktionierte zwar, aber nachdem die Outsourcing-Spezialisten weg waren, hielt es nur zwei Wochen. Dann gab es einen zweiten Versuch der EinfĂŒhrung automatisierter Tests. Dieser begann damit, dass alles innerhalb der Firma und mit eigenen KrĂ€ften aufgebaut werden musste (richtige Richtung: Expertise im Unternehmen aufbauen), im Rahmen von SCRUM und wĂ€hrend des Prozesses Dokumentationen zu erstellen. Der Stack fĂŒr die Automatisierung sollte dem Produktstack entsprechen (hier stimme ich voll und ganz zu, testen Sie ein Projekt nicht mit etwas anderem als JavaScript). Am Ende jedes Sprints veranstalteten sie eine Demo, wie der Autotest funktioniert, mit der gesamten Teamteilnahme (nĂŒtzlich). Auf diese Weise wurde das Engagement aller Teammitglieder im Automatisierungsprozess gesteigert, das Vertrauen in die Autotests gestĂ€rkt und die Wahrscheinlichkeit erhöht, dass dieser Autotest tatsĂ€chlich genutzt wird (und nicht nach einem Monat wegen stĂ€ndiger Fehler auskommentiert wird).

Übrigens gab es auf dem DevOpsForum 2019 ein offenes Mikrofon – ein lĂ€ngst bekanntes und meiner Meinung nach nĂŒtzliches Format fĂŒr VortrĂ€ge. Man geht dahin, hört sich die VortrĂ€ge an und entscheidet dann, dass es im Rahmen der Konferenz sinnvoll ist, ein bestimmtes Thema oder ein Problem zu erörtern und relevante Erfahrungen zur Lösung einer Aufgabe zu teilen.

Ich habe außerdem bemerkt, dass die Organisatoren einen Stream fĂŒr kurze VortrĂ€ge eingerichtet haben. Jeder Vortrag dauert nicht lĂ€nger als 10 Minuten, danach folgt eine Fragerunde. So kann man zahlreiche Themen abdecken und Fragen an die Referenten stellen, die einem interessant erscheinen.

DevOpsForum 2019. DevOps-Implementierungen können nicht warten.
DevOpsForum 2019. DevOps-Implementierungen können nicht warten.
Zwischen den VortrÀgen bin ich durch die StÀnde der Konferenzpartner geschlendert und habe viele verschiedene Dinge eingesammelt/gewonnen. Ach, ich liebe die Giveaways!

Runder Tisch und Fragen zu DevOps mit dem Entwicklungsleiter von AlfaStrakhovanie

Das SahnehĂ€ubchen des DevOpsForum 2019 fĂŒr mich war die einstĂŒndige Plenarsitzung mit DevOps-Experten. Vier Teilnehmer wurden eingeladen, um DevOps aus verschiedenen Perspektiven zu betrachten: Anton Isanin (AlfaStrakhovanie, Entwicklungsleiter), Nailya Zamashkina (Fintech Lab, Betriebsleiter), Oleg Yegorkin (Rostelecom, Agile-Coach) und Anton Martyanov (unabhĂ€ngiger Experte, der DevOps aus geschĂ€ftlicher Sicht betrachtete).

Die Experten setzten sich nĂ€her zu den Teilnehmern und es ging los: Eine ganze Stunde lang stellten die Teilnehmer aus dem Saal ihre Fragen, wĂ€hrend die Experten sich den Antworten stellten. Manchmal entbrannten echte Debatten. Die Fragen waren sehr unterschiedlich, zum Beispiel: Braucht man ĂŒberhaupt DevOps-Ingenieure? Warum kann man sie nicht aus Systemadministratoren heranziehen? Sollte man jedem DevOps anbieten? Was ist der Wert davon und so weiter.

Danach habe ich persönlich mit Anton Isanin gesprochen. Wir diskutierten ĂŒber die Notwendigkeit, die DevOps-Kultur in jedes Haus zu tragen, und beleuchteten die dunkle Seite der DevOps-Transformation.

Stellen wir uns vor, alle haben sich versammelt und beschlossen, dass DevOps sowohl fĂŒr das Produkt als auch fĂŒr das GeschĂ€ft und das Team notwendig ist. Los geht's mit der Implementierung. Es hat geklappt. Aufatmen. DevOps hat uns nĂ€her zum Kunden gebracht, nun können wir all seine WĂŒnsche schnell erfĂŒllen. Am Ende haben wir eine große Ops-Abteilung mit strengen Regulierungen und Anforderungen, die stĂ€ndig Fehler im Produkt erzeugt und viele Anfragen erstellt. Dabei haben alle Fehler den Status "dringend", selbst wenn der Kunde plötzlich möchte, dass ein Button gelb statt grĂŒn wird. Das Projekt wĂ€chst, die Anzahl der Releases steigt und damit auch die Anzahl der Fehler und das UnverstĂ€ndnis der neuen FunktionalitĂ€ten bei den Kunden. Ops stellt zehn weitere Personen ein, um Fehler zu berichten, und die Entwicklung stellt fĂŒnfzehn ein, um sie zu beheben. Und anstatt neue Funktionen zu implementieren, beschĂ€ftigt sich das Team mit endlosen SDs, indem es dem Nutzer und gleichzeitig dem Support die FunktionalitĂ€t erklĂ€rt. Am Ende sind sowohl Ops als auch Entwicklung beschĂ€ftigt, aber der Kunde und das GeschĂ€ft sind unzufrieden: Neue Features stecken fest. Es scheint, als gĂ€be es DevOps, aber irgendwie auch nicht.

Zur Notwendigkeit der EinfĂŒhrung von DevOps hat Anton unmissverstĂ€ndlich erklĂ€rt, dass dies direkt von der GrĂ¶ĂŸe des Unternehmens abhĂ€ngt. Wenn die Betreuung eines Kunden im Jahr der Firma eine Milliarde einbringt – dann ist DevOps nicht nötig (vorausgesetzt, dass man diesem Kunden nicht regelmĂ€ĂŸig neue Änderungen bereitstellen muss). Es lĂ€uft alles bestens. Aber wenn das GeschĂ€ft wĂ€chst und mehr Kunden hinzukommen, dann muss man sich anpassen. In der Regel gibt es anfangs kein richtiges Ops im Unternehmen. Zuerst entwickeln wir das Produkt, und erst dann wird uns klar, dass wir darauf achten mĂŒssen, dass das Produkt funktioniert, indem wir die Lieferungen im Auge behalten. ServernDann entsteht Ops. Wir mĂŒssen jedoch verstehen, dass Ops als separate Abteilung viele Barrieren fĂŒr die Entwicklung aufstellen wird und alle Lieferungen ins Stocken geraten. Das bedeutet, dass in diesem Fall die DevOps-Kultur bereits relevant ist, wir jedoch die dunkle Seite nicht vergessen dĂŒrfen.

Quelle: habr.com

60GB SSD 8Gb DDR4