Decodificación:
Azat Khadiev: Hola. Me llamo Azat Khadiev. Soy desarrollador de PaaS en Mail.ru Cloud Solutions. Pavel Selivanov de Southbridge está aquí conmigo. Estamos en la conferencia DevOpsDays. Él hará una presentación aquí donde puedes construir DevOps con Kubernetes, pero lo más probable es que no tengas éxito. ¿Por qué un tema tan sombrío?
Pavel Selivanov: Ella no es realmente sombría. Se trata de tratar de resolver muchos problemas en nuestra comunidad con la ayuda de la tecnología. Y, además, estamos tratando de resolver con la ayuda de la tecnología de manera unilateral. Kubenetes es lo mismo: esto es de lo que es responsable, se puede decir que Ops. Pero tenemos un gran concepto de ingeniero DevOps. Kubernetes es responsable del ingeniero DevOps. Al mismo tiempo ... Como, harás a Kubernetes, y los muchachos de Dev no conocen todos estos Kubernetes, no saben lo que puede hacer, y todo vive igual para ellos. Y esto a pesar del hecho de que Kubernetes contiene soluciones listas para usar, herramientas listas para extender este enfoque de DevOps, comunicación entre Dev y Ops utilizando esta tecnología. Utilizamos esta oportunidad muy poco. Debido al hecho de que incluso transferimos las estructuras actuales a todas estas herramientas de DevOps (Docker, Kubernetes, nubes, etc.), exacerbamos esta situación aún más. Y las herramientas comienzan a usarse no como se pretendían. Y alrededor de todas estas tecnologías, se construyen muletas terribles.
Azat Khadiev: Ya veo. Uno siente que el tema es vasto. ¿Cuál crees que es el problema más común para las empresas ahora? Con kubernetes.
Pavel Selivanov: Con Kubernetes, el problema más común es la falta de competencias. En TI, este es un problema común. Siempre no hay suficientes especialistas. Siempre hay una falta de competencias. Y ahora Kubernetes carece de competencias. Y si bien todavía se trata de soluciones 100% listas para usar en el mercado que permitirían a Kubernetes obtener una, pero no tienen las competencias necesarias, francamente hay pocas en el mercado. Y los que son, todos plantean algún tipo de preguntas. Constantemente con Kubernetes buscamos personas que entiendan esto. Estamos tratando de impulsar el desarrollo debajo de él.
Azat Khadiev: Y dada la actual escasez de personal en TI. Que siempre ha sido. Y ahora lo hay. ¿Qué piensas, cómo vivir en estas condiciones? ¿Qué son los trucos de la vida?
Pavel Selivanov: Life hacks. En primer lugar, desde el punto de vista de las nubes, un truco de vida se ve así, y permítanos darle parte de sus competencias. Y los tomaremos para nosotros. Y haremos esto dentro de nosotros mismos. Y eso está todo bien. Excepto por lo que es importante entender para quienes lo usan ... En realidad, este es un momento maravilloso ... Pero es importante entender que si le das parte de tus competencias a una nube o un proveedor en algún lugar, obtenemos una solución universal. En términos generales, tenemos una base de datos que realiza cosas muy específicas, y fue configurada de manera muy específica. Al enviar esta base de datos a la nube, por supuesto, podemos despedir al administrador, que solía tratar con clústeres de bases de datos, lo mismo Amazon o Google lo harán por nosotros. Pero al mismo tiempo, el mismo Amazon o Google no nos permitirán configurar claramente nuestra base de datos. Grandes proyectos, grandes empresas: en cualquier caso, llegan al punto de utilizar soluciones en la nube en algún momento de sus vidas, y luego, en cualquier caso, vuelven a tomar competencias de nuevo, porque se requiere más especificidad.
Azat Khadiev: Soluciones universales: ¿es malo o se puede construir más sobre su base?
Pavel Selivanov: No, las soluciones universales definitivamente no son malas. Las soluciones universales son buenas. Solo soluciones universales ... universales. Es importante entenderlo. Esta es la forma de tomar una secuencia de comandos común ... Si está rodeado de esta secuencia de comandos común, aplicación general, puede construir todo, toda la lógica de la empresa, entonces esto es genial. Y si la lógica del trabajo es diferente, pero tomas esta solución universal, el guión universal, y comienzas, como tirar una lechuza en un globo, es malo. Pero en el universalismo en sí no hay nada malo.
Azat Khadiev: Si este administrador ya trabaja para ti, el punto no está en su despido. Él solo puede hacer más.
Pavel Selivanov: Sí, quitarle la rutina, dárselos a alguien para que se hagan allí. Este es definitivamente un buen enfoque. El punto importante aquí es si esta solución estándar se ajusta a un caso específico.
Azat Khadiev: Basándome en mi experiencia, veo que muchas compañías están haciendo lo mismo. Establecieron un grupo de kubernetes, piensen en escalarlo. Y todas estas operaciones son muy repetibles.
Pavel Selivanov: Sí, por supuesto. Además, si tomamos Kubernetes específicamente, hay un punto tal que actualmente hay muy poco conocimiento del mercado sobre Kubernetes en el mercado. Y Kubernetes es un constructor tan gigante que si lo llevas a la compañía, prepárate para llevar a un ingeniero con él que hará todo esto a tiempo completo. Y es caro. Y trata de encontrar un ingeniero así. Si hablo conmigo mismo, realmente no me gusta algún tipo de decisión turbia, porque tengo una comprensión bastante buena y profunda de cómo funciona Kubernetes. Y a menudo en las nubes solo falta algún tipo de funcionalidad que solicito, y me dicen "No, no puedes". Bueno, lo siento, pero puedo hacerlo mejor que en la nube. Pero al mismo tiempo, si no tienes un ingeniero a tiempo completo, no quieres pagar por este ingeniero que tira de Kubernetes, y constantemente le pagas mucho dinero solo para experimentar, entonces la nube es una buena solución. Porque al menos hay tipos que el proveedor ya ha cazado. Y entienden lo que hacen. Y esas cosas básicas que necesita a diario están ahí.
Azat Khadiev: ¿Qué opinas sobre el estado actual de Kubernetes? ¿Qué le pasará en cinco y diez años?
Pavel Selivanov: Buena pregunta. Solo sé lo que está sucediendo en la comunidad sobre esto. Algunas personas creen que no quedará nada excepto Kubernetes. La situación que ha sucedido durante mucho tiempo con Linux. 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 en Windows, servidores de Windows, muy probablemente, también tienen tareas específicas, o simplemente hay competencia en este asunto y no están listas para salir de allí. En cualquier caso, el estándar en nuestro campo es Linux. Existe la opinión de que Kubernetes se convertirá en el mismo estándar de facto, y no habrá nada más que Kubernetes. Kubernetes administrará no solo las aplicaciones, su implementación, implementación y escalamiento. Generalmente maneja todo. Ahora preguntan: "¿Es posible crear una base de datos en Kubernetes?" Normalmente digo que la pregunta no está en Kubernetes, sino en Docker. Si está listo para que su base de datos funcione en contenedores, cómo funcionará. Me responden: “No, no, no, espera. No hay necesidad de contenedores. Necesito a Kubernetes. Lo venceremos al nodo. Es decir, todo será como lo hemos hecho ahora, solo Kubernetes se encargará de todo ”. Y esta es realmente una buena idea. Es decir, Kubernetes es algo así cuando puedes unirte a una empresa, si la empresa tiene Kubernetes y procesos construidos sobre ella, entonces, para una persona que entiende esto, solo necesita ver un par de días para decir: “Estoy listo para apoyarte. Completamente Entero Comprendí cómo te funciona. A diferencia de los enfoques sin Kubernetes, algunas muletas estaban abarrotadas aquí, otras eran muletas. Aquí Ansible, aquí Terraform. Alguien escribió todo esto, y lleva seis meses resolverlo. Aquí Entonces, si Kubernetes se convertirá en el estándar de facto, no lo sé. Hoy se ve mucho más ambicioso y más seguro que las decisiones que lo rodean.
Azat Khadiev: Bueno, la comparación con Linux es bastante audaz. Trabaja en una máquina, y eso es todo. Y Kubernetes funciona en muchas máquinas. Inmediatamente hay un millón de variaciones, razones. Sí, es audaz. Justo cuando consideras que hay competidores en este paradigma. Por ejemplo, sin servidor. ¿Kubernetes está en riesgo con tales competidores?
Pavel Selivanov: De Serverless ... (risas) Serverless: todos entendemos que todavía hay servidores. Recientemente escuché un informe sobre este tema. Allí, un hombre dijo que todavía hay servidores, y esta es la nube. Pero siempre debemos entender que la nube, también hay un servidor allí. Hay servidores de hierro reales, un bastidor, y aquí están instalados en algún lugar. Esto es una nube Además de esto, hay Serverless, donde no hay servidores. Entonces, la pregunta es si Serveruber Kubernetes ganará. Me parece que Serverless se irá a Kubernetes. Para los proveedores que proporcionan Serverless, Kubernetes es una plataforma muy conveniente para proporcionar esto. Sí, quizás en algún momento dejemos de hablar de Kubernetes en principio, como un desarrollo ordinario de aplicaciones comerciales. Pero en algún lugar de las profundidades, los proveedores e ingenieros tendrán Kubernetes, donde se implementará todo esto.
Azat Khadiev: Un tema ligeramente diferente. Existe el concepto de ingeniero fullstack. ¿Qué opinas de ellos? ¿Incluso existen?
Pavel Selivanov: Um ... Ingeniero Fullstack ... Bueno, me parece que vale la pena distinguir entre estas cosas que ... Ya sabes, existe algo así como las personas en forma de T. ¿Son necesarias esas personas en la industria actual? Sí, absolutamente necesario. Necesitamos personas que tengan amplios horizontes, pero al mismo tiempo son especialistas en algún campo estrecho. Y aquí el ingeniero Fullstack es el mismo: la persona que hace todo. Comenzando desde el desarrollo frontend, pruebas, backend, servidores y todo lo demás. No creo que en una gran empresa una persona pueda hacer esto sin tener especializaciones estrechas para cada uno de los parámetros. Pero al mismo tiempo, simplemente teniendo una especialización estrecha, como lo que está sucediendo alrededor de esto, no sé nada; esto tampoco funciona en el mundo moderno. Es decir, aquí diría ... dejaría caer la palabra Fullstack. Necesitamos mucho ingenieros. Necesitamos DevOps. Siento que pronto reconsideraremos este momento. 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 Dev y Ops, pronto desaparecerán. Si necesitamos especialistas y buscamos ... Necesitamos un desarrollador tal y tal, necesitamos administradores tal y tal, necesitamos ingenieros de DevOps: ahora los tenemos, ahora habrá ingenieros de producción, ingenieros de SRE. Aunque en realidad lo que necesitamos son los ingenieros que queremos contratar. En general, el fondo no es importante. Porque ... Por ejemplo, SRE dice que siempre tienen problemas de infraestructura. Y qué ... Tomemos a los desarrolladores, desde el punto de vista de que el desarrollador es un ingeniero, póngalos en el departamento de soporte y resolverán estos problemas de la misma manera que resuelven problemas comerciales usando código, usando ingeniería como tal.
Azat Khadiev: Y desde este punto de vista ... ¿Cómo entrevistar a tales ingenieros?
Pavel Selivanov: Oh, una buena pregunta. Probablemente ya está más allá de lo que entiendo en esta vida. Pero solo daría 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 para el mundo de TI está muy desactualizado, no es lo que debería ser. Hablo en promedio sobre Rusia inmensa, y lo que sucede allí. Las personas que no están listas para ir mañana después de la graduación van al desarrollo web, a una empresa de tecnología. Y es algo malo. Les enseñamos algunas cosas extrañas, aunque deberíamos enseñarnos a desarrollarlas para Android, iOS, cómo usar Git y todas estas cosas. De hecho, como si no. Un instituto es un momento en el que tus padres en su mayoría pagan por ti. Por toda tu vida. Y puedes dedicar cinco años de tu vida a estudiar en profundidad. Y aprende todo esto en forma de T. ¿Cuándo puede estudiar en el instituto qué es un sistema de control de versiones, qué patrones de desarrollo son, cómo probar todo esto, qué bases de datos, equilibradores son? Y cuando ya va a trabajar, comienza a profundizar en un área específica. Y entonces tenemos ingenieros. Y ahora nuestro sistema educativo en Rusia está mucho más cerca de esta verdad de lo que nos parece. Nos dan un buen entrenamiento matemático, un buen entrenamiento algorítmico, nos dan una idea de los lenguajes de programación. Y sobre la entrevista, me parece algo parecido a esto. Necesitamos entrevistar a los ingenieros. Necesitamos la parte superior de la letra T para la forma de T. Porque la línea vertical de la letra T la obtiene.
Azat Khadiev: Sí, interesante. Cinco años después de la universidad, me pareció que mi educación era de alguna manera extraña e inadecuada. Y luego, en el curso del trabajo, cuando las tareas se hicieron más profundas, los proyectos fueron más grandes, me di cuenta de que no, me enseñaron cosas muy importantes. Paul, gracias. Fue muy interesante escuchar tus respuestas. Escucha tu informe.
Pavel Selivanov: Gracias.