Is Kubernetes the new Linux? An interview with Pavel Selivanov

Play video

Transcript:
Azat Khadieiv: Hello. My name is Azat Khadieiv. I am a developer in the PaaS direction at Mail.ru Cloud Solutions. Here with me is Pavel Selivanov from Southbridge. We are at the DevOpsDays conference. He will be presenting on how Kubernetes can be used to build DevOps, but you probably won't succeed. Why such a gloomy topic?

Pavel Selivanov: It's actually not gloomy. It's about how many problems in our community we try to solve using technology. Moreover, we tend to solve them in a quite one-sided way using technology. Kubernetes, for example, is something that is primarily managed by Ops. But we have a wonderful concept of a DevOps engineer. The responsibility for Kubernetes lies with the DevOps engineer. At the same time... It’s like you make Kubernetes, while the Dev guys are completely unaware of all these Kubernetes matters, unaware of what it enables—life goes on for them just the same. This is despite the fact that Kubernetes contains ready-made solutions, ready-made tools to extend the DevOps approach and communication between Dev and Ops. We use this potential very little. By translating our current structures to all these DevOps tools—Docker, Kubernetes, clouds, and so on—we exacerbate the situation even further. And we start using the tools not as they were intended. Around all these technologies, terrible workarounds are being built.

Azat Khadieiv: I see. It’s clear that the topic is extensive. What do you think is the most common problem companies face now regarding Kubernetes?

Pavel Selivanov: The most common problem with Kubernetes is the lack of competencies. This is a widespread issue in IT. There are always not enough specialists. Competencies are always lacking. And right now, there is a shortage of competencies specifically in Kubernetes. Moreover, there are very few ready-made solutions on the market that would allow you to leverage Kubernetes without having the necessary competencies, and the ones that do exist raise a lot of questions. Constantly, we are in search of people who understand Kubernetes. We are trying to adjust our development to accommodate it.

Azat Khadiev: Considering the current talent shortage in IT, which has always existed and still persists, how do you think one can navigate these conditions? What are the life hacks?

Pavel Selivanov: Life hacks. First of all, from the perspective of the cloud, a life hack looks like this — why don’t you delegate some of your competencies to us? We will take them on and handle them internally. That sounds great. Except, it’s important for users to understand… Actually, it’s a wonderful moment… But it’s crucial to realize that when you delegate some of your competencies to the cloud or a provider, what you receive in return is a standardized solution. Broadly speaking, if we have a database that performs very specific tasks, it's finely tuned. When we move this database to the cloud, indeed we can let go of the administrator who previously managed the database clusters — companies like Amazon or Google will do that for us. However, those same Amazon or Google won’t allow us to finely tune our database. Large projects, big companies — they invariably come to a point in their journey where they use cloud solutions, and then they return to reclaim their competencies because a more specific approach is needed.

Azat Khadiev: Are universal solutions bad, or can more be built on that foundation?

Pavel Selivanov: No, universal solutions are definitely not bad. Universal solutions are good. They are simply universal. It’s important to understand this. It’s like taking a general script… If you can build the entire logic of your company around this general script, its general applicability — that’s great. But if the logic is different and you take this universal solution, this universal script — and start forcing it where it doesn’t fit, that’s bad. There’s nothing wrong with universalism itself.

Azat Khadiev: If you already have that admin on board, it’s not just about firing them. They will simply be able to accomplish more.

Pavel Selivanov: Yes, taking routine tasks off their plate to delegate them elsewhere is certainly a good approach. The key point is whether this standard solution fits the specific case.

Azat Khadiev: From my experience, I see that many companies are doing the same thing. They set up a Kubernetes cluster and think about scaling it. All of these operations are very repetitive.

Pavel Selivanov: Yes, absolutely. Especially considering that if we take Kubernetes specifically, there is a point that there are really few deep, good skills available in the market right now. Kubernetes is such a massive construct that if you bring it into a company, be prepared to hire an engineer who will work full-time to manage all of it. And that's costly. Plus, finding such an engineer is a challenge. Speaking for myself, I don't particularly like cloud solutions because I understand quite well how Kubernetes works. Often, I find that in the cloud, there's a lack of some functionality I request — and I’m told, 'No, that's not possible.' In such cases, I’m sorry, but I can do better than the cloud. However, if you don't have a full-time engineer, and you don't want to pay for that engineer who manages Kubernetes, and you’re constantly paying a lot just for them to experiment, then cloud is simply a good solution. Because at least there are people there whom the provider has already hired. And they know what they are doing. And the basic things you need on a daily basis are already there.

Azat Khadiev: What do you think about the current state of Kubernetes? What will happen to it in five or ten years?

Pavel Selivanov: That's a good question. I just know what is happening in our community regarding this. Some people believe that nothing will remain besides Kubernetes. It's like the situation that occurred a long time ago with Linux. There are people who are living on BSD outside of Linux, likely with very specific tasks. There are those who work with Windows—Windows servers—who probably also have specific needs, or they just have the expertise in that area and are not willing to leave. In any case, the standard in our field is Linux. There is an opinion that Kubernetes will become the same de facto standard, and nothing will exist besides Kubernetes. Kubernetes will manage not only applications, their deployment, and scaling, but everything in general. They are already asking: "Can we put a database in Kubernetes?" I usually point out that the question isn't about Kubernetes, but about Docker. If you're ready to have your database running in containers, then how it will function is another story. They respond: "No, no, no, wait. We don't need containers. We need Kubernetes. We will connect it to a node. So everything will be as we have it now, only Kubernetes will manage it all." And that is actually a good idea. Kubernetes is the kind of thing where you can come into a company, and if the company has Kubernetes and processes built around it, then a person who understands it just needs to look for a couple of days to say: "I am ready to support you. Completely. Totally. I understand how everything works here." Unlike approaches without Kubernetes—here, some hacks have been shoved in, there are others. Here it's Ansible, there it's Terraform. Someone wrote all this, and it takes half a year to figure it out. So will Kubernetes become the de facto standard? I don't know. As of today, it looks much more ambitious and confident than the solutions surrounding it.

Azat Khadiev: Well, the comparison to Linux is quite bold. It operates on a single machine— that's it. But Kubernetes operates on many machines. Instantly, a million variations and reasons arise. Yes, it’s bold. Just considering that there are competitors to this paradigm. For example, Serverless. Is Kubernetes in danger with such competitors?

Pavel Selivanov: Regarding Serverless… (laughs) Serverless — we still understand that server there are indeed servers. I recently heard a talk on this topic. The speaker mentioned that servers still exist — and that’s the cloud. But we must always realize that within the cloud, there are also servers. Real physical servers are installed somewhere. That’s the cloud. On top of that exists Serverless, where servers there are "none." So the question is, will Serverless dominate Kubernetes? I believe that Serverless will move into Kubernetes. For providers offering Serverless, Kubernetes is a very convenient platform to deliver that. Yes, perhaps, at some point we will stop discussing Kubernetes in general, as a standard for business application development. But deep down, for providers and engineers, Kubernetes will be implemented, where all of this will take place.

Azat Khadiev: A slightly different topic. There’s a concept called fullstack engineer. What do you think about them? Do they actually exist?

Pavel Selivanov: Um… Fullstack engineer… Well, I think it’s important to distinguish these things… You know, there’s this thing called T-shaped people. Are such individuals needed in today’s industry? Yes, absolutely. We need people with a broad outlook who are also specialists in a specific area. And here, a Fullstack engineer is the same — a person who does everything. Starting from frontend development, testing, backend, servers, and everything else. I don’t believe that in a large company, a single person can handle this without narrow specializations in each parameter. But at the same time, just having a narrow specialization — like I don’t know anything around this — doesn’t work in the modern world either. So I would say… I would discard the term Fullstack. We really need engineers. We need DevOps. I feel we will soon reconsider this aspect. And they may not be needed.

Azat Khadiev: Can you elaborate?

Pavel Selivanov: I believe that in our industry, we will soon see the roles of Dev and Ops fade away. If we need specialists and we are hunting... We need developers like this, we need administrators like that, we need DevOps engineers — we have them now, and soon we will also have production engineers and SRE engineers. However, what we actually need are engineers whom we want to hire. Their background is not really important. Because... For example, SREs say that infrastructure problems are always software-related. So why not hire developers — viewing developers as engineers — placing them in the support department, and they will solve these problems just like they tackle business issues through code and engineering?

Azat Khadiyev: From this perspective... How do you interview such engineers?

Pavel Selivanov: Oh, that's a good question. It probably lies beyond what I understand in this life. But let me give you an example. It’s not related to the job interview. This is about our education system in Russia. In IT, we know that our educational system in Russia is very outdated for the IT world; it's not what it should be. I am speaking generally about the vastness of Russia — and what is happening there. Students graduate who are absolutely unprepared to step into web development or a technology company right after graduation. And that's a problem. We teach them some odd things, while we should be teaching them how to develop for Android, for iOS, how to use Git, and all that. In reality, it seems we aren’t. University is a time when mostly your parents pay for you. For your entire life. And you can dedicate five years of your life to study in-depth. You can learn all about T-shaped skills at university. You can study what a version control system is, what development patterns exist, how to test everything, what databases and load balancers are. When you start working, you begin to delve into a specific area. In this way, we produce engineers. And our education system in Russia is much closer to this truth than we realize. We are provided with good mathematical training, good algorithmic training, and some understanding of programming languages. And regarding the job interview, I think it’s something close to this. We need to interview engineers. We need that upper part of the letter T in T-shaped. Because they will acquire the vertical stroke of the T.

Azat Khadiev: Yes, interesting. For five years after university, I thought my education was somewhat strange and inadequate. But then, as I progressed in my work, with deeper tasks and larger projects, I realized, no, I was taught very important things. Pavel, thank you. It was very interesting to hear your answers. We will listen to your presentation.

Pavel Selivanov: Thank you.

Source: habr.com

Buy reliable website hosting with DDoS protection, VPS VDS servers šŸ”„ Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster