Ist Kubernetes das neue Linux? Interview mit Pavel Selivanov


Erklärung:
Azat Khadiev: Hallo. Mein Name ist Azat Khadiev. Ich bin PaaS-Entwickler für Mail.ru Cloud Solutions. Bei mir ist Pavel Selivanov aus Southbridge. Wir sind auf der DevOpsDays-Konferenz. Er wird hier einen Vortrag darüber halten, wie man DevOps mit Kubernetes aufbauen kann, aber höchstwahrscheinlich wird es Ihnen nicht gelingen. Warum so ein dunkles Thema?

Pavel Selivanov: Eigentlich ist es nicht düster. Es geht darum, dass wir versuchen, viele Probleme in unserer Gemeinschaft mithilfe von Technologie zu lösen. Und wir versuchen, die Dinge mit Hilfe der Technologie eher einseitig zu lösen. Kubenetes ist das Gleiche – dafür sind sie verantwortlich, man könnte sagen, dass Ops. Aber wir haben ein großartiges Konzept eines DevOps-Ingenieurs. Ein DevOps-Ingenieur ist für Kubernetes verantwortlich. Zur gleichen Zeit ... So wie Sie Kubernetes erstellen, aber die Entwickler sind sich all dieser Kubernetes überhaupt nicht bewusst, sie wissen nicht, was Sie damit tun können – und für sie läuft alles genauso ab. Und das trotz der Tatsache, dass Kubernetes fertige Lösungen und fertige Tools enthält, um diese Technologie zu nutzen, um diesen DevOps-Ansatz, die Kommunikation zwischen Dev und Ops, zu erweitern. Wir nutzen diese Chance sehr wenig. Dadurch, dass wir aktuelle Strukturen sogar auf all diese DevOps-Tools – Docker, Kubernetes, Clouds usw. – übertragen, verschärfen wir diese Situation noch weiter. Und wir beginnen, die Werkzeuge anders zu nutzen, als sie vorgesehen waren. Und rund um all diese Technologien werden schreckliche Krücken gebaut.

Azat Khadiev: Ich verstehe. Es fühlt sich wie ein breites Thema an. Was ist Ihrer Meinung nach derzeit das häufigste Problem, mit dem Unternehmen konfrontiert sind? Mit Kubernetes.

Pavel Selivanov: Das häufigste Problem bei Kubernetes ist der Mangel an Kompetenzen. Dies ist ein häufiges Problem in der IT. Es herrscht immer ein Fachkräftemangel. Es mangelt immer an Kompetenzen. Und jetzt fehlen bei Kubernetes die Kompetenzen. Und gleichzeitig gibt es immer noch XNUMX % fertige Lösungen auf dem Markt, die es ermöglichen würden, Kubernetes zu bekommen, aber gleichzeitig nicht über die notwendigen Kompetenzen verfügen; ehrlich gesagt gibt es davon nur wenige auf dem Markt. Und diejenigen, die existieren, werfen alle einige Fragen auf. Bei Kubernetes sind wir ständig auf der Suche nach Menschen, die das verstehen. Wir versuchen, die Entwicklung daran anzupassen.

Azat Khadiev: Und angesichts des aktuellen Personalmangels in der IT. Was schon immer da war. Und jetzt gibt es sie. Wie soll Ihrer Meinung nach unter diesen Bedingungen gelebt werden? Welche Lifehacks gibt es?

Pavel Selivanov: Lifehacks. Aus Sicht der Cloud sieht der Life-Hack zunächst so aus – nennen wir uns einige Ihrer Kompetenzen. Und wir werden sie für uns nehmen. Und wir werden dies in uns selbst tun. Und das ist alles gut. Abgesehen davon, dass es wichtig ist, es für diejenigen zu verstehen, die es nutzen... Eigentlich ein toller Moment... Aber es ist wichtig zu verstehen, dass wir im Gegenzug eine universelle Lösung erhalten, wenn wir einen Teil unserer Kompetenzen irgendwo in die Cloud oder den Anbieter geben . Grob gesagt haben wir eine Datenbank, die ganz bestimmte Dinge tut, und sie wurde auf ganz bestimmte Weise konfiguriert. Indem wir diese Datenbank in die Cloud geben, können wir natürlich den Administrator entlassen, der sich früher mit Datenbankclustern befasst hat – Amazon oder Google werden dies auch für uns tun. Gleichzeitig erlauben uns Amazon oder Google jedoch nicht, unsere Datenbank eindeutig zu konfigurieren. Große Projekte, große Unternehmen – auf jeden Fall kommen sie an den Punkt, dass sie irgendwann in ihrem Leben Cloud-Lösungen nutzen, und dann kehren sie auf jeden Fall dazu zurück, die Kompetenzen wieder auf sich zu nehmen, weil etwas Konkreteres erforderlich ist .

Azat Khadiev: Sind universelle Lösungen schlecht oder können auf ihrer Grundlage weitere Lösungen aufgebaut werden?

Pavel Selivanov: Nein, universelle Lösungen sind definitiv nicht schlecht. Universelle Lösungen sind gut. Einfach universelle Lösungen... universell. Hier ist es wichtig zu verstehen. Es ist, als würde man ein gemeinsames Skript nehmen ... Wenn man die gesamte Arbeitslogik des Unternehmens auf diesem gemeinsamen Skript, dieser gemeinsamen Anwendung aufbauen kann, dann ist das cool. Und wenn die Logik der Arbeit eine andere ist, man aber diese universelle Lösung, ein universelles Drehbuch nimmt – und wie eine Eule anfängt, an einem Globus zu ziehen, dann ist das schlecht. Und am Universalismus selbst ist nichts auszusetzen.

Azat Khadiev: Wenn dieser Administrator bereits für Sie arbeitet, geht es nicht um seine Entlassung. Er wird einfach mehr können.

Pavel Selivanov: Ja, nehmen Sie ihm die Routine weg und geben Sie sie irgendwo an jemanden, der sie irgendwo dort machen kann. Das ist auf jeden Fall ein guter Ansatz. Dabei kommt es darauf an, ob diese Standardlösung für den konkreten Fall geeignet ist.

Azat Khadiev: Allein aufgrund meiner Erfahrung sehe ich, dass viele Unternehmen das Gleiche tun. Sie bauen einen Kubernetes-Cluster auf und überlegen, ihn zu skalieren. Und alle diese Vorgänge sind sehr wiederholbar.

Pavel Selivanov: Ja, auf jeden Fall. Darüber hinaus gibt es, wenn wir speziell Kubernetes betrachten, den Punkt, dass es derzeit wirklich wenig fundiertes und gutes Wissen über Kubernetes auf dem Markt gibt. Und Kubernetes ist ein so gigantischer Konstrukteur, dass Sie, wenn Sie es für ein Unternehmen beauftragen, darauf vorbereitet sein müssen, einen Ingenieur mitzunehmen, der das alles in Vollzeit erledigt. Und es ist teuer. Und versuchen Sie erneut, einen solchen Ingenieur zu finden. Wenn ich über mich selbst spreche, mag ich keine Cloud-Lösungen wirklich, weil ich ein ziemlich gutes und tiefes Verständnis dafür habe, wie Kubernetes funktioniert. Und oft fehlen mir in Clouds einfach einige Funktionen, die ich anfordere – aber sie sagen mir: „Nein, das geht nicht.“ Nun, in diesem Fall tut es mir leid, aber ich kann es besser machen als Cloud. Aber wenn Sie gleichzeitig keinen Vollzeit-Ingenieur haben, Sie nicht für diesen Ingenieur bezahlen möchten, der Kubernetes betreibt, und ihm ständig viel Geld zahlen, nur um zu experimentieren, dann ist die Cloud einfach eine gute, tolle Lösung. Denn dort sitzen immerhin Leute, die der Anbieter bereits angeworben hat. Und sie wissen, was sie tun. Und die grundlegenden Dinge, die Sie täglich brauchen, sind da.

Azat Khadiev: Was denken Sie über den aktuellen Stand von Kubernetes? Was wird mit ihm in fünf und zehn Jahren passieren?

Pavel Selivanov: Gute Frage. Ich weiß nur, was in unserer Community darüber vor sich geht. Manche Leute glauben, dass es außer Kubernetes nichts mehr geben wird. Die Situation, die vor langer Zeit mit Linux passiert ist. Das heißt, außerhalb von Linux gibt es Leute, die auf BSD leben und höchstwahrscheinlich sehr spezifische Aufgaben haben. Es gibt Leute, die unter Windows – Windows-Servern – arbeiten, höchstwahrscheinlich haben sie auch bestimmte Aufgaben, oder sie haben einfach Kompetenz in diesem Bereich und sind nicht bereit, dort aufzuhören. Der Standard in unserem Bereich ist jedenfalls Linux. Es besteht die Meinung, dass Kubernetes zum De-facto-Standard wird und es außer Kubernetes nichts mehr geben wird. Kubernetes verwaltet nicht nur Anwendungen, sondern auch deren Bereitstellung, Bereitstellung und Skalierung. Im Allgemeinen verwalten Sie alles. Jetzt fragen sie bereits: „Ist es möglich, eine Datenbank in Kubernetes zu pushen?“ Normalerweise sage ich, dass das Problem hier nicht bei Kubernetes, sondern bei Docker liegt. Wenn Sie bereit sind, Ihre Datenbank in Containern auszuführen, funktioniert dies wie folgt. Sie antworten mir: „Nein, nein, nein, warte.“ Keine Behälter erforderlich. Brauche Kubernetes. Wir werden es auf den Knoten pfropfen. Das heißt, alles wird so sein, wie wir es jetzt haben, nur Kubernetes wird alles verwalten.“ Und das ist tatsächlich eine gute Idee. Das heißt, Kubernetes ist so etwas, wenn Sie zu einem Unternehmen kommen können. Wenn das Unternehmen über Kubernetes und darauf basierende Prozesse verfügt, dann muss eine Person, die das versteht, es nur ein paar Tage lang ansehen, um zu sagen: „ Ich bin bereit, Sie zu unterstützen. Völlig. Vollständig. Ich verstehe, wie die Dinge bei Ihnen funktionieren.“ Im Gegensatz zu Ansätzen ohne Kubernetes – hier wurden einige Krücken reingeschoben, hier andere Krücken. Ansible hier, Terraform hier. Jemand hat das alles geschrieben, und es dauert sechs Monate, es herauszufinden. Hier. Ob Kubernetes also zum De-facto-Standard wird, weiß ich nicht. Heute wirkt er viel ehrgeiziger und selbstbewusster als die Lösungen, die um ihn herum existieren.

Azat Khadiev: Nun, der Vergleich mit Linux ist ziemlich gewagt. Es funktioniert auf einer Maschine – das ist alles. Und Kubernetes funktioniert auf vielen Maschinen. Es ergeben sich sofort eine Million Variationen und Gründe. Ja, es ist mutig. Nur wenn man bedenkt, dass es Konkurrenten zu diesem Paradigma gibt. Beispiel: Serverlos. Ist Kubernetes bei solchen Konkurrenten in Gefahr?

Pavel Selivanov: Von Serverless... (Gelächter) Serverless – wir verstehen immer noch, dass es doch Server gibt. Ich habe kürzlich einen Bericht zu diesem Thema gehört. Dort sagte die Person, dass es noch Server gibt – und das ist eine Cloud. Aber wir müssen immer verstehen, dass die Cloud auch Server hat. Es gibt echte Hardware-Server, ein Rack und sie sind irgendwo installiert. Das ist die Wolke. Darüber hinaus gibt es Serverless, bei dem es „keine“ Server gibt. Die Frage ist also: Wird Serverless Kubernetes besiegen? Es scheint mir, dass Serverless auf Kubernetes umsteigen wird. Für Anbieter, die Serverless bereitstellen, ist Kubernetes eine sehr praktische Plattform, um dies bereitzustellen. Ja, vielleicht werden wir irgendwann aufhören, prinzipiell über Kubernetes zu reden, wie über die gewöhnliche Entwicklung von Geschäftsanwendungen. Aber irgendwo in der Tiefe werden Anbieter und Ingenieure Kubernetes haben, wo all dies implementiert wird.

Azat Khadiev: Ein etwas anderes Thema. Es gibt so etwas wie einen Full-Stack-Ingenieur. Was denken Sie über sie? Existieren sie überhaupt?

Pavel Selivanov: Ähm ... Fullstack-Ingenieur ... Nun, es scheint mir, dass es sich lohnt, zwischen diesen Dingen zu unterscheiden, die ... Wissen Sie, es gibt so etwas wie T-förmige Menschen. Werden solche Leute in der heutigen Industrie benötigt? Ja, wir brauchen es unbedingt. Wir brauchen Leute, die einen weiten Horizont haben, aber gleichzeitig auch Spezialisten auf einem engen Gebiet sind. Und hier ist der Fullstack-Ingenieur derselbe – eine Person, die alles macht. Angefangen bei der Front-End-Entwicklung, Tests, Back-End, Servern und allem anderen. Ich glaube nicht, dass in einem großen Unternehmen eine Person dies tun kann, ohne über eine enge Spezialisierung auf jeden einzelnen Parameter zu verfügen. Aber gleichzeitig weiß ich nichts davon, einfach nur eine enge Spezialisierung zu haben, wie etwa das, was damit zu tun hat – das funktioniert auch nicht in der modernen Welt. Das heißt, hier würde ich sagen ... Ich würde das Wort Fullstack verwerfen. Wir brauchen wirklich Ingenieure. Wir brauchen DevOps. Ich habe das Gefühl, dass wir diesen Moment bald noch einmal überdenken werden. Und sie werden nicht benötigt.

Azat Khadiev: Können Sie das verraten?

Pavel Selivanov: Mir scheint, dass wir in der Branche zu dem Schluss kommen werden, dass diese Dev- und Ops-Rollen bald verschwinden werden. Wenn wir Spezialisten brauchen und auf der Suche sind ... Wir brauchen diesen und jenen Entwickler, wir brauchen diesen und jenen Administratoren, wir brauchen DevOps-Ingenieure – jetzt haben wir sie, jetzt werden wir auch Produktionsingenieure haben, SRE-Ingenieure. Wobei wir tatsächlich Ingenieure brauchen, die wir einstellen wollen. Der Hintergrund ist im Großen und Ganzen nicht wichtig. Denn... SRE sagt zum Beispiel, dass Infrastrukturprobleme immer Softwareprobleme sind. Also... Nehmen wir Entwickler – unter dem Gesichtspunkt, dass ein Entwickler ein Ingenieur ist – und stecken sie in die Wartungsabteilung, und sie werden diese Probleme auf die gleiche Weise lösen, wie sie Geschäftsprobleme mit Hilfe von Code lösen, mit der Hilfe des Ingenieurwesens als solches.

Azat Khadiev: Und aus dieser Sicht ... Wie interviewt man solche Ingenieure?

Pavel Selivanov: Oh, gute Frage. Er ist in diesem Leben wahrscheinlich schon jenseits dessen, was ich verstehe. Aber ich würde nur ein Beispiel nennen. Es hat nichts mit dem Interview zu tun. Hier geht es um unser Bildungssystem in Russland. Im IT-Bereich wissen wir, dass unser Bildungssystem in Russland für die IT-Welt sehr veraltet ist und nicht das ist, was es sein sollte. Ich spreche im Durchschnitt vom riesigen Russland – und was dort passiert. Leute machen ihren Abschluss, die absolut nicht bereit sind, gleich am nächsten Tag nach ihrem Abschluss in die Webentwicklung oder ein Technologieunternehmen einzusteigen. Und es ist irgendwie schlimm. Wir bringen ihnen einige seltsame Dinge bei, obwohl wir ihnen beibringen sollten, wie man für Android, iOS entwickelt, wie man Git verwendet und all diese Dinge. Tatsächlich scheint es nicht so zu sein. Das College ist eine Zeit, in der deine Eltern hauptsächlich für dich aufkommen. Für dein ganzes Leben. Und Sie können fünf Jahre Ihres Lebens dem intensiven Studium widmen. Und studieren Sie das alles in T-Form. Wenn man am Institut studieren kann, was ein Versionskontrollsystem ist, welche Entwicklungsmuster es gibt, wie man das Ganze testet, welche Arten von Datenbanken und Balancern es gibt. Und wenn Sie zur Arbeit gehen, beginnen Sie, tiefer in ein bestimmtes Gebiet einzutauchen. Und so bekommen wir Ingenieure. Und unser Bildungssystem in Russland ist dieser Wahrheit viel näher als wir denken. Wir bekommen eine gute mathematische Ausbildung, wir bekommen eine gute algorithmische Ausbildung, wir bekommen ein gewisses Verständnis für Programmiersprachen. Und was das Interview angeht, kommt es mir so vor, als ob es in etwa so wäre. Wir müssen Ingenieure befragen. Für die T-Form benötigen wir die Oberseite des T. Weil es die vertikale Linie des Buchstabens T erhält.

Azat Khadiev: Ja, interessant. Fünf Jahre nach dem College kam es mir vor, dass meine Ausbildung irgendwie seltsam und unzureichend war. Und dann, als die Arbeit voranschritt, als die Aufgaben tiefer gingen, die Projekte größer wurden, wurde mir klar, dass mir sehr wichtige Dinge beigebracht wurden. Pavel, danke. Es war sehr interessant, Ihren Antworten zuzuhören. Hören wir uns Ihren Bericht an.

Pavel Selivanov: Danke.

Source: habr.com

Kommentar hinzufügen