Kubernetes es nuevo LinuxEntrevista con Pavel Selivanov

Ver mas

Descifrado:
Azat Khadiev: Hola. Mi nombre es Azat Khadiev. Soy desarrollador PaaS para Mail.ru Cloud Solutions. Aquí conmigo está Pavel Selivanov de Southbridge. Estamos en la conferencia DevOpsDays. Aquí dará una charla sobre cómo se puede construir DevOps con Kubernetes, pero lo más probable es que no tenga éxito. ¿Por qué un tema tan oscuro?

Pavel Selivanov: En realidad, no es tan sombrío. Se trata del hecho de que estamos intentando resolver muchos problemas en nuestra comunidad con la ayuda de la tecnología. Y estamos tratando de resolver las cosas con la ayuda de la tecnología de una manera bastante unilateral. Kubenetes es lo mismo: esto es de lo que son responsables, se podría decir que Ops. Pero tenemos un gran concepto de ingeniero DevOps. Un ingeniero de DevOps es responsable de Kubernetes. Al mismo tiempo... Es como si crearas Kubernetes, pero los desarrolladores no son conscientes de todos estos Kubernetes, no son conscientes de lo que te permite hacer, y todo vive exactamente igual para ellos. Y esto a pesar de que Kubernetes contiene soluciones y herramientas listas para usar para utilizar esta tecnología para ampliar este enfoque de DevOps, la comunicación entre Dev y Ops. Aprovechamos muy poco esta oportunidad. Debido al hecho de que incluso estamos transfiriendo estructuras actuales a todas estas herramientas DevOps (Docker, Kubernetes, nubes, etc.), estamos agravando aún más esta situación. Y comenzamos a utilizar las herramientas de manera diferente a como fueron diseñadas. Y en torno a todas estas tecnologías se están construyendo muletas terribles.

Azat Khadiev: Ya veo. Parece un tema amplio. ¿Cuál crees que es el problema más común que tienen las empresas en este momento? Con Kubernetes.

Pavel Selivanov: El problema más común con Kubernetes es la falta de competencias. Este es un problema común en TI. Siempre hay escasez de especialistas. Siempre faltan competencias. Y ahora con Kubernetes no hay suficientes competencias. Y al mismo tiempo, todavía hay soluciones XNUMX% listas para usar en el mercado que le permitirían obtener Kubernetes, pero al mismo tiempo no tienen las competencias necesarias; francamente, hay pocas en el mercado. Y los que existen, todos plantean algunas preguntas. Con Kubernetes, buscamos constantemente personas que entiendan esto. Estamos intentando adaptar el desarrollo a esto.

Azat Khadiev: Y dada la actual escasez de personal en TI. Que siempre ha estado ahí. Y ahora lo hay. ¿Cómo piensas vivir en estas condiciones? ¿Qué trucos de vida existen?

Pavel Selivanov: trucos salvavidas. En primer lugar, desde el punto de vista de las nubes, el truco de vida se ve así: démosnos algunas de sus competencias. Y los tomaremos para nosotros mismos. Y lo haremos dentro de nosotros mismos. Y eso está todo bien. Excepto que es importante entenderlo para quienes lo usan... En realidad, es un gran momento... Pero es importante entender que si entregamos parte de nuestras competencias en algún lugar a la nube o al proveedor, obtenemos a cambio una solución universal. . A grandes rasgos, tenemos una base de datos que hace cosas muy específicas y ha sido configurada de una manera muy específica. Al entregar esta base de datos a la nube, nosotros, por supuesto, podemos despedir al administrador que solía ocuparse de los grupos de bases de datos; el mismo Amazon o Google lo harán por nosotros. Pero al mismo tiempo Amazon o Google no nos permitirán configurar claramente nuestra base de datos. Grandes proyectos, grandes empresas: en cualquier caso, llegan al punto de que en algún momento de su vida utilizan soluciones en la nube y luego, en cualquier caso, vuelven a recuperar las competencias, porque se requiere algo más específico. .

Azat Khadiev: ¿Son malas las soluciones universales o se pueden construir más a partir de ellas?

Pavel Selivanov: No, las soluciones universales definitivamente no son malas. Las soluciones universales son buenas. Sólo soluciones universales... universales. Es importante entender aquí. Es como tomar un script común... Si puedes construir toda la lógica del trabajo de la empresa en torno a este script común, a esta aplicación común, entonces está bien. Y si la lógica del trabajo es diferente, pero tomas esta solución universal, un guión universal y comienzas, como un búho, a tirar de un globo terráqueo, esto es malo. Y el universalismo en sí no tiene nada de malo.

Azat Khadiev: Si este administrador ya trabaja para usted, el punto no es su despido. Simplemente podrá hacer más.

Pavel Selivanov: Sí, quítale la rutina y dásela a alguien en algún lugar para que la haga en algún lugar. Este es definitivamente un buen enfoque. Lo importante aquí es si esta solución estándar es adecuada para un caso concreto.

Azat Khadiev: Según mi experiencia, veo que muchas empresas están haciendo lo mismo. Están configurando un clúster de Kubernetes y pensando en ampliarlo. Y todas estas operaciones son muy repetibles.

Pavel Selivanov: Sí, definitivamente. Además, si tomamos Kubernetes específicamente, llega un punto en el que actualmente hay muy poco conocimiento profundo y bueno sobre Kubernetes en el mercado. Y Kubernetes es un constructor tan gigantesco que si lo contratas para una empresa, prepárate para llevar contigo a un ingeniero que hará todo esto a tiempo completo. Y es caro. Y trate de encontrar un ingeniero así nuevamente. Si hablo de mí, realmente no me gustan las soluciones en la nube porque tengo un conocimiento bastante bueno y profundo de cómo funciona Kubernetes. Y a menudo en las nubes simplemente me faltan algunas funciones que solicito, pero me dicen "No, no puedes". Bueno, en ese caso, lo siento, pero puedo hacerlo mejor que Cloud. Pero al mismo tiempo, si no tienes un ingeniero a tiempo completo, no quieres pagarle a este ingeniero que ejecuta Kubernetes y constantemente le pagas mucho dinero solo para que experimente, entonces la nube es simplemente una buena, gran solución. Porque al menos hay chicos que el proveedor ya ha contratado. Y saben lo que hacen. Y esas cosas básicas que necesitas a diario están ahí.

Azat Khadiev: ¿Qué opinas sobre el estado actual de Kubernetes? ¿Qué pasará con él dentro de cinco y diez años?

Pavel Selivanov: Buena pregunta. Solo sé lo que está pasando en nuestra comunidad con respecto a esto. Algunas personas creen que no quedará nada excepto Kubernetes. La situación que ocurrió con Linux hace mucho tiempo. Es decir, fuera de Linux Hay personas que viven en BSD, lo más probable es que tengan tareas muy específicas. Hay personas que trabajan bajo Windows — Servidores Windows — es muy probable que también tengan tareas específicas, o simplemente tienen experiencia en esta área y no están listos para alejarse de ella. En cualquier caso, el estándar en nuestra industria es LinuxExiste la percepción de que Kubernetes se convertirá en el estándar de facto y que no existirá nada más. Kubernetes gestionará no solo las aplicaciones, su despliegue y escalado, sino todo. Ahora la gente pregunta: "¿Es posible poner una base de datos en Kubernetes?". Suelo responder que el problema no es Kubernetes, sino Docker. Si estás listo para que tu base de datos se ejecute en contenedores, ¿cómo funcionará? Me dicen: "No, no, no, espera. No necesitas contenedores. Necesitas Kubernetes. Lo integraremos al nodo. Así que todo seguirá igual que ahora, solo que Kubernetes lo gestionará todo". Y esa es una muy buena idea. Entonces, Kubernetes es el tipo de herramienta que permite que, si una empresa ya cuenta con Kubernetes y sus procesos se basan en él, alguien que lo entienda pueda dedicar un par de días a trabajar con él y decir: "Estoy listo para brindarles soporte completo. Entiendo cómo funciona todo para ustedes". A diferencia de los enfoques sin Kubernetes, donde se han añadido soluciones improvisadas, una tras otra. Aquí está Ansible, aquí está Terraform. Alguien escribió todo esto, y se necesitan seis meses para entenderlo. Así que no sé si Kubernetes se convertirá en el estándar de facto. Actualmente, se ve mucho más ambicioso y seguro que las soluciones que lo rodean.

Azat Khadiev: Bueno, en comparación con Linux Es bastante audaz. Se ejecuta en una sola máquina, y nada más. Pero Kubernetes se ejecuta en muchas máquinas. Surgen de inmediato un sinfín de variaciones y razones. Sí, es audaz. Pero consideremos que este paradigma tiene competidores. Por ejemplo, Serverless. ¿Corre peligro Kubernetes ante la competencia de estas tecnologías?

Pavel Selivanov: De Serverless... (risas) Serverless: todavía entendemos que servidor Al fin y al cabo, sí los hay. Hace poco escuché un informe sobre esto. El tipo dijo que, después de todo, hay servidores, y eso es la nube. Pero siempre debemos entender que la nube también tiene servidores. Hay servidores físicos reales, un rack, y están instalados en algún lugar. Eso es la nube. Además, existe la tecnología sin servidor, donde... servidores "No." Entonces, la pregunta es: ¿Serverless superará a Kubernetes? Creo que Serverless migrará a Kubernetes. Para los proveedores que ofrecen Serverless, Kubernetes es una plataforma muy conveniente. Sí, quizás en algún momento dejemos de hablar de Kubernetes como herramienta estándar para el desarrollo de aplicaciones empresariales. Pero en el fondo, los proveedores e ingenieros contarán con Kubernetes, donde se implementará todo esto.

Azat Khadiev: Un tema ligeramente diferente. Existe un ingeniero full-stack. ¿Qué piensas de ellos? ¿Existen siquiera?

Pavel Selivanov: Um... Ingeniero Fullstack... Bueno, me parece que vale la pena distinguir entre estas cosas que... Ya sabes, existen las personas en forma de T. ¿Se necesitan personas así en la industria actual? Sí, definitivamente lo necesitamos. Necesitamos personas que tengan una perspectiva amplia, pero que al mismo tiempo sean especialistas en un campo limitado. Y aquí el ingeniero Fullstack es el mismo: una persona que hace de todo. Comenzando desde el desarrollo front-end, pruebas, back-end, servidores y todo lo demás. No creo que en una gran empresa una sola persona pueda hacer esto sin tener una especialización limitada en cada uno de los parámetros. Pero al mismo tiempo, simplemente teniendo una especialización limitada, como lo que sucede en torno a esto, no sé nada; esto tampoco funciona en el mundo moderno. Es decir, aquí yo diría… descartaría la palabra Fullstack. Realmente necesitamos ingenieros. Necesitamos DevOps. Tengo la sensación de que reconsideraremos este momento pronto. Y no serán necesarios.

Azat Khadiev: ¿Puedes revelarlo?

Pavel Selivanov: Me parece que en la industria llegaremos a la conclusión de que estos roles de desarrollo y operaciones pronto desaparecerán. Si necesitamos especialistas y estamos cazando... Necesitamos tal o cual desarrollador, necesitamos tal o cual administrador, necesitamos ingenieros de DevOps - ahora los tenemos, ahora también tendremos ingenieros de producción, ingenieros de SRE. Aunque en realidad lo que necesitamos son ingenieros que queramos contratar. Los antecedentes en general no son importantes. Porque... Por ejemplo, la SRE dice que los problemas de infraestructura siempre son problemas de software. Entonces... Tomemos a los desarrolladores, desde el punto de vista de que un desarrollador es un ingeniero, colóquelos en el departamento de mantenimiento y resolverán estos problemas de la misma manera que resuelven problemas comerciales con la ayuda del código, con la ayuda de la ingeniería como tal.

Azat Khadiev: Y desde este punto de vista... ¿Cómo entrevistar a estos ingenieros?

Pavel Selivanov: Oh, esa es una buena pregunta. Probablemente está más allá de mi comprensión de este mundo. Pero solo daré un ejemplo. No tiene nada que ver con la entrevista. Se trata de nuestro sistema educativo en Rusia. En TI, sabemos que nuestro sistema educativo en Rusia está muy desactualizado para el mundo de la TI; no es lo que debería ser. Estoy hablando de la vasta Rusia, en promedio, y de lo que está sucediendo allí. Hay personas que se gradúan que no están en absoluto preparadas para entrar en el desarrollo web o en una empresa tecnológica al día siguiente de graduarse. Y piensan que eso es malo. Les estamos enseñando algunas cosas extrañas, aunque deberíamos estar enseñándoles a desarrollarlas para Android, para iOS, cómo usar Git y todo eso. En realidad, parece que no. La universidad es un momento en el que tus padres pagan la mayor parte de tu educación. Para toda tu vida. Y puedes dedicar cinco años de tu vida al estudio profundo. Y a aprender todo este tema en forma de T. Cuando puedes estudiar en la universidad qué es un sistema de control de versiones, qué patrones de desarrollo hay, cómo probar todo esto, qué bases de datos y balanceadores de carga hay. Y cuando vas a trabajar, empiezas a profundizar en un área específica. Y así es como obtenemos ingenieros. Y nuestro sistema educativo en Rusia está mucho más cerca de esta verdad de lo que pensamos. Nos dan una buena formación matemática, una buena formación algorítmica, nos dan cierta comprensión de los lenguajes de programación. Y sobre las entrevistas, creo que algo parecido a esto. Necesitamos entrevistar ingenieros. Necesitamos la parte superior de la T en un estudiante en forma de T. Porque adquirirá la línea vertical de la T.

Azat Khadiev: Sí, interesante. Cinco años después de la universidad, me pareció que mi educación era algo extraña e inadecuada. Y luego, a medida que avanzaba el trabajo, cuando las tareas se hacían más profundas, los proyectos se hacían más grandes, me di cuenta de que no, me enseñaron cosas muy importantes. Pablo, gracias. Fue muy interesante escuchar sus respuestas. Escuchemos su informe.

Pavel Selivanov: Gracias.

Fuente: habr.com

Compre alojamiento confiable para sitios con protección DDoS, servidores VPS VDS 🔥 Compra alojamiento web fiable con protección DDoS, servidores VPS VDS | ProHoster