Do you really need Kubernetes anyways?

November 16, 2021

Duration: 42 min

So, Kubernetes is the ‘in’ thing for managing containers. It’s portable, scalable, and reliable. But just because it’s popular, doesn’t mean it’s right for you. There are many things to consider when pondering the jump to Kubernetes. There are lots of hidden costs like upskilling your staff and maintaining a baseline infrastructure that may or may not be prohibitive depending on your particular needs. For example, you need at least six nodes to have a redundant system. Costs like this add up. It certainly is not a slam dunk to adopt Kubernetes.


Join Kubernetes experts Tennis Smith and Salman Iqbal to discuss the reasons why you should or should NOT adopt Kubernetes.

– Do you really need high availability?
– What if your application is monolithic?
– Don’t forget the K8s learning curve
– Hidden costs
– Remember the complexities
– What happens if you opt for K8s, what then?

The discussion revolves around the pros and cons of adopting Kubernetes, a popular container orchestration tool. Here are the key points from the webinar:

  1. Kubernetes Overview: Kubernetes is a container orchestrator that manages containers at scale. It originated from Google and is now widely adopted as the de facto tool for container orchestration. It’s particularly useful for managing microservices.

  2. Benefits of Kubernetes:

    • High Availability & Scalability: Kubernetes is excellent at managing high availability and scalability. It can handle a sudden increase in volume and scale from a few containers to hundreds and back down as needed. It also ensures redundancy, with a basic Kubernetes cluster requiring at least six nodes for high availability.
    • Microservices: Kubernetes is adept at running microservices, allowing for efficient communication and management of these services.
    • Resource Utilization: If properly configured, Kubernetes can effectively utilize all resources, spreading traffic and load across all nodes.
    • Security: Kubernetes, when correctly configured, offers four layers of security, making it a reliable platform for sensitive applications like banking and finance.
    • Self-Healing: Kubernetes has self-healing capabilities. If a container crashes, Kubernetes can bring it back up, ensuring continuous operation.
    • Stateless Applications: Kubernetes is designed to handle stateless applications well, although it can also manage stateful applications.
    • Platform Agnostic: Kubernetes is platform-agnostic, meaning it can run on any platform, be it AWS, Azure, or GCP. This makes it a good choice for organizations that may need to switch platforms in the future.
  3. Considerations: Despite its benefits, adopting Kubernetes isn’t always the right choice for every organization. There are hidden costs associated with upskilling staff and maintaining infrastructure. It’s also important to consider whether high availability is necessary for your specific use case and whether your application is monolithic or microservices-based. The learning curve for Kubernetes and its complexities should also be taken into account.

The webinar emphasizes that while Kubernetes is a powerful tool, it’s not a universal solution and should be adopted only after careful consideration of an organization’s specific needs and capabilities.



    0:10 all right here we are again salmon 0:17 here we are we’re going to be talking about kubernetes again and absolutely whether or not you need 0:23 it and some uh bring up the graphic yes 0:28 and you really need it anyways as the the title goes and a couple of things for housekeeping 0:35 before we really dive into this is uh as we talking about it if you want to ask a question 0:42 that’s the i believe the uh the and this is the screen that you would see as you’re watching it 0:49 you go to the ask a question section and put in your question there and then 0:55 you send it with the now grayed out button down at the bottom but once you fill it in you see you’ll get the send a 1:01 question uh enabled um and [Music] 1:06 we’ve already done a couple of blogs that uh touch on these key points they’re going 1:12 to be talking about and we’ll send out later in the email the blogs that i’m 1:18 referring to and lastly there’s a feedback tab uh that you could use 1:23 on the session if you would like uh to hear from us um 1:28 and let’s see am i leaving anything else simon yeah i think that that feedback tab is conveniently named rate this time 1:36 oh that’s right if you click on the rate this tab on this on this uh on this image that you 1:41 see you’ll be able to leave your feedback you know we really appreciate your feedback what you want us to know more about or 1:46 less about what we’re doing right what we are doing right you know please please leave us some feedback we really appreciate it and yeah and as 1:53 tennis says uh leave us some questions if you’re of course in full screen mode you will not be able to see the screen 1:58 you just have to press escape and come back to the screen and ask your questions and then if 2:04 there’s any links that we share we’ll send out an email later on as tennis says and they might pop out in the details if we do at the announcements 2:11 they might come there no i think that’s that’s pretty much it you’ve covered everything you wanted to cover yeah now 2:16 in terms of the housekeeping now let’s introduce ourselves you want to go first salmon yeah absolutely my name is 2:23 salmanik ball and i am a lobster engineer solutions engineer at appiah i 2:29 have been working with kubernetes for the last three and a half three years or so 2:35 and every time i say does it doesn’t feel like it’s a long time but in kubernetes it does i feel like it’s 2:42 a long time and yeah i am actually a developer from my background and i have written 2:48 different industries aerospace and finance 2:54 banking whatnot and startups and currently with fba i work in a 3:00 number of projects where one of them is a few of them are taking machine learning workloads data science 3:06 workflows and running efficiently in the cloud using kubernetes or where it’s 3:11 appropriate not using kubernetes uh using removable cloud technologies and i am also an instructor with 3:17 kubernetes have done tons of training sessions with kubernetes all around the world 3:23 that’s me tennis and my name is tennis smith that’s tennis like the game yes it’s my real 3:28 name um send feedback and i’ll tell you how uh that’s true um the i’ve been this is 3:36 my 41st year in the business i started a long time ago i’m an old geezer see the gray 3:41 and i’ve done everything from run cables to install stuff just try to sell stuff to 3:47 code things and i was doing devops engineering for a long time and the last about like salmon i’ve been working with 3:54 kubernetes for about a little over three years and [Music] 3:59 worked all over the place so that’s that’s pretty much uh my background 4:05 absolutely absolutely so uh a little bit a little bit about our our company 4:10 perhaps maybe we should do a bit of plug here i thought no i don’t think it would be uh i think it might be 4:16 up here you can check us out we do a lot of work on kubernetes uh what what we say is you focus on day two 4:24 activities of kubernetes so um if you if you’d like to check us out we’ve got lots of expertise in-house in 4:31 terms of uh kubernetes we do also we also have a lot of maintainers for some of the famous kubernetes projects like 4:37 cops um yeah so check us out appear.i oh uh there’s a lot of information there’s 4:43 we’ve got tons of blogs as well for you to read up on on and we’ve got product 4:48 that you might want to have a look at but that’s uh that’s our that’s our company just a plug for app here that 4:54 makes sense and speaking of uh the plug our agenda 4:59 which will take about 30 minutes we think um is is really twofold we’re going to 5:04 talk about what kubernetes is good for and maybe what it’s not so good for because we we’re not here to try to sell you on 5:12 kubernetes we’re here to inform you on kubernetes and basically it is a thinking 5:18 professionals and uh tool it’s not something that’s a universal panacea so if with that as should we talk about 5:25 what kubernetes is good for um absolutely absolutely maybe we should start with explaining 5:32 a little bit of uh what kubernetes is maybe i’ll give it 10 seconds 5:37 tell saying this below what kubernetes is kubernetes is a container orchestrator it helps you 5:43 if you have numbers of containers and if you have applications running as much services it lets you 5:49 run them at scale and it’s an open source platform that came out of google 5:54 all those years ago and it’s been adopted as right now it’s used as defacto 6:02 container orchestrator tool and in most places of course there’s some other still around misos 6:08 and uh uh nomad uh no ban um but kubernetes is used 6:14 i think it’s a bit of an unfair fight between kubernetes and the rest of the trade tools so that’s what kubernetes is 6:21 and maybe we cannot talk about what what uh kubernetes is good at um 6:26 yeah what kubernetes is really good at is things like high availability and 6:32 scaling if you have your containers already created and they’re 6:37 running the environment and suddenly you have a increase in volume and you need more containers kubernetes has many 6:45 facilities for helping you scale that as you need so if you go from 10 containers to 200 6:51 containers back to five containers kubernetes allows you to make that yoyo 6:57 of requirements on the fly and it’s also 7:03 because of and that’s that’s really scalability now in terms of high availability kubernetes is pretty much 7:08 created with high availability in mind everything is is [Music] 7:15 what’s the word i’m looking for everything is created in groups so that way you always have redundancy and for 7:22 example a a basic kubernetes cluster they’re called clusters a basic kubernetes cluster requires six 7:29 nodes which are six virtual machines if you want the beginnings of high availability and it and it grows from 7:36 there so it’s really exceptional at that um do you want to talk about microservices 7:42 a bit salmon yeah maybe maybe i can add a bit more and higher availability and 7:47 scaling and jump onto onto microservices yeah as tennis says you can you can have a cluster 7:54 and cluster is made up of nodes and nodes you have a combination of nodes you have 8:00 working nodes and the control plane and you you can run multiple worker nodes and as tennis was saying you can 8:06 have one you can run six you can run three you can run hundreds you can run thousands you do the same with the control plane 8:12 control plane is the brains of the whole thing that controls where everything gets deployed and monitors everything and all that sort of 8:19 stuff all the sort of good stuff in terms of high availability you can have a cluster that can have multiple 8:25 worker nodes multiple control planes well that’s cool that gives you redundancy what people what you can do 8:31 is you can run a cluster that runs in multiple regions so you can have a virtual machine or an actual machine you 8:37 can install kubernetes on anything you can have that running one machine could be running in i don’t 8:43 know uk south data center another machine could be running in let’s say west u.s data center another 8:51 machine could be running in east u.s data center you got three machines which if you lose a zone 8:57 not a problem highly available machines get you know if if your cluster is running with those 9:04 three machines and your application is running in one of the nodes one of the nodes gets destroyed for whatever reason the other 9:10 two will pick up that workload and run it so that’s how it gives us high availability now in that sense and in 9:17 terms of scaling as as tennis tennis mentioned that we got two kinds of scaling we can have 9:24 application scaling as tenants were saying we can you know scale up an application based on given metrics we 9:29 can gather some metrics it’s uh kind of like built-in you have to do a bit more work in order to do that in 9:35 kubernetes and based on metrics for example you can say oh if my requests are taking 9:40 more than five seconds this is just an example tennis five seconds or two oh yeah respond you know give me another 9:46 pod give me another pod uh you know spin up another part and that’s all to scale 9:51 and you can all just scale it back down if you know if if my cpu consumption of the pod is less than 9:57 10 that kind of shows it’s not really doing much right tennis just get it back down and 10:02 save some resources and that’s for scaling of application we can also have 10:08 cluster quarter scalers of course it works well in uh in a cloud provider environment if 10:14 you’re running your own kubernetes an actual bare metal that auto scaler as you can imagine is basically you running 10:20 around and plugging in a new machine and making sure it joins the node but yeah cluster auto skill is there so you 10:27 know this it’s very good at that stuff if for whatever reason you have an application that wants to scale up 10:33 and you need more resources to be added it’s excellent at that i think that leads really well into the microservices 10:40 part which is nowadays what we do is we take an application and we break it up into smaller chunks and run them 10:46 everywhere you know like we we give one one job for one application to do and you can imagine all these applications 10:52 are talking to each other and they all you know kind of rely on one another you have to send a request from one to the 10:58 other one container needs to talk to the other container get response back kubernetes is very good at running 11:04 smaller applications as microservices as a collection of microservices 11:10 so it will allow you to you know connect them together using services and 11:15 you can send requests easily from one to the other it doesn’t matter how many containers you’re running inside pods 11:21 you might be running you know hundreds of containers if and the containers could be older scaling up or just getting down or 11:28 getting deleted or crashing or whatever it might be kubernetes will take care of that it 11:33 will send take your request from one place to the other place so yeah yeah so that’s very good 11:38 mike services i don’t know what else uh you wanna talk about what’s what’s it good that oh well so remember if it’s 11:44 properly configured then it utilizes all of these resources very well in other words 11:50 if it’s properly configured and you have a collection of nodes and nodes when i say nodes just insert vm in there 11:58 it will very well maintain the proper utilization 12:03 uh and full utilization of those virtual machines so that it spreads the traffic and also the the load across all of them 12:11 and it uh it doesn’t doesn’t waste resources if properly configured 12:18 so that’s and also if properly configured it’s very secure there’s four layers of security involved in 12:23 kubernetes so for those who are in highly sensitive application 12:30 environments like banking and finance you can rely on kubernetes as a secure 12:37 platform uh as well and yeah and i i think i’ll yeah i think 12:44 i think that’s that’s that’s a fair point so if i maybe add about the resource utilization 12:49 a tiny bit more if i may tennis it’s um so we have we have virtual machines uh 12:56 or actual machines and what you see if you’re running monoliths is you might have a 13:01 big machine right i’m gonna let’s let’s just pick virtual machines i’m gonna say 13:07 a virtual machine with 64 gig of memory and i don’t know how many cpus we need 13:12 what whatever how many uh i don’t know like a lot of a lot of 13:17 memory and cpu in there usually according to estimates according to 13:23 estimates tennis is like most organizations are using 13:29 not more than 10 to 20 of the allocated resources that’s right most organizations grossly over provision 13:36 yeah diversity of provision because you know of course sometimes you have to because you might be like oh you know i 13:42 might we might have uh maybe what some months we might have more more traffic to perhaps have to 13:49 scale up or or or maybe because that’s the machine that’s available you start using that machine because it’s quite 13:54 big but in kubernetes what happens is we we use the kubernetes scheduler is is in 14:02 charge of seeing how many uh where it should run the workload so imagine i’ve got three 14:08 worker notes and i need to deploy something in all those three workouts 14:13 and what you’ll see is it basically goes through lots of checks it will for example see which node is 14:20 completely empty or does it have the right port in it or if i need to run replicas of it i don’t 14:26 run the replicas on the same node so you will think of think of the kubernetes scheduler as as the tetris player right 14:33 and i think that’s that’s how i like to think of that yeah that’s that’s what i’m trying to describe yeah it will 14:38 try and pack your your containers and you know when we talk about containers and 14:43 kubernetes is really pods pods can be one container of containers so it tries to pack them in densely so 14:51 everything is contained you know within the within your virtual machine so maybe the third 14:56 virtual machine might be empty the third virtual machine is empty your cluster autoscaler is going to come in it’ll say 15:02 well you got this third one that you’re not really doing anything with so i’m going to set that down and then you’ll only have two working notes that’s an 15:09 example right you could have 20 working notes running and five not doing anything you can go ahead and 15:14 and shuffle things around by the way uh welcome if you’re just joining us now uh 15:20 with tennis and salman we’re from apia we’re talking about what kubernetes why do you need kubernetes so basically 15:27 we’re just talking about why why can’t what kubernetes is good at and hopefully that will kind of answer so far we said 15:32 it’s very good scaling high availability uh running lots of microservices it’s good at some resource 15:39 utilization is good at security as well if configured correctly uh and perhaps maybe 15:46 i think the good point another point is self-healing right so if we run applications as 15:52 deployments and if one container crashes that’s the kind of point of um 15:57 of a container orchestrator it’s just if a container crashes it’ll you’ll bring it back up and 16:02 get it up and running again i don’t know if you want to add anything no it’s just that the um the 16:09 there are many facilities for example if you want to upgrade a node to a new version of an operating system there are 16:15 facilities within kubernetes so that you can say okay i want you to stop scheduling things over here and start 16:20 scheduling them over here so that i can take down this one machine for the purposes of updating so there’s a whole 16:27 uh plethora of options inside this kubernetes ecosystem to allow for 16:34 it to be malleable so you can do maintenance and upgrades and things like that that will and that are self-healing as a 16:40 result so that way you don’t have to worry about the classical uh problems of oh 16:46 i’ve got a schedule down time between 1 am and 3am sunday mornings every other 16:51 weekend uh you can you can have much more flexibility for those kinds of things 16:57 uh so the the the ability to self heal is is multifaceted that’s for sure correct 17:04 correct and yeah though let’s completely agree with that by the way if you have any questions feel free to drop them i’m 17:11 going to flash a slide up real quick just to show you where where you can drop the uh if your screen looks like this uh if 17:18 you’re in full screen you can escape full screen and jump back to ask a question tag if you have any questions 17:23 for tennis or myself uh you can put them in here any uh any difficult questions we’ll leave that 17:29 to tennis and that’s good right that’s a good deal 17:35 you know what cool so go ahead yeah girl you’re going to say something no no i was going to say the the 17:42 one thing we haven’t talked about is the kind of application that kubernetes uh is a good environment for which is a 17:47 stateless application it’s very good at handling stateless applications that doesn’t mean that stateful application 17:53 when i say stateful i’m talking about applications that has that have to have an understanding of 18:00 their environment when they’re running with certain data in other words like databases and things like that 18:07 uh stateless that doesn’t care what’s in in the running environment you tell here just run and it has no it has no 18:14 requirement to read a config file well read real-time data or anything like that it 18:20 can just run in a stateless fashion um so kubernetes 18:26 is likes stateless applications it will run with stateful applications but it 18:31 was ultimately designed mostly for stateless applications um yeah anything yeah the point yeah i 18:37 was just going to say the point the reason why it’s easier to deal with a state state 18:43 stateless application in kubernetes is is because you can imagine the container could be running anywhere 18:50 it could crash at any time for whatever reason one bug in the app something happened on the node you lost 18:57 the connection to the node it could crash at any time if the state is already in you need to 19:02 kind of figure out a way of managing that state before it crashes or something happens uh and also you know like if you need to 19:08 get data from somewhere you need to be able to attach the data like the volume that you’re using so there’s a bit 19:14 there’s a bit more work uh you know it’s very good at running the stateless apps because if i want to 19:20 scale up or scale down no problem a request can end up in one part or the other one no problem whatsoever you know 19:25 that’s uh that’s why it’s not that it’s not that hard to do um let me just uh uh 19:32 there’s a question that’s coming uh and the question said is this is it true that all k8 nodes in a cluster have to 19:39 be the same spec cpu memory that’s a very good question it’s the question if i understood this correctly is all is 19:45 asking if i have a kubernetes cluster in the cluster i can have any number of machines uh working notes three four 19:50 five six one two whatever it might be do they all have to be the same spec and the answer is no they don’t have to be 19:56 the same spec as long as they provide cpu in memory the minimum amount of cpu memory i can’t 20:02 remember exactly how much the minimum amount yeah either as long as they provide yeah as long as it provides cpu 20:07 memory you can have that in the cluster and this this is this is good right because 20:13 you can even in a cluster which is what we tend to do is you can have 20:19 normal cpus and you can even attach gpus so imagine i have a gpu in a cluster and 20:24 you’ve got some workloads that need to run you can attach that one could have four gig of memory the other one could 20:29 have 64 gig of memory it doesn’t matter you can attach it you can take a raspberry pi 20:34 and like you know you can make a cluster out of it so yeah if you if your virtual machine is or a machine is whatever it 20:40 might be so they don’t have to be the same uh the only the only caveat is that it 20:46 makes some configuration uh concerns a little more complex but it doesn’t it’s it’s but it but it’s 20:53 it’s made in such a way or it’s configured in such a way that you don’t have to have them the same size a lot of 20:59 people implement them that way just because it’s easier correct correct correct correct correct it’s um 21:06 yeah it’s becoming a little bit easier now as well to have different sizes and different pools so yeah hopefully that 21:11 answers your question if you have any more questions uh keep them coming that was it good question so we said uh yeah 21:19 it’s very good it’s running stateless i think one thing that we haven’t talked about since we’re talking about worker nodes uh off the same side i think 21:26 kubernetes is platform agnostic so let’s say if you want to run something in a 21:32 virtual machine today in a zero and that’s running in a virtual machine in the zero and i don’t know it could be 21:38 an ubuntu machine in israel you can do that nowadays microsoft which is excellent and it’s your um but you 21:44 wanted to take that machine and run it as is in aws and that’s not possible because you use 21:50 different base images you can’t take a virtual machine from one uh to the other and run it 21:56 but in you actually don’t care about the virtual machines all you care about is your clusters and the api because the 22:03 way you submit the request you submit it to the api and then what you do is you write your 22:08 application configuration files and your application configuration files are like yaml files 22:14 they’re just configuration for young people and they’re and they’re generally gonna have kubernetes they’re generic to kubernetes and i can 22:21 write a yaml file today and run that against the cluster that’s running on my machine i could tomorrow take the exact 22:27 same file and run it in aws and in the evening i can run it in in azure uh 22:32 kubernetes cluster that’s running on zero in their managed cells and the other day 22:37 day after tomorrow i can take that and run in gcp google kubernetes engine and everything will work and that’s why it’s 22:43 great because it’s agnostic so if you ever if you’re in a situation and it’s happened in the past 22:50 as well we’ve worked with a number of clients where you might be thinking oh we’re in aws today but tomorrow we might be in 22:56 somewhere else or we have a need that we need to move from one place to other definitely look at kubernetes that’s 23:02 right that’s right then one one the caveat to not caveat but one one thing to talk about is serverless is often considered 23:09 a competitor of kirbynetic kubernetes but you can also run serverless inside of kubernetes and what’s interesting 23:16 about serverless inside of kubernetes is that that is generic the same serverless functions 23:22 that would work inside kubernetes on aws is the same it will be exactly the same on azure which will be exactly the same 23:29 on gcp so the the the the portability of the code is much 23:37 greater uh because you have a common ecosystem 23:42 cool i think maybe we just make one last point and then move on to maybe when you 23:48 yeah and i think one of one of the good things about kubernetes is that it’s very extensible 23:54 let me give you an example tomorrow you don’t agree with the way kubernetes runs your containers on you 24:00 know how it picks to which node it needs to deploy container on you can change that logic itself you could write your 24:06 own scheduler you can modify it and for example you might say hey every time a 24:11 container runs i want to be able to do x y and z you could write that a lot you can run as an operator and let’s say 24:18 every time you run um you know you might say ah in i have a cluster and in the cluster what i don’t 24:24 want to happen is pull in any containers from that don’t come from my repository you can have that you can program that 24:31 you can use web hooks to be able to configure it so it’s very extensible it’s lots of apis that you can use 24:37 and that’s why it’s very good at like if you wanna do it we’re not here to tell you uh serverless is better or 24:43 kubernetes is better there’s different there’s different use cases for everything right tennis there’s different use cases with kubernetes 24:50 different use cases for serverless different use cases for what you want to do by the way if you just joined us welcome to the webinar we talked about 24:58 well maybe i should flash the slide do you really need kubernetes anyway uh 25:03 and uh we talked about what kubernetes is good at and now we’re gonna talk about what is you know perhaps not so 25:09 great at and then we can start answering a question you really need kubernetes anyway spoiler alert the answer is maybe 25:15 it depends right on this yeah yeah it’s it’s it’s not freezing 25:22 yeah absolutely and then hopefully in the end we’ll summarize by saying you know we’ll talk about 25:27 if you don’t need any of these things what kubernetes is good at perhaps don’t use kubernetes but you know we’ll look 25:34 at what’s good if you have any questions feel free to ask us questions uh you know we like relax questions we already 25:40 had one today uh thank you for that uh your view looks like this and there’s a 25:45 tab called ask questions you can click on that any question about kubernetes anything feel free to ask it doesn’t 25:51 have to be this this topic it could be anything and do rate us there’s a rate this this tab 25:57 just give us some feedback so so we know maybe perhaps you want to hear about some other things or anything like that so 26:03 um yeah i think that’s uh so thanks for joining in and now we’re going to talk about 26:08 perhaps what this kubernetes not so good at yeah tennis you wanna do you wanna start um if you are for example a retailer and 26:16 you have a web page that you need during business hours that 26:22 is not something that you necessarily need to have up nights weekends and holidays that’s used during just the business day 26:29 um then maybe kubernetes isn’t for you because you don’t need that kind of high 26:35 availability and remember when you sign up to do kubernetes you are 26:42 building an entire ecosystem and you are signing up for a great deal of 26:48 complexity to get that ecosystem going we’ve talked about the flexibility of kubernetes well the the flip side of 26:54 that flexibility is complexity so if you are a small 27:00 environment with just a couple of applications and you don’t actually need five nines you just you don’t need it to 27:06 be around business during business hours then maybe you don’t need kubernetes 27:13 yeah if you yeah if you don’t need any of that scaling up or if you don’t need any of that 27:18 high level availability and works absolutely fine 27:23 you know and then it’s it’s absolutely it’s it’s okay you you don’t need to as 27:29 tennis says look up all that complexity and you know 27:34 try and learn and understand because it’s a whole new ecosystem that you have to understand you your team you know 27:39 it’s everything new that you have to learn i think one of the other things is a lot of people 27:45 might say that oh if you have a monolithic service application perhaps not best to run kubernetes and that’s 27:51 probably true because you know we want we in kubernetes a container can crash and spin up any time 27:58 if your application takes a few minutes to start up we can’t have replicas we can only have one you know you have a stateful application 28:04 monolithic it’s massive you can’t have replicas running you only can have one replica running at one time that perhaps 28:10 it defeats the purpose of running in kubernetes maybe if you want to migrate towards a more 28:17 microservices architecture perhaps the first step is for you to containerize it and run in kubernetes as 28:24 a monolith and then start breaking it up and taking some some uh you know some of 28:29 the logic out of your application and running it so if you have a monolithic app application that perhaps needs to 28:35 know what kind of infrastructure it runs on um maybe you need to not look at kubernetes 28:42 yeah if you’ve got if you’ve got a handful of applications that are monolithic and when i say monolithic one thing to think 28:48 about is an application that has lots of processes in uh that you know that is a single hunk 28:54 of code that does everything it does logging it does air recovery it does uh database access it does the front end to 29:00 the customer if it if you have a monolithic application like that and you have two or three of them 29:06 then you know you may not necessarily want it to invest in the incredible uh 29:14 journey that is kubernetes uh on the other hand if you have a lot of applications and they’re in disparate 29:21 places and you’re having trouble you know keeping up with everything then you might want to look at microservices and 29:27 then kubernetes on top of that so it’s it’s a it’s a balancing act and the 29:33 the thing to keep in mind is is that you you’re it is not a panacea it’s an 29:38 approach and that approach has prices and you know they’re speaking of costs 29:43 we can talk about the the different costs oh you could talk about that really excellent website too salmon 29:49 yeah there’s a maybe we can we could share it in a little bit later on perhaps right yeah there’s there’s a 29:56 there’s a calculator from learncade they’ve made a cost calculator that you can check out we can we can send out the 30:01 link later on and that allows you to estimate how much the calculator might be so maybe should 30:08 i share my screen really quickly okay 30:15 yeah so i think uh one of the things then just quickly we won’t we won’t take that long on there uh 30:20 let’s go window that’s right 30:28 you can see it in here this is this is the cost calculator just to give you an idea of cost uh what you can do is you can if 30:35 you imagine you have a cluster that’s running running somewhere you could be running uh you know in 30:40 gcp azure or whatever it might be you can come in and pick your different nodes that’s made off and how much 30:46 memory you need and how much cpu required and it will give you a cost of how much is going to run to run that 30:51 cluster you can see in this case i’ve only picked one uh let’s say we’re going to pick a couple of these nodes uh you know just this 30:58 cluster sorry just this node and it’s trying to give me how much it’s going to cost to run that instance where i only 31:04 have one node here 288 dollars a month is going to start giving me more costs and you can you can try to get the 31:11 estimate of how much it’s going to cost so there’s a bit of like you can use managed services of course and this is 31:17 this is a managed service calculator and these things are costly um a cluster could end up 31:24 costing you thousands of thousands of dollars a month and if that’s 31:30 what your applications are worth then you should definitely consider it but basically what what what we’re trying to say is that 31:36 it’s not anything that you need to run is not free and you have a cluster and if you are using a cluster definitely consider 31:43 using a cluster auto scanner because when you’re not using it you want to scale back down and you want it to cost 31:49 it less than what it is right now but you know you can use these tools to kind of help you er er getting some of your 31:56 costs uh in check keeping some of your questions um and i think me that leads quite well and 32:03 you probably already talked about uh the skills gap right yes 32:08 yeah um the thing that you have to remember is that you you’re already if you’re in the cloud 32:15 you you already have had to create a kind of priesthood of people who look 32:20 after the cloud technologies they’re the ones who understand a how in for example aws works 32:26 and how to allocate uh new ids on it and how to bring up new resources on it and 32:32 and configure the networking and that sort of thing so you have this cadre of people who are savvy about the cloud 32:40 well with kubernetes you’re going to have to have another group of people who are savvy 32:46 about kubernetes now sometimes there’s overlap between the two groups 32:51 but it’s rare that you’re going to be able to get you know one or two people who can do it all generally what’s going 32:57 to happen is it’s going to be groups of people who do these things um and there’s a couple of problems with 33:04 that in that the there’s a great deal of demand for kubernetes experts and they are 33:09 difficult to find and they’re difficult to hold on to and they’re not cheap so which is good news for me and salman 33:16 but not but not necessarily for not necessarily for managers so 33:23 in salmon did you want to expand on that at all or yeah it’s 33:28 there’s a lot of tools first of all you need to understand how kubernetes hangs together in order 33:33 to see how to write your applications in the first place where you have to like write all these configuration files uh that’s 33:40 when we develop a point of view and then you also have to as tennessee’s be able to you know manage your clusters 33:47 even if you have like a managed kubernetes cluster you still need the ability to configure your networking and 33:53 figure out everything is everything completely secure you need to have all the pipelines so you can build in and 33:58 deploy that but basically what tennis is trying to get to is that there is a lot of learning curve before you get in 34:04 there’s a baby you need to yeah there’s this there’s a big learning curve and you spend a lot of time 34:11 training yourself and and people around you uh and you know i have done this for the last three 34:17 years and and and it’s you know if you if you get the training right of course it’s it’s a 34:22 joy right because you need to understand everything how everything works but yeah there’s a lot of there’s a big learning 34:28 curve that you you look into because kubernetes itself is complex it is completely complex because because 34:34 of how extensible it is and how many moving parts there are it’s just complicated 34:39 itself and combine that with cloud native landscape combine that with other things that you want to do just becomes too complicated 34:46 and if you have stateful applications trying to run kubernetes as you said before it’s a little bit hard and i 34:51 think that really leads quite well into perhaps when 34:56 you should really consider if you want to use kubernetes is if you have to for 35:02 one reason or another run and create your own and manage your own kubernetes cluster if you have to 35:08 run you and manage your own kubernetes cluster i personally stay away from it because 35:15 this there’s a lot of complexity in managing it and uh and of course we’re not saying 35:20 it’s not doable but perhaps think twice like you know there’s there’s all this work 35:26 that you have to do to install upgrade and make sure everything’s up to date and if there’s 35:32 any vulnerabilities that come out patch them and do the correct maintenance cycle there’s a lot of work 35:38 for you to consider right i don’t know if you want to add anything there yes it’s as salman said the the um 35:45 let’s say you’re a small retailer insurance company bank and you see when somebody points out hey 35:52 we’ve got all these vms laying around on premises why don’t we just fire up a kubernetes it’ll be great 35:58 and you know because we’ll just take advantage of all this and that’s something that i personally would 36:03 caution against i if you were going to venture into kubernetes and dip your toe into that 36:09 particular pool i would suggest using one of the managed facilities to manage kubernetes 36:16 that the cloud providers offer um so you’ve got the cloud provider at bottom which let’s say aws or azure and 36:23 then on top of that they offer their own managed version of kubernetes and on top of that you would be able to write your 36:30 applications that is the direction that i would suggest uh implementing it personally on-prem 36:37 unless there are very particular needs for for doing that like you know security needs uh 36:42 industry uh requirements those kinds of things uh security you know those there are certain 36:48 like uh certain states in the u.s you have to do uh processing in the state 36:54 for certain kinds of records so that would argue for having a localized kubernetes but other than the very 36:59 specific situations like that um going back to what salman was saying think twice before you try to implement 37:07 on-prem for yourself yeah i think importantly 37:13 know that you’re in for a ride because there’s a lot of effort you have to put in to spin up and 37:20 get a cluster up and running you can i know you can get up and running really quickly but getting up and running securely and in a 37:26 scalable fashion yourself when you’re doing it on premises you know we’ll talk about cluster water scaling right now also like ingresses 37:34 load balances on-premise is a little bit harder to do so i think yeah we touched upon a few points like 37:41 we said you know if you don’t really need the scalability high availability in your application don’t use it but you know perhaps think 37:48 about not using it but let’s say you have a combination of applications some of them don’t need 37:54 scaling you can run it no problem um if you have a monolithic application think about uh can it handle like 38:01 if it crashes and restart can it can it gracefully handle that do you need any other replicas if you don’t need the 38:07 replicas then perhaps there’s no point also think about all that learning curve right so 38:12 everything you have to learn about and think about also the costs there’s just not just cost of cluster there’s some of 38:17 the some of the hidden costs as well in terms of like the training and stuff that you everything else you 38:23 need to do and also the complexity because kubernetes is quite complex and yeah stay for labs kind of hard to do 38:30 but getting a bit easier nowadays yeah uh and uh also think about 38:36 when you have to spin up and run your own kubernetes cluster so i think uh maybe we should do it uh anything you 38:41 want to add tennis should we do a summary from the top yeah exactly it’s just let’s just 38:47 summarize from the top um the kubernetes is is awesome for what it is doing for what it does it does it 38:54 very well however be aware of what you’re getting into and be aware of you know be very 39:01 circumspect about what you would like to do um yeah and 39:07 you know we we are here to inform you not to uh 39:12 tell you what to do is just so that you have uh a clear-eyed picture of what’s going to 39:20 happen if you take either route so so the question is 39:25 do you really need kubernetes and the answer is all depends if you are looking for high availability if you’re looking 39:32 for scaling of the cluster and the application if you’re looking at running several microservices hundreds of 39:38 thousands or tens of microservices if you’re looking for self-healing of your applications if you’re looking for 39:44 proper use resource utilizations of your virtual machines if you’re uh looking at 39:50 extensibility if you’re looking at cloud agnostic behavior of kubernetes 39:55 then perhaps use it but also be in mind be mindful 40:00 that is a big learning curve you have to learn a lot of stuff and some things don’t really fit that well in kubernetes 40:06 at the moment uh you know as we just talked about a few minutes ago uh the 40:12 learning curve and if you don’t need the availability you don’t need the scaling you don’t need replicas 40:17 um it’s a little bit harder a little bit harder to do um yes so 40:22 that’s what we wanted to cover before we leave we’ve got another uh 40:28 another session coming up next week on the 16th no this is the next one is the 29th on 40:34 the 29th of november uh we’re going to talk about uh who’s killing the cuban at this game who’s 40:40 winning the kubernetes game and what we can learn from their successes so we’ll talk about that 40:45 next wednesday i believe it is wednesday 29th is that yes i believe so yeah yeah 40:51 next one november 29th we’ll be discussing that and uh yeah uh my name is salmanik baal 40:57 uh check us out and uh i’m joined here today with tennis if you want to find more about our organization you can 41:04 check via dot io we do a lot of kubernetes work so the stuff that i’ve been talking about uh uh we’ve worked 41:10 with a number of clients over the last many years um yeah check us out uh tell 41:15 us any parking words from you no sir i think you’ve covered it very well 41:21 yeah uh we would like to thank you all for joining in we really appreciate uh you’re joining again if you have any 41:27 feedback from us for us please click on the rate this section and leave it there and we hope you join 41:33 us next week you will get an email with some of the links that we talked about uh you’ll receive them are we doing this 41:39 next uh webinar we’ll we’ll be doing many more and if you have if if there’s a different kind of format different 41:44 topic that you want to hear let us know we’ll bring it up to you we are uh you’re trying to make this thing a regular right tennis that’s right we we 41:52 hey we’d love to hear about any feedback you have about topics about presentation you know about clarity anything that 41:59 you’d like to uh revisit so we leave you with a final thought 42:04 that do you really need kubernetes well just like with everything in life it depends 42:09 defensively all the good features of it uh you should not use the same tool for 42:16 every job every tool quite the same requires his own tool every job requires his own tool so with that thank you all 42:24 very much for joining and we’ll catch you next week 42:29 bye-bye bye


Subscribe to receive resource and product updates