 So, basically yeah, this is a production problem, it happens. So, basically today I am going to discuss about how you can scale your Kubernetes in a serverless mode, how you can implement it and I will do a demo of that as well. And when I say serverless, it means that how you can scale your applications and into an infinite mode, there is a lot of traffic coming into your system, how you can scale your applications and also scale down pretty fast, right? So, that's how serverless is all about and how you can implement that serverless into your Kubernetes, okay? So, it will be my first part and I am going to talk about some of the use cases of virtual Cubelets. So, basically the how you can extend the Kubernetes workloads to different services, like one of the services is IoT edge computing deployments, okay? So, about me, I worked in bunch of companies, I was at IBM, so I was a software developer there and I did some of the solution in architecting at HCL and worked in BlackBurg at my own startup and I was also a senior developer advocate for digital ocean and now currently working with Microsoft Azure as a senior product marketing manager and that's the picture, you know, most of, you know, previously when I used to go for an interview, people used to ask, are you hands on production, right? So, that's the picture, I usually saw them, I was really hands on and I was pulling the wires, right? So, yeah, cool. So, the basic of a virtual Cubelets, even before I get deep dive into virtual Cubelets, I just want to introduce to you, you know, how exactly Kubernetes work, how many of you know how exactly Kubernetes work? Come on guys, there were a bunch of talks on Kubernetes, okay? So, this, and I'll just introduce you how exactly Kubernetes work. So, there is a controller. So, if you see the controller, you, as a user, you submit a state. So, you design a YAML file, you as a user defined states and you define it and you submit it to the API server of Kubernetes, which is on the master and there is obviously a scheduler and a control manager, which actually does the scheduling of the pods which you have submitted. And this is the work on nodes and through Cubelets, the API server connects to the Cubelets and it actually schedules those pods and container gets kicked in. And there is a Q proxy and other tough and and that's how you can access the your applications in in in the virtual node in the virtual world, right? So you put up the complete applications into the, you know, in these nodes and you can access the application through these nodes, right? So this is how a Kubernetes works. And I'd say very simple. Most of you know how exactly it is working. So, take a look at the Cubelet. So, the Cubelet job is to implement the pods. And you know, it also manages the container operations. So that is the job of the Cubelet, right? So imagine there's certain things which it does. These are the things which a Cubelet has it's in function capability. That is, it creates a pod, it updates the pod, it deletes pods, and it also does some container operations like pulling images and other things with containers. So basically this is the Cubelet functionality. Okay, so if you virtualize this Cubel just functionality, what what is the capabilities you can think of, right? So let's, let's see this. This is where the communities API's are, which is the master. And you have certain nodes and you know, basically what is a virtual Cubelet, you have nodes and it acts as a one of the node. So basically virtual Cubelet registers itself as a node. So imagine, you have certain nodes and you have a traffic coming to your system. And there is pods been created into these Cubelets. And now you need to scale at this point where there's a lot of traffic onto your system and you need to scale at this point. And this scaling will happen with the virtual Cubelet. So you are also horizontally pod scaler. You're using horizontal pod scalers here. And you're also using container at the back end. So you're not creating a new node, but you are actually, you know, connecting a container instance service, which you can, you know, which way where you can deploy these pods and containers onto the virtual Cubelets. So what exactly happens on virtual Cubelets? It's basically implementing the pod. That means there is a pod description, which you have created and you have added onto the Cubelets. And this is actually deployed to the virtual Cubelet. And there is a container operations, which has been taken care at the Cubelet level. And not all operations of Cubelet is available on virtual Cubelets. Okay, so there is it does certain operations that is the creating a pod, updating a pod and, you know, pods, you know, getting the pod status and, you know, doing some of the operations of the pod, but not all the operations of a Cubelet is available on the virtual Cubelet. So let's take an example. Okay. So you have deployed a microservice application on a cluster in a Kubernetes cluster. And you have certain microservices. And from these microservices needs to be scaled. And there's a lot of traffic which is coming to this microservices. And you need to scale this right. So you what what is the action you take today is you go ahead and create new servers, new nodes, and attach these nodes to the Kubernetes. And then, you know, the pods gets created onto the new nodes. And that's how you scale our you scale through pods, horizontal pods, that is just scaling the pods, creating on these nodes, which you already have. But at the end of the day, if that is also not enough, you have to scale the, you know, the pods, the nodes itself, right? So the scaling of nodes, you know, it takes a lot of effort, right? So it takes time, and it's costly, it's over provisioning also, right? So if you want to scale only 10 pods, and you don't have a space in your existing nodes, you have to create some extra nodes for that. And it's a cost for you, right? So to solve this problem. So there is a virtual Kubelet was introduced. So what you know that what you what you know is Azure implementation of what you'll do this but what you'll Kubelets was introduced here. And it's a connector. So basically, it's Azure container instance. So it's basically I'm using Azure, but you can use it your own way, you can create your own provider for this, and you can use it in your own implementation and your own clusters, you can install it on your own clusters. So when the scale is happening, right, the pods gets created in the container instances. So you're just connect creating a connector. So let me go back to the previous slide where this is the one it gets registered, the virtual gets registered as a node. And when the scale is happening, the pods gets uses this virtual Kubelet as a connector to, you know, connect to the container services. Okay, so this is how it exactly working. And that's how you build a serverless and into your communities, right? So there is another traffic, the traffic is has to be managed. And you know it to manage the cost. There's a, you know, you add that pods onto the container instance and it creates and it's an infinite number of parts you can create. Okay, infinite number of parts. That means your application is always scaling and your application is never down. Okay, so that's the, that's the virtual Kubelets introduction to what you'll give us. Okay, this is how it exactly scales. So it's basically open source project. It is nothing but, you know, API, you know, a communities API for a serverless container platform. So you're just building a communities, you have a community cluster and you're building a serverless instance for that. And now for that cluster, it's a CNCF project as well. So it's, it's not with Microsoft anymore. So it's also been handed over to the CNCF. So CNCF is managing this project. Okay, so as of today, I showed you the previous slide, there were certain operations which Kubelet had, right? There were certain operations. Kubelet was managing. And as of today, this is, this is the snapshot of what virtual Cubelets can manage. Not everything which was available, which is available on the Cubelets is available in the virtual Cubelets. Okay, there are certain functions it can't handle. Okay, so some of the use cases, as I told you, one of the use cases always burst scenarios where there's a lot of traffic, you create a connector and you, you know, just spin up pods in, in the container instances. So you are still, you know, your application is always on, your application is always running and you can manage the scale of your application and you're paying for consumption. And once the traffic is down, it gets deleted. So it's, it's like you're only paying for the consumption and it's, it's pretty scalable. It starts within seconds. So you don't have to wait for the nodes to come up and other things. Okay. So this is the example of the IOT Edge deployment. So this is a simple example of how you can use virtual nodes into your IOT Edge system. That is, say for example, I want to start a car through mobile phone. And I have deployed some of the IOT systems at the, my car where I want to connect to that and it's running a container instance. And I want to run some pod on that IOT Edge level. Right. So that's, that's the use cases. And if you can think about a lot of use cases with virtual cubelets. So there's so many use cases coming out through, through innovations in various areas. Okay. So you can, as I told you, right, you can extend this virtual cubelet into various services. So you just have a Kubernetes, you can connect to different, different service providers. You can connect to different services, which is there. You can connect to your own IOT service. You can connect to different, you can just do a click to order pizzas and other stuff. Right. So there is a lot, lot more innovation coming in these areas. Okay. So let me do a demo. You will understand how exactly it works. So how exactly the burst scenario, which I talked about, let me go through this demo. Okay. So I have set up a website. So it's all running on Kubernetes as of now. And this is a simple website, which has some, some products to buy. Okay. So you want to buy these products. And that is, you did a marketing campaign and there is a lot of traffic coming to your site today. And how do you do that? And so how, how you can see the, you know, how we can scale Kubernetes applications using the virtual cubelet. That's what I'm going to show you a demo. So here you can see there is no containers. It is the container instance of Azure. There is no containers available as of now. So there is no containers has been created. So when I do a burst to this particular server, so you can see there is a virtual node which has been attached. Okay. I've already set up the service so that I can do the demo. So then you can see, there's some issue with my network. I will do this. We show you all the parts which is running. So these are the parts which is running. And let me run a go. I don't know what's wrong with my internet. Okay. I've just started to create some, oops, this is going to get closed. Okay. I hope it runs. No. Yeah, that's the only, it's okay. I have the video. I can show you the number since it's not working. Oh, I missed the source. Okay. So where we are logging into another's terminal. And I'm just showing you what happens with the HPC. That's not possible. So I've just generated an out 20 lane request. And you basically you can see there is some request which has been created now. Right. So there is a, I'm just getting the, there's some request being created. Okay. So let me see here whether we can show something. Okay. So this is where the container instances. So I generated a 20 million request concurrent request to the my application. And you can see that, you know, there's a lot of containers being created. Okay. So, you know, it's pretty, you know, fast to get to this level, right? So there is no new node created. And there is no much, you know, you know, there is no much hassle. So it's just that I've just set up my YAML file into that, you know, to make sure that there is a, if there is a toleration, if there is some set of request which is coming into your system, you just create more containers using the connectors. And this through these connectors, these pods gets, gets initiated into the containers. So you can use this scenarios for scaling your applications. So and also, and these kinds of scenarios can be used in your, you know, the edge level as well with, I mean, this is a scaling part without scale part where you can want to orchestrate the IOT systems and other things you can use the virtual cubelets. Okay. So this is the system. This was the demo which I wanted to show you, see how exactly it actually, you know, spins of new containers with the, you know, burst which you create onto the system. Okay. So any questions that we know? So this node, as your node, you have added, is it the same way to add the node or it's any different than, you know, Yeah, it's the same way when you're creating an Azure community service, you can, there is a checkbox, whether you can, you want a virtual node, and you can even create a connector for Windows OS or the Linux OS. So if you have a pod, which you want to run on Windows, you can set it up. And can you show me that conflict? Have you, have you configured that, you know, label and selector for sending the ports on the virtual node, virtual, what was that, virtual node? You mean to say the selectors for this node? Yeah. So you need to, it's basically a concept called in, while you're setting, you're designing these virtual cubelets, you, the providers have to create something called as provider specifications life cycle to manage the life cycles of the pod. And that specifications, you need to add it into the provider specifications will be there. In that you need to create that specifications. So I'll show you the deployment file links. So this is the link where you can go, you can set up this whole demo. In fact, and you can also check out the docs if you want to. And there you can actually find how exactly you can do this stuff. Yeah. So, see, basically it's used in a different use cases, right? So it's like, if you want to scale the, as I told you, it doesn't do a lot of, a lot of things, which virtual cubelets, sorry, which cubelet does, right? So there is a virtual cubelet and there's a cubelet, right? So, uh, cubelet has, it manages volumes as well. Some places we don't do that in virtual cubelet. So there is a implementation issues. This is still in version 1.0. And there is a lot of things which is coming up on virtual cubelets itself. There's a new release was supposed to happen with a lot of it's kind of in development, maybe like, uh, yes, it's a, it's basically, uh, uh, it's in a, it's in a development phase, right? So it's not even graduated as a CNC project. So it's there, but there's a lot of use cases, which is coming out of, uh, virtual cubelets. So as I told you, right? It's, it's, it's more like IOT, you as also one of the thing. And you can, you, you, for, if you have a service, like order a pizza, you have a service, right? You, you can actually use these servers, uh, virtual cubelets with your communities. And any limitation for scaling? Yeah. Sorry. What's the limit for scaling? There's no limit. So there's video. We have not put a bracket. Uh, I don't think any provider has put a bracket for this. So you can create as many parts as you want. Thank you. But at the end of the day, it all uses the back, uh, CPUs and memories and other stuff, right? So at some point, they will definitely come back and tell you that you have to stop growing.