
Übersetzung:
Azat Khadieff: Guten Tag. Mein Name ist Azat Khadieff. Ich bin Entwickler im PaaS-Bereich von Mail.ru Cloud Solutions. Bei mir ist Pavel Selivanov von der Firma Southbridge. Wir sind auf der DevOpsDays-Konferenz. Er wird hier einen Vortrag darüber halten, dass man mit Kubernetes DevOps aufbauen kann, aber wahrscheinlich wird es bei Ihnen nicht funktionieren. Warum dieses düstere Thema?
Pavel Selivanov: Es ist eigentlich nicht düster. Es geht darum, dass wir viele Probleme in unserer Community mit Technologie zu lösen versuchen. Dabei versuchen wir, sie oft einseitig zu lösen. Kubernetes ist das gleiche – es ist etwas, wofür man, kann man sagen, die Ops verantwortlich ist. Aber wir haben das wunderbare Konzept des DevOps-Ingenieurs. Der DevOps-Ingenieur ist für Kubernetes zuständig. Gleichzeitig… sozusagen machen Sie Kubernetes, aber die Dev-Jungs sind überhaupt nicht mit all diesen Kubernetes-Themen vertraut, wissen nicht, was es ermöglicht – und für sie läuft alles genau so weiter. Und das, obwohl Kubernetes bereit Lösungen und Werkzeuge enthält, um mit dieser Technologie den DevOps-Ansatz und die Kommunikation zwischen Dev und Ops zu erweitern. Wir nutzen diese Möglichkeit sehr wenig. Dadurch, dass wir selbst die aktuellen Strukturen auf all diese DevOps-Werkzeuge – Docker, Kubernetes, Clouds und so weiter – umstellen, verschärfen wir die Situation noch mehr. Und die Werkzeuge fangen an, nicht so verwendet zu werden, wie sie gedacht waren. Und um all diese Technologien herum entstehen einfach schreckliche Notlösungen.
Azat Khadieff: Verstehe. Man spürt, dass das Thema umfassend ist. Was denkst du, was ist das häufigste Problem bei Unternehmen derzeit? Mit Kubernetes.
Pavel Selivanov: Mit Kubernetes ist das häufigste Problem der Mangel an Kompetenzen. Das ist ein verbreitetes Problem in der IT. Es fehlen immer Fachkräfte. Es fehlt immer an Kompetenzen. Und jetzt mangelt es an Kompetenzen in Bezug auf Kubernetes. Und obwohl es tatsächlich passgenaue Lösungen auf dem Markt gibt, die es ermöglichen, Kubernetes zu erhalten, ohne die nötigen Kompetenzen zu haben, sind diese auf dem Markt noch ausgesprochen selten. Und die, die es gibt, werfen alle irgendwelche Fragen auf. Wir sind ständig auf der Suche nach Menschen, die sich damit auskennen. Wir versuchen, die Entwicklung dafür zu fördern.
Azat Khadieff: Und angesichts des aktuellen Fachkräftemangels in der IT. Der immer vorhanden war. Und immer noch so ist. Was denkst du, wie kann man unter diesen Bedingungen leben? Welche Tipps gibt es?
Pavel Selivanov: Tipps. Erstens, aus der Sicht der Cloud sieht der Tipp so aus – warum geben Sie uns nicht einen Teil Ihrer Kompetenzen? Und wir nehmen sie für uns. Und wir kümmern uns intern darum. Das ist alles in Ordnung. Außer dass es wichtig ist, für diejenigen, die es nutzen … Es gibt tatsächlich einen großartigen Moment … Aber es ist wichtig zu verstehen, dass wenn man einen Teil seiner Kompetenzen in die Cloud oder an einen Provider abgibt, erhält man im Gegenzug eine standardisierte Lösung. Grob gesagt, wir haben eine Datenbank, die sehr spezifische Dinge ausführt, und sie war sehr spezifisch konfiguriert. Wenn wir diese Datenbank in die Cloud geben, können wir natürlich den Administrator entlassen, der früher sich um die Datenbankcluster gekümmert hat – das gleiche macht Amazon oder Google für uns. Aber gleichzeitig erlauben uns das gleiche Amazon oder Google nicht, unsere Datenbank genau einzustellen. Große Projekte, große Unternehmen – sie kommen auf jeden Fall an den Punkt, an dem sie irgendwann Cloud-Lösungen nutzen, und kehren dann auf jeden Fall zurück, um die Kompetenzen zurückzugewinnen, weil spezifischere Anforderungen erforderlich sind.
Azat Khadieff: Sind universelle Lösungen schlecht oder kann man auf deren Basis mehr aufbauen?
Pavel Selivanov: Nein, universelle Lösungen sind definitiv nicht schlecht. Universelle Lösungen sind gut. Es ist nur so, dass universelle Lösungen … universell sind. Hier ist es wichtig zu verstehen. Es ist wie ein allgemeines Skript zu nehmen … Wenn du um dieses allgemeine Skript, allgemeine Anwendung die gesamte Logik der Unternehmensarbeit herum aufbauen kannst – dann ist das großartig. Aber wenn die Logik der Arbeit eine andere ist, aber du diese universelle Lösung, dieses universelle Skript nimmst – und anfängst, es wie eine Eule auf den Globus zu ziehen, ist das schlecht. Aber im Konzept des Universellen ist nichts Schlechtes.
Azat Khadieff: Wenn der Administrator bereits bei dir arbeitet, geht es nicht um seine Entlassung. Er kann einfach mehr leisten.
Pavel Selivanov: Ja, nimm ihm die Routine ab und gib sie jemand anderem, damit sie woanders erledigt wird. Das ist definitiv ein guter Ansatz. Ein wichtiger Punkt ist, ob diese standardisierte Lösung für den konkreten Fall geeignet ist.
Azat Khadiev: Aus meiner Erfahrung sehe ich, dass viele Unternehmen dasselbe tun. Sie richten einen Kubernetes-Cluster ein und denken über dessen Skalierung nach. All diese Vorgänge sind sehr wiederholbar.
Pawel Selivanov: Ja, das ist zweifellos der Fall. Zumal es, wenn wir speziell über Kubernetes sprechen, einen Punkt gibt: Es gibt derzeit wirklich wenige tiefgehende, gute Kenntnisse über Kubernetes auf dem Markt. Kubernetes ist ein riesiger Baukasten, und wenn Sie ihn in Ihr Unternehmen bringen, sollten Sie bereit sein, auch einen Ingenieur einzustellen, der sich fulltime darum kümmert. Und das ist teuer. Und einen solchen Ingenieur zu finden, ist auch nicht einfach. Wenn ich von mir spreche, ich mag keine Cloud-Lösungen besonders, weil ich ziemlich gut und tief verstehe, wie Kubernetes funktioniert. Mir fehlt oft eine Funktionalität in der Cloud, die ich anfordere – und man sagt mir „Nein, das geht nicht“. Nun, in diesem Fall tut mir leid, aber ich kann das besser als die Cloud. Aber gleichzeitig, wenn Sie keinen Engineer in Vollzeit haben, nicht bereit sind, für diesen Engineer zu bezahlen, der Kubernetes betreut, und ständig viel Geld zahlen, damit er einfach experimentiert, dann ist die Cloud einfach eine gute, hervorragende Lösung. Denn immerhin gibt es dort Leute, die Anbieter bereits eingestellt hat. Und sie wissen, was sie tun. Und die grundlegenden Dinge, die Sie im Alltag benötigen, sind dort vorhanden.
Azat Khadiev: Was denkst du über den aktuellen Zustand von Kubernetes? Was wird in fünf und in zehn Jahren mit ihm passieren?
Pawel Selivanow: Eine gute Frage. Ich weiß einfach, was in unserer Community diesbezüglich passiert. Manche Leute glauben, dass es außer Kubernetes nichts mehr geben wird. So wie es lange mit Linux war. Das heißt, außerhalb von Linux gibt es Menschen, die auf BSD leben, wahrscheinlich haben sie sehr spezifische Aufgaben. Es gibt Leute, die unter Windows arbeiten – Windows-Server – wahrscheinlich haben sie auch spezifische Aufgaben oder verfügen einfach über die Kompetenz in diesem Bereich und sind nicht bereit, davon wegzugehen. In jedem Fall ist der Standard in unserem Bereich Linux. Es gibt die Meinung, dass Kubernetes der de facto Standard werden wird und es nichts außer Kubernetes geben wird. Kubernetes wird nicht nur Anwendungen, deren Bereitstellung, Deployment und Skalierung verwalten. Es wird alles verwalten. Jetzt fragen sie schon: „Kann man eine Datenbank in Kubernetes stecken?“ Ich sage normalerweise, dass die Frage nicht in Kubernetes, sondern in Docker liegt. Wenn Sie bereit sind, dass Ihre Datenbank in Containern läuft, wie sie dann funktionieren wird. Mir wird geantwortet: „Nein, nein, nein, warten Sie. In Container brauchen wir nicht. Wir brauchen es in Kubernetes. Wir binden sie an den Knoten. Das heißt, es wird alles so sein, wie wir es jetzt haben, nur dass Kubernetes alles verwalten wird.“ Und das ist eigentlich eine gute Idee. Kubernetes ist sowas, wenn man in ein Unternehmen kommt, und dort gibt es Kubernetes und darauf basierte Prozesse, dann reicht es einem, der sich damit auskennt, ein paar Tage zu schauen und zu sagen: „Ich bin bereit, Sie vollständig zu unterstützen. Ich habe verstanden, wie bei Ihnen alles funktioniert.“ Im Gegensatz zu Ansätzen ohne Kubernetes – hier sind ein paar Krücken reingesteckt worden, da wieder andere Krücken. Hier Ansible, hier Terraform. Jemand hat das alles geschrieben, und es dauert ein halbes Jahr, um sich damit vertraut zu machen. So. Ob Kubernetes also der de facto Standard werden wird, weiß ich nicht. An diesem Tag sieht es viel ambitionierter und sicherer aus als die Lösungen, die es um ihn herum gibt.
Azat Chadyjew: Nun, der Vergleich mit Linux ist ziemlich gewagt. Es läuft ja auf einer Maschine – und das war's. Kubernetes läuft auf vielen Maschinen. Sofort entstehen Millionen von Variationen, Gründen. Ja, das ist mutig. Man muss einfach bedenken, dass es konkurrierende Paradigmen gibt. Zum Beispiel Serverless. Ist Kubernetes in Gefahr durch solche Konkurrenten?
Pavel Selivanov: Von Serverless… (Lachen) Serverless – wir müssen es schließlich verstehen, dass Server es Server gibt. Ich habe kürzlich einen Bericht zu diesem Thema gehört. Dort sagte eine Person, dass es Server tatsächlich gibt – und das ist die Cloud. Aber wir müssen immer verstehen, dass es auch in der Cloud Server gibt. Dort stehen echte Hardware-Server, Rack, und die sind irgendwo installiert. Das ist die Cloud. Darüber existiert Serverless, wo Server es „nicht“ gibt. Daher die Frage, wird Serverless Kubernetes gewinnen? Ich denke, dass Serverless in Kubernetes übergehen wird. Für Anbieter, die Serverless bereitstellen, ist Kubernetes eine sehr bequeme Plattform, um dies anzubieten. Ja, vielleicht werden wir irgendwann aufhören, im Prinzip über Kubernetes zu sprechen, wie über die übliche Entwicklung von Geschäftsanwendungen. Aber irgendwo tief im Inneren wird Kubernetes bei den Anbietern und Ingenieuren stehen, wo all dies realisiert wird.
Azat Khadiev: Ein etwas anderes Thema. Es gibt das Konzept des Fullstack-Ingenieurs. Was denkst du darüber? Gibt es die überhaupt?
Pavel Selivanov: Ähm… Fullstack-Ingenieur… Nun, ich denke, dass man diese Dinge unterscheiden sollte, dass… Weißt du, es gibt sowas wie T-shaped people. Braucht die heutige Industrie solche Leute? Ja, sie sind zweifellos notwendig. Wir brauchen Menschen mit einem breiten Horizont, die aber gleichzeitig Spezialisten in ihrem engen Bereich sind. Und hier ist der Fullstack-Ingenieur genau das – eine Person, die alles macht. Angefangen bei der Frontend-Entwicklung, über Tests, Backend, Server und alles andere. Ich glaube nicht, dass in einem großen Unternehmen eine einzige Person damit beauftragt werden kann, ohne enge Spezialisierungen in jedem dieser Bereiche. Aber gleichzeitig, nur mit einer engen Spezialisierung, wie „ich weiß nichts darüber, was daneben passiert“ – das funktioniert in der modernen Welt auch nicht. Das heißt, hier würde ich sagen… das Wort Fullstack würde ich fallen lassen. Wir brauchen sehr dringend Ingenieure. Uns werden DevOps begegnen. Ich denke, wir werden diesen Punkt bald überdenken. Und sie werden nicht mehr nötig sein.
Azat Khadiev: Kannst du das näher erläutern?
Pavel Selivanov: Ich denke, dass wir in der Branche zu dem Punkt kommen werden, an dem die Rollen von Dev und Ops bald wegfallen werden. Wenn wir Spezialisten brauchen und wir auf der Suche sind ... Wir brauchen einen bestimmten Entwickler, wir brauchen bestimmte Administratoren, wir brauchen DevOps-Ingenieure – jetzt haben wir die, bald werden auch Produktionsingenieure und SRE-Ingenieure hinzukommen. Obwohl in Wirklichkeit das, was wir brauchen, Ingenieure sind, die wir einstellen möchten. Der Hintergrund ist im Großen und Ganzen nicht wichtig. Denn ... Zum Beispiel sagt der SRE, dass Infrastrukturprobleme immer softwarebasiert sind. Und was ... Lassen Sie uns Entwickler einstellen – aus der Perspektive, dass ein Entwickler ein Ingenieur ist – sie in die Supportabteilung setzen und sie werden diese Probleme genauso lösen, wie sie Geschäftsprobleme mit Hilfe von Code und Ingenieuren lösen.
Azat Khadiev: Und aus diesem Blickwinkel ... Wie interviewt man solche Ingenieure?
Pavel Selivanov: Oh, das ist eine gute Frage. Er liegt wahrscheinlich bereits jenseits dessen, was ich in diesem Leben verstehe. Aber ich würde ein Beispiel nennen. Es hat nichts mit dem Vorstellungsgespräch zu tun. Es geht um unser Bildungssystem in Russland. In der IT wissen wir, dass unser Bildungssystem in Russland für die IT-Welt stark veraltet ist, es ist nicht so, wie es sein sollte. Ich spreche im Durchschnitt über Russland in seiner Weite — und was dort passiert. Es kommen Menschen heraus, die absolut nicht bereit sind, morgen nach ihrem Abschluss in die Webentwicklung oder in ein Technologieunternehmen zu gehen. Und das ist schlecht. Wir bringen ihnen irgendwelche seltsamen Dinge bei, obwohl wir anscheinend lehren sollten, wie man für Android und iOS entwickelt, wie man Git benutzt und all diese Dinge. Tatsächlich scheint es nicht so zu sein. Die Hochschule ist eine Zeit, in der größtenteils deine Eltern für dich bezahlen. Für dein ganzes Leben. Und du kannst fünf Jahre deines Lebens widmen, um vertieft zu lernen. Und all das T-geformte Wissen zu studieren. Während du an der Hochschule lernst, was ein Versionskontrollsystem ist, welche Entwicklungsmuster es gibt, wie man all diese Sachen testet, welche Datenbanken es gibt, Lastverteiler. Und wenn du dann anfängst zu arbeiten, beginnst du, dich in einem bestimmten Bereich zu vertiefen. So erhalten wir Ingenieure. Und unser Bildungssystem in Russland ist dieser Wahrheit viel näher, als uns bewusst ist. Wir erhalten eine gute mathematische Ausbildung, eine gute algorithmische Ausbildung, wir bekommen ein gewisses Verständnis für Programmiersprachen. Und was das Vorstellungsgespräch betrifft, scheint mir das etwas Ähnliches zu sein. Wir müssen Ingenieure befragen. Wir brauchen den oberen Teil des T in T-förmig. Denn den vertikalen Strich des Buchstabens T wird er erwerben.
Azat Khadiyev: Ja, interessant. Fünf Jahre nach dem Studium dachte ich, meine Ausbildung sei irgendwie seltsam und unangemessen. Aber dann, im Lauf der Arbeit, als die Aufgaben tiefer wurden und die Projekte größer, wurde mir klar, dass ich sehr wichtige Sachen gelernt hatte. Pavel, danke dir. Es war sehr interessant, deine Antworten zu hören. Lass uns deinen Vortrag anhören.
Pavel Selivanov: Vielen Dank.
Quelle: habr.com
