PurePerformance - Blue turns Green: Sustainable IT is everyone's business with Mario-Leander Reimer

Episode Date: November 6, 2023

4% of worldwide CO2 emissions come from IT and like in all other industries we have big potential to not only reduce the carbon footprint but also lower costs.Tune in to our episode where we have Mari...o-Leander Reimer, CTO at QAware GmbH, talk about his top 3 suggestions for Sustainable IT: Making the right architectural choices, Right-sizing your environments and shutting down environments not needed!Mario is also heavily involved in the CNCF and gives us an overview of projects to look into such as Kepler, kube-green, Karpenter or Carbon Aware Multi-Cluster Schedulers.Here are the links we discussed:Blue turns Green presentation: https://speakerdeck.com/lreimer/blue-turns-green-approaches-and-technologies-for-sustainable-k8s-clusters-number-kcdmunich?slide=5Kepler Project: https://kepler.gl/kube-green: https://kube-green.dev/CNCF TAG Environmental Sustainability: https://github.com/cncf/tag-env-sustainabilitySustainability Week: https://tag-env-sustainability.cncf.io/cloud-native-sustainability-week/

Transcript
Discussion (0)
Starting point is 00:00:00 It's time for Pure Performance! Get your stopwatches ready, it's time for Pure Performance with Andy Grabner and Brian Wilson. Hello everybody and welcome to another episode of Pure Performance. My name is Brian Wilson and as always I have with me my co-host Andy Gravner. Hi Andy, how are you doing? Good, I'm just really surprised that you never called me up again on me making funny faces while you were doing your intro. Well, you know, I have to spread that out over time because that's every episode. I assume everybody knows that.
Starting point is 00:00:49 But you know what happened? The dreams came back. No. Seriously? Yeah, yeah, yeah. So this was a really weird dream I was having. You and I were cows out in a field, eating grass and farting a lot, right?
Starting point is 00:01:03 Just a lot of methane coming out farting farting and we got into this weird patch of mushrooms by accident we just ate them and then about you know hour and a half later we started feeling funny and suddenly this coyote walks up to us and pulls out a laptop and it it's like, hey, let me show you how to be more efficient in your Kubernetes. And we're like, we're cows, Coyote. And he's like, no, you're not. You're silly gooses. And then I woke up, and I have no idea what it meant,
Starting point is 00:01:40 but you and I were cows for a while. Farting along, yeah. Yeah, farting along. It's actually close to reality almost a while. Farting along. Yeah, farting along. It's actually close to reality almost, right? Farting along. Yeah, it's about eating and farting. And then working so that we can buy more food to repeat the cycle. Yeah, cool.
Starting point is 00:01:56 Hey, I need to ask you one more thing, though. Yeah. Same hairdresser that you go to? Same barber? Yeah, when I shave my head, I do it myself. Do you get a barber to actually just shave your head? Yeah, I remember this story that I told you about when I got there the last time.
Starting point is 00:02:19 And he said, the usual? And I said, yes, but his usual. He had a different mind than I. And then I ended up always with a bald head. See, now you could save money if you're just shaving your head. You can even get Gabriella to do it.
Starting point is 00:02:33 I know, we could. But let's stop talking about parting and about hair. We actually have a guest that has much more hair, at least on half of his head, than I do. I hope this was not an insult before we even have him talk. He just left. Oh gosh, what are we going to do?
Starting point is 00:02:52 No, without further ado, Mario, Leander, Reimer, thank you so much for being here. Hopefully you are okay with a couple of these jokes in the beginning. Welcome to the show. Thanks, Brian. Thanks, Brian. Thanks, Andy. Thanks for having me. Hey, Mario, for people that don't know you, I think you said this might be your first podcast that you've ever done.
Starting point is 00:03:14 Yes, definitely. I hope we don't scare you away. Hopefully, you will feel welcome and our jokes will not scare you away. Mario, the two of us, we met a while ago. I don't remember. Was it at CubeCon in Valencia? Was it in Detroit? Or was it in Amsterdam the first time?
Starting point is 00:03:36 Amsterdam. It was definitely Amsterdam this year, beginning of this year. And then you actually came to our Captain project booth where we did some coding. You actually said, hey, you would like to learn more about the project. And I think you started implementing an extension to Captain, if I'm not mistaken. Exactly, yeah, because most of our data is in Prometheus
Starting point is 00:04:00 or in an InfluxDB. So I was interested in providing a kind of a new source to the Captain Lifecycle project. It's still ongoing. I mean, it's still not final there. You know how it is with those pet projects. I know, I know. But it's fast forward,
Starting point is 00:04:19 or let's actually say a couple of weeks after Amsterdam, all of a sudden I see you at KCD Munich, Kubernetes Community Day in Munich, and you went on stage and you talked about sustainability, which is really the topic of today. So sustainable IT, I think the topic, the talk was called the blue turn screen. And I'm looking at your speaker deck. So folks, if you're interested in anything that Mario has already done, we will link to the speaker deck. It seems obviously the blue turn screen is the presentation they did in Munich. You also had the German version of the same
Starting point is 00:04:55 presentation on the speaker deck. So depending on what language you prefer, check it out. Mario, before we dive into the topic of sustainability, can you tell us a little bit more about your background and what you actually do right now and why this topic is important for you? Yeah, of course, of course. So background is pretty simple. I'm a computer scientist, software engineer, software architect. Nowadays, I don't develop that much anymore. I'm a managing director and CTO working for CoaWare. We are an independent software company located in Munich. That's why I spoke at the KCD Munich.
Starting point is 00:05:31 And the cloud-native universe has been, well, one of my main topics of interest for the last, let's say, seven years. I've been following Kubernetes since the early days and obviously try to research different areas. Platform engineering obviously is a topic right now. And also sustainability or green IT is obviously a topic that is very important for us as a generation and as a population, let's say. And obviously for us as an employer as well. I mean, we have quite a few software engineers right now in the company that are really looking into what can we as software engineers do
Starting point is 00:06:19 to build green systems, to build sustainable systems, to try to reduce the carbon footprint of the systems we build. So this is mainly the area of interest right now. And that kind of then is the connection to the Kubernetes world, right? I mean, you can look at it from a pure software engineering perspective, and obviously you can then focus on the pure infrastructure, right? What can you do in a platform level? What can you do in a platform level? What can you do in an infrastructure level to try to be more sustainable and try to use the resources more efficiently?
Starting point is 00:06:55 I mean, what I always think, right, and the motivation, obviously we all want to contribute to a healthier environment and looking into the future. But what do you think is the main motivation still in the end costs? Because if you're optimizing on carbon, if you're building more sustainable systems, especially in our world, if you're optimizing on CPU, on memory, on network, on traffic, it always should come down in the end also to costs. And do you see this as the main motivation and main driver or is it do you see organizations really say you know cost is obviously
Starting point is 00:07:32 a side benefit but really we want to more focus on co2 emissions on carbon on the carbon footprint and then costs come second what do you see out there? I would say the latter one. Obviously, there is a close relation to costs, but I mean, you can optimize for costs and then still make the wrong decision from a CO2 perspective and the other way around. So I think if you optimize for as a benefit. And so when you look at some of the things that you mentioned in your talk, I remember that because you actually brought up, you know, it depends not only, let's say, how you develop your software, but also where your software runs,
Starting point is 00:08:22 like kind of making automated decisions in which particular data centers, in which regions of the world you actually run your workloads, because maybe those data centers in Northern Europe have a better, I don't know, CO2 footprint than in the South or in other parts of the world. Is this something, A, did I remember this correctly, A? And B, do you see people really making that decision based on that to move their workloads around? I mean, that is a two-part question. So, yes.
Starting point is 00:08:58 Well, generally speaking, if you go to Norway or Sweden,eden for example i mean the the energy they have there um and the power that that that drives the the data centers and and obviously then the infrastructure um of our clusters or the kubernetes in the instances we have i mean they have like you know water and wind power so this is usually pretty uh co2 neutral the the power itself and this is something we have in our control as you know know, as architects, as engineers. We can't do very much about how efficient the computers in the data status themselves are. This is kind of the cloud provider's responsibility. But what we can do as architects when we plan new systems,
Starting point is 00:09:41 well, we can decide where we spin up the infrastructure. Now, the second part was, is that still something i see out there that is kind of considered well i mean i only have a limited view at least on on our customers and i would say i would say no right i mean usually the decision is made on well where are my customers? And then I want to spin up the infrastructure very close to my customers because you want to optimize on latency. And yes, you may want to optimize on cost as well. So it's other attributes that are usually the, you know, make the choice. And that's all fair, right?
Starting point is 00:10:28 I mean, you have to balance those attributes, right? If you move, let's say, if you move to Finland and your main users are maybe in Spain, obviously you will have a higher latency compared to you have your users in Spain plus your infrastructure in Spain, okay? So this is something you have to take into account, obviously. Yeah, and then you can also, again, argue that not only the latency, but I would assume if you have to transfer a lot of data from the data center in Finland to the example now in Spain, obviously,
Starting point is 00:10:56 that's also costs that are involved. And it's also your consuming infrastructure between your users and Finland in this case. So then, Mario, let me ask you, if I'm listening to this and I want to learn from you, what are the three things I should consider if I'm not considering this to be more sustainable, to be more green, to be more carbon neutral? What are the things that are not in the theoretical sphere but in practical what what do people implement what do you suggest i mean first thing i would say that it's definitely the the general infrastructure
Starting point is 00:11:35 architecture yes it's the location where you spin up your stuff and there you have to balance different different attributes and different quality attributes in a in a way right you have to balance different attributes and different quality attributes in a way, right? You have the sustainability thing, how dirty is the energy or how brown or how green is the energy. And you have to balance that with cost, with performance, with the traffic stuff you just mentioned, ingress and egress traffic. Is that an issue um maybe on certain locations you don't have every service of the you know of the cloud providers choice available right you need a specific cpu class maybe maybe that's not available in a certain region uh you may have to take like compliance and security things into account i mean if you're in europe then it's kind of gdpr
Starting point is 00:12:22 okay so you can't really spin up your infrastructure at every location around the world so these are the things you definitely have to you know to balance out but this is kind of something where you can make a big difference in how big is the you know carbon footprint of the infrastructure spin up so that's point number one. Another thing I still see out there is this elasticity thing, right? I mean, we should use cloud infrastructure elastically. I see many clusters out there that are pretty static, right? You have a lot of opportunity costs in terms of there's a lot of kind of wasted capacity that's not used because you maybe have said like,
Starting point is 00:13:14 well, I don't know what my workloads are. So, well, let's spin up a 10 node cluster. It's definitely going to be big enough, but you're definitely wasting cost, obviously, but you're also, you know, wasting a lot more power than you than you um should do so you need to and there are a lot of cool projects out there that can that can help you and they are easily installed on any kubernetes infrastructure like carpenter or
Starting point is 00:13:40 the the default cluster autoscaler that comes with pretty much every Kubernetes distribution that help you, you know, elastically scale out and also scale in based on the actual workloads that are running on the cluster. And once you have that going, obviously then you also need to be elastically scaling in terms of the workload. You need to right-size the workload, right? And once you have right-sized the workload,
Starting point is 00:14:07 obviously scale out and scale in based on the actual demand. So if you have a cron job and you have nothing to do or you have a message-driven system and there's nothing to do, well, then there is no reason that anything should be running, right?
Starting point is 00:14:19 If you have a message queue and you have some messages coming in, then, well, then you can spin up some instances, process those messages, and then well then you can spin up some instances process those messages and then scale down again so again here um this is practically all possible but if i look into reality into into some projects when i do some consultancy work um i hardly see much of of that being applied to the infrastructure. And maybe number three, and this is, well, I would say maybe that's, I would call that waste.
Starting point is 00:14:55 Okay. I mean, if you develop software, I'm a software engineer. I've developed big distributed systems for many German enterprises. And usually what you have is like you have a death environment, you have an int environment, you have a prod environment, a QA environment, whatever. And when do we work in Germany? Well, 8 to 6 in the evening, Monday to Friday, right? And how much of that infrastructure do you have idling around
Starting point is 00:15:21 doing nothing during the nighttime or on the weekend so why don't we shut down that stuff again this is kind of closely related to maybe the the scaling the scaling issue but you can easily you know scale down to the bare minimum save a lot of energy save a lot of costs save a lot of co2 save a lot of CO2, save a lot of carbon. And yeah, and then spin up the stuff on Monday seven in the morning when your developers come back to work. So those are kind of three things where I think you can get out the most.
Starting point is 00:15:55 And they sound like, at least some of them, like easy wins, especially the last one. I mean, that should be a super easy win. As you said, let's hope that we are not forcing our engineers to work 24-7, but they actually get some time off. Obviously, if you have a globally distributed organization, you need to figure out when you need what type of resources. But it just reminds me, I'm currently playing around with a new demo environment
Starting point is 00:16:22 that I have to build for a workshop. So I spun up a GKE cluster and I spun it up in the office. Then I went home because I wanted to do the podcast from home. So when I opened up my GKE console again, my Google console, it told me, hey, your cluster is completely underutilized. You may want to shut it down. So the point here is that fortunately, Google, Amazon, Microsoft, I'm sure many other platforms as well,
Starting point is 00:16:51 already give you hints about optimization potential. And I think as we're designing systems, and you mentioned platform engineering earlier, that this is a big topic from a platform engineering earlier that this is a big topic. From a platform engineering perspective, I think whoever designs the next platform for their organization needs to have a big focus on right-sizing that platform and all the resources and building these scalability and elasticity, upscaling, downscaling, or scale in, scale out,
Starting point is 00:17:22 as you said, into the platform because that just saves you a lot of money. Well, it does save a lot of money, and from a sustainability perspective, it can save you a lot of energy, thus reducing the footprint. And it's kind of a cross-cutting concern, and that is what a platform team
Starting point is 00:17:38 or a platform engineers should do. And they have to apply it, right? You said correctly that the cloud providers, while they give you hints, they provide you the means to apply it, right? You said correctly that the cloud providers, while they give you hints, they provide you the means to do that, but they all operate on that shared responsibility level. They only give you the means, they don't do it. So the responsibility to do that is on our side as a consumer of these infrastructures.
Starting point is 00:18:00 But I mean, it's the same. And if you look at my car um not the newest car but still it has an economy mode and in the economy mode it always gives me hints on hey you know you're driving a little bit too fast with you so it gives me visual hints but what i do with these hints is in the end again up to me do i go 100 at the autobahn 130 or or do I go 150? That in the end is up to me, even though I get the hints. And with the cloud providers, I think there's a double-edged sword as well. Because on the one side, I still think they want to sell you stuff. Yes.
Starting point is 00:18:38 On the other side, if they would automatically shut things off and then have an impact of your SLAs because maybe your architecture cannot handle abrupt up and down scales, then obviously you would then say, hey, why do you do this? Give me the power. So it's really interesting. First time ever I've been taking notes during a podcast with ideas and you just hit a whole bunch of them there. Yeah.
Starting point is 00:19:06 In that last bit. And, you know, I think the dashboard idea is a really key one. Because what I see, I'm looking at it from like the U.S. business point of view, right? Where I just assume that we care a lot less about, you know, our businesses care a lot less about green unless it's financially motivated. But same thing I had. I got a Prius in 2012 and all the dashboards and everything were focused around showing you how efficiently you're driving and showing you how much like you immediately see your gas going and just everything. Right. So you just become conscious about, hey, when the light turns red, I'm a little less aggressive.
Starting point is 00:19:44 Hey, that's that's really great. But there's a few things that this all brought up in my head. And I think it's more of a long-term thing we have to work on if we're going to be thinking about these things. Number one, I would say it would be truth and efficiency reporting, right? So if we're talking about those data centers in Norway, where they're claiming they have all, you know, wind energy and all this and being partially Norwegian but really having no ties to it, I'll believe them. If that statement was made from a data center in the United States, though, I would highly doubt what they said right so having no let's say central authority in any way to actually verify right when you go buy a car the epa tells you at least the united states your car gets in a in a lab condition your car gets you know 50 miles a gallon right or or whatever it might be there's nothing to hold any of these data centers accountable to say, oh yeah, most of
Starting point is 00:20:45 my energy is coming from here or there or whatever. So I mean, that would always be a tricky thing because you'd want to be, because that to me is the big bang saving, right? One of the biggest things you can do or most visible things you can do is to move to an efficient data center. Everything else is going to be like when you're at home looking to save money on your bills, there's rarely one thing you could stop spending on.'s it's a bunch of small things that add up in the end i think once you get past moving the data center it's that other bit but then the other challenge is education how do we educate engineers and architects from the beginning not now but the ones who are starting from the beginning to be thinking about this.
Starting point is 00:21:27 To know how to engineer for scalability, to know how to engineer for that, but also to be thinking about that, to be looking at those dashboards, to take them seriously, and to be incentivized to do that. I bring all this up because I think it's a really fantastic thing to be concentrating on, to be doing,
Starting point is 00:21:46 but it sounds like there needs to be a groundswell movement of getting these things in place so it's not just the people who are very conscious about it and want to do good it's about just making on the forefront of everybody's mind so it just becomes part of part of the the process of it and i don't know mario if there's any movement going on to try to really bring this into the forefront. Are we seeing movements, I don't expect to necessarily know, but are we seeing movements in computer science classes and schools to be talking about data center efficiency? Are we seeing movements to talk about engineering for scaling? Because if you're going to be scaling up and down, your bits
Starting point is 00:22:24 and bobs have to be able to quickly spin up and not need a big warm-up time. So any of this kind of stuff going on or any movement towards it? Well, I would say yes. I mean, the topic is hot in the IT community right now in general. I mean, there's the Green Software Foundation. That's an international foundation you know many big corporations are you know founding members and are part of that they offer for example i think it's even a free kind of an online course certification type which you can take i think if you go on the linux foundation web page you will
Starting point is 00:23:02 find that one pretty quickly i think it's two, three hour course on certification to, you know, to make the developers aware of the issue and, you know, give them some basic terminology that they can use. So we all speak the same language. So that's one thing. I mean, today we mostly talk about cloud and Kubernetes. Obviously, we have the,, we have the CNCF. The CNCF now also has this special group on environmental sustainability that take on that topic. And they try to provide advice to certain projects, how they can implement their operators or their technology, their Kubernetes specific technology more efficiently. They are currently working on a landscape that gives you certain areas of interest in terms of observability,
Starting point is 00:23:56 what cool projects are out there that can help you in observing and making your co2 footprint or energy consumption more transparent they give you things on scaling and scheduling right those so those are i mean we talked about scaling already scheduling is kind of i mean this is the kind of the king's discipline this is like you have two clusters and you transparently move your workloads between long clusters depending on the you know or the greenness of the power. And obviously, there's this huge area of smart data centers. Obviously, cooling is a thing, right? I mean, there's a lot of energy consumed by data centers in cooling the hardware.
Starting point is 00:24:44 So they have that landscape, so they do that. Next week, there is the special sustainability week coming up, promoted by that tag and by the CNCF. So this is something you should be following along. Probably a lot of meetups coming up. There is definitely one in Munich next week, Monday, about different sustainability movements. So, yes.
Starting point is 00:25:12 So, I would say in a community, there's a lot of traction, a lot of attention out there. Now, you had a good thing before that, and I think this is not a US issue anyway. I mean, obviously, corporations, a good thing before that uh and i think this is not a u.s issue anyway uh i mean obviously corporations they usually make decisions based on you know money um but i think in the end most of the corporations if you see at least what's happening in europe right now there are a lot of regulations coming up um that forces the corporations to be transparent on their footprint and to be
Starting point is 00:25:46 aware and to report. And if they don't, they get penalized, right? So that costs them money. So in the end, I would say it's in the interest also of those corporations to make things transparent and to work on their footprint. Well, yeah, from a financial perspective, right? Otherwise, they get fined. Who wants to be penalized
Starting point is 00:26:05 that's right that's not good maybe they they can position themselves on the market as you know kind of doing something and taking that issue seriously maybe they even get you know new customers by doing that so that brings them maybe money so i think it's also in the financial interest for our clients or for corporations in general to take this issue seriously and try to build sustainable IT systems that they have to use themselves to do their business. It'd be really interesting. I don't know if you have them on air conditioning units you buy in Europe, but in the United States, there's an energy efficiency rating. So it's how much is this going to cost you to run, right? It's more of an energy for cooling ratio. It'd be interesting if websites started getting some sort of energy efficiency rating on them
Starting point is 00:26:55 so that when you went to Amazon or anything, like right in the bottom corner, it'd be like, our systems are this efficient, right? And that might then guide people to be like oh well i have two choices and these people are more efficient so if i'm going to be energy conscious i'll i'll bring my business to the people who are uh you know making more effort to be energy efficient yeah i definitely know that there are projects out there that do exactly that you can kind of this is kind of a crawler you can you can let against your web and then it tells you, is that web page energy efficient or not? So they do things like, I don't know, if you have like, you know,
Starting point is 00:27:32 white background, white background, for example, is not very energy efficient. It takes a lot of energy. So I think dark blue would be the optimal choice as far as I know. Things like that, or if you have like huge animations on your webpage, right? They definitely, you know, require a lot more rendering power on the client machine, yet they are not so efficient. You know, use modern compression formats.
Starting point is 00:27:58 You know, maybe don't use JPEG anymore. Use something more efficient. So it's these little tiny things. And there are already kind of web pages out there that give you that energy efficiency coefficient of your offering of your web page. This kind of reminds me of
Starting point is 00:28:15 the web performance optimization days where we got the index of how complex is your web page. And obviously back then, I'm sure you all remember this, we looked at things like how many images were loaded, how big are they, how much JavaScript was executed. And it seems it's going in that direction
Starting point is 00:28:34 and then just turning it into sustainability. Hey, one thing that I thought coming back to the what can we do as individuals and what stuff actually needs to be done by, let's say, the big data center providers or the hyperscalers. Because obviously, they have to do their share in making their data centers
Starting point is 00:28:52 and their offerings more sustainable. But coming back to us as individuals, as developers, as a CTO in your case, or as sales engineers, I think we can change our habits, but the way you change your habit is if you're constantly reminded about the impact your current habit has. And when I think about what I do, the biggest impact on my daily habits
Starting point is 00:29:18 that I observe and that I've changed is my watch, because my watch tells me how many steps I do every day. And if I don't make my steps, I basically try to make my steps. So maybe we need something that reminds us every day, hey, you have consumed that many CPU hours because you're running your laptop, you're running five Kubernetes clusters that are in your name. So maybe just a daily reminder, like a daily report at the end
Starting point is 00:29:47 or at the beginning of your day that reminds you, Andy, why do you have five Kubernetes clusters running? Do you really need them for your demos? Yes or no? And with that, if you have a daily reminder, you can then actually change your behavior. Because in the end, we need to change our behaviors. Absolutely. I think transparency here is key. And this omnipresence of that data, you know, we're used to dashboards everywhere or, you know, fancy lights.
Starting point is 00:30:15 I mean, as a software engineer, you have a red light once you see iSystem fails and a green light everything once it's cool. Why not do the same for exactly that KPI? How efficient or how much did I use today? I mean, you could even track that down to release evaluation. If the cloud providers are not only tracking your consumption, but if they can tie that consumption to, number one, cost obviously would be a big big component but number two if they can translate you know your cpu whatever all your compute consumption in order to run that
Starting point is 00:30:53 equates x amount of energy part of your release can be we pop our release in and this is what our energy footprint changes right and is that an acceptable amount? That just becomes one more part of the decision. But Brian, I was just wondering if we should do a, from our perspective, the data that we have in our tools, maybe run a daily workflow that goes through all of the monitored instances and then sends out a report to the owners of these hosts and say, hey, by the way, you own 20 runnings. It could be something simple like this, man. I mean, us and a lot of other people already have those, right?
Starting point is 00:31:33 Where you have the underutilized cloud components, turning that into a workflow report. Yeah, absolutely. That would be a really cool thing. Yeah. I mean, definitely, there are a lot of observability solutions out there. And right now, most of them, or most of the time, they're used for monitoring the stability of systems. But the data is there, the APIs are there,
Starting point is 00:31:56 that can be curated to get that data, to make the well-informed decisions or alerting stuff on it so why not extend those observability solutions to well sustainability in addition to stability mario i'm just looking at one of his slides from your presentation i think slide number four or five in the very beginning and you have a picture of a notebook on the left and you have a picture of a fridge on the right. And what it says is, you basically look, and if I read this correctly,
Starting point is 00:32:32 it said there's certain energy that goes into the production, the manufacturing of our hardware, like fridge versus notebook, and then energy in operation or using it and the lifespan of a fridge hopefully is like 10 15 20 years whatever so most of the energy in that lifetime is actually consumed as you're operating it and on the laptop it's the other way around right because you you may be made by new laptops every three to four years so a lot of energy goes into the production and not a lot of energy actually into the production and not a lot
Starting point is 00:33:05 of energy actually into the usage yeah and i thought this was a really it was an eye-opener when you brought this up yeah and that's true i mean i'm brian brian just uh you know had the the example before of the you know um what you call it the you know the climate the acs you have like oh yeah the energy efficiency yeah i guess it. I guess it's the same there, right? It's pretty okay to manufacture them. Yes, obviously, it takes some energy, but you have a look at the energy efficiency coefficient. There needs to be an A plus or something,
Starting point is 00:33:38 so you know, hey, when I run that thing, it consumes as little as possible of energy know energy um and i have it running for 15 years and it's the same with the fridge so from a fridge perspective it's good to have a very efficient um unit and then run it as long as possible and unfortunately you know with our laptops i mean that has strange economical reasons again. You know, every three years, because the warranty runs out, we kind of, you know, dump the good M1 MacBook and buy the next, you know, more fancy one. And, you know, I'm a technologist. I like to run fast stuff. But it's kind of wasteful, right?
Starting point is 00:34:21 A lot of energy goes into the production of these units, and then every three years, I mean, what do we do with those computers? I mean, they're still working. I mean, obviously, if they're broken, you have to exchange them, but usually these PCs, they could run another five years. I still have a super old MacBook at home, and it still runs. I still use it privately so at least you know as a as an employer as a company you you should think about what do we do with our hardware how can we recycle them or how can we you know put them back into you know back into this this this circle so there are a lot of projects out there where you can kind of either donate your computers
Starting point is 00:35:07 and they are refurbished and resold so that they're longer, you know, I'm a father myself, so usually my old computers, my two daughters, you know, get for their schoolwork. So I at least try to make sure that, you know that the the
Starting point is 00:35:25 hardware I use it's kind of as used as long as possible in in my family for example right my wife my two daughters they get my you know they get my mobile phones and my and you reuse my computers so this is the least we can do right and yeah once it's really broken then at least try to get as much of those valuable resources out of those again. So you recycle them properly. I think there's another big factor there, though, which has just been, you know, if you go back to I remember back in way, way back, I installed Windows 2000 from five floppy disks. Right. It's the idea of as our technology or hardware gets more efficient, we bloat our software more, right? Which then makes the old ones not be able to run. So I think
Starting point is 00:36:13 there's a lot of responsibility on our side in the industry to not just say, hey, all of these laptops now have more memory and faster CPU. I can be more bloated, or I'm going to take advantage of the most latest technology that requires this bit of hardware. So now, I had an old MacBook, and I couldn't upgrade it any further on the OS. And then at some point, Google Chrome was like, sorry, you can't upgrade to the latest because you need the latest OS. And I just got stuck, and I'm like, this computer is working fine, but the software and not even the OS. I can understand the OS, but the user software, the desktop software was like, no, we need the latest OS. So if we're focusing on trying not to make requirements for restricting new technology requirements in the software we develop as much as possible so that I could still use Chrome or other browsers without having to need some new piece of hardware on the machine.
Starting point is 00:37:18 But it's not something that's taken into account. There's always been the Microsoft Windows problem of, you know, you're going to need half your memory just for the memory to run Windows, no matter what you have, right? Oh, I've got two terabytes of memory, great. One terabyte's your Windows operating system now. Like, it's always like, that is, again, it's a development problem, but that's going into the creation, the energy, the sustainability of all these components.
Starting point is 00:37:42 And besides all the efficient running our stuff in the cloud, we have to write stuff that's going to run longer on the hardware we have. And there's no real incentive for anybody to do that, though, because it's not like, hey, we'll make more money because someone having to buy a new laptop doesn't impact me. Yeah, absolutely. I mean, so far we've been super wasteful for the last 10, 15 years in developing the software or the operating systems. You gave that example. I mean, that was, you
Starting point is 00:38:14 know, the more the better, right? I mean, you have 4 gig, 8 gig, 16 gig, 32, 64, yada yada. And then CPU had to be more and more, you know, even faster. But I think it's time now to stop with that habit. There we are with the habits again, Andy. To kind of stop that habit and think consciously about, you know, our design decisions we make. And hey, I mean, there still are some really, let's say, slim, neat, small operating systems out there. I mean, you can run like, you know, a Linux distribution on your Raspberry Pi, for example.
Starting point is 00:38:53 I mean, we know that this is still possible. So it's time to reconsider and, you know, and take that as a challenge, as an engineering challenge. Hey, how can we downstrip the stuff again without losing the comfort we got? If we can make that, then everyone will be happy. We don't have to give up anything. Comfort is still there or productivity you know um but still you know we we can switch on our brains as engineers and uh try to try to optimize and it's not only the infrastructure as you as you said brian right it's the engineering practices uh we have gotten so fond of right each and every commit runs the full big blown ci pipeline i don't't know. Blowing out so much
Starting point is 00:39:46 energy. Maybe that's kind of a dead end. I don't know. Maybe we should reconsider how we do CI, how we do CD. I know about very, very interesting approaches that you can use as part of your
Starting point is 00:40:00 integration test, for example. If you want to see how efficient my software is and you want to optimize on the efficiency, I know a few approaches and a few projects out there that kind of say, hey, why don't, so you kind of measure, obviously you always have to measure, you measure like the base footprint of your software,
Starting point is 00:40:24 then you let kind of an integration test suite run. And then you kind of, you measure again. And then you have kind of the baseline. Then you have like, you know, the max on power consumption of your software. And once you have that data, then obviously you can do what we engineers do best. Start optimizing. Right. Yeah. I mean, some of the stories we've been trying to educate people on, right?
Starting point is 00:40:49 Like look at every single build that comes through and look at your key metrics, whether it's performance, CPU consumption, memory consumption, all these things now, and then detect regressions just because you made the performance 10% faster, is it justified that you're now using 50% more memory and things like this? Mario, just looking and also considering that we are getting almost to the end, but looking at the slides, I wanted to highlight a couple of more things because I don't think we've mentioned it. I mean, you brought up earlier there are in Kubernetes and in Cloud Native a couple of great projects that help us. For instance, we can auto scale based on all sorts
Starting point is 00:41:31 of metrics. I wanted to highlight CubeGreen. This is a project that you mentioned in your slides. I think you also talked about Carbonwarealing with KEDA. I think you also talked about Kepler, if I'm not mistaken. Just like maybe a couple of thoughts on what are some of the projects that in case people have not heard about them, what do they need to know? What are important projects in the CNCF space? Okay, I mean, let's start with the last one. I would say Kepler is a project you definitely have to have a look at. What they do is they leverage ePPF. I mean, ePPF is kind of the hot topic right now in the observability space.
Starting point is 00:42:13 But what they do with ePPF, they kind of hook into the Linux kernel performance points points and measure the energy consumption of the processes and the ports and the containers running on your cluster. Once you have the energy consumption, you can then calculate depending on where you run the CO2 footprint of that.
Starting point is 00:42:40 That gives you full transparency and as we all know, if we want to optimize things, we don we want to optimize things we don't want to optimize into the wild into the blue well we need you know we need the data transparency then we start optimizing and then we see if our optimization worked or not so i would definitely say that that is something um you should have a look at and you should follow that project closely i mean cube green is an example to reduce waste. There's another project, for example, called Cube Janitor that I got aware in a recent meetup.
Starting point is 00:43:14 So they both kind of try to do the same. Basically, it's a cron-based scheduler. You give it a cron expression and you say like, okay, those deployments, those cron-based scheduler you give it a you know you give it a cron expression and you say like okay those deployments those cron jobs those um stateful sets please scale them down at six in the evening and scale them up again in you know eight in the morning really simple super slim operator easily installed on a kubernetes cluster comes with a helm chart so you know a piece of cake cake to run that on your cluster to reduce the waste. Scaling-wise, well, you know,
Starting point is 00:43:51 it's the default Kubernetes cluster autoscaler or Carpenter. If you're running your workloads on AWS, then I would definitely recommend to have a look at Carpenter as a project. That gives you a lot of flexibility on, you know, on deciding on which CPU class you want. Should it be spot instances? Where should the instances run?
Starting point is 00:44:13 It's super fast in scaling up and scaling down. So also in kind of making that really snappy. So Carpenter for cluster autoscaling and for workload autoscaling auto scaling yes you also mentioned keda so keda in a way is a very flexible event driven workload auto scaler that you can for example use if you have a message queue like a rabbit mq or maybe a kafka topic or something and you have kind of event driven system then, then you could do the horizontal port order scaling logic based on how much data do I have to process, you know, how many messages
Starting point is 00:44:51 are there on the topic or the queue, and then scale up and scale down. And then there is, I think that comes additionally, it's somewhere on an Azure or Microsoft GitHub repo, there is this carbon-aware scheduling it's somewhere on an on an azure or microsoft github repo there is this uh there's a carbon aware scheduling operator that kind of interacts with kita and based on the the carbon intensity of the of the location where your cluster is what you can then determine or set is the the maximum amount of replicas so if you know the energy is very dirty right now, you can kind of restrict how far you do scale out, right?
Starting point is 00:45:32 So that's kind of a cool thing. And the stuff I've been made aware of, I think two weeks ago, what I said is this is kind of the biggest discipline when you want to shift workloads based on carbon emission. So what you need is a multi-cluster scheduler. There are a few projects out there. One is called Kamada, and you have the open cluster management project.
Starting point is 00:46:01 And what both of these projects allow you is to hook in specific custom placement logic. So it should be fairly simple to build a custom operator that kind of, you know, implements that logic,
Starting point is 00:46:19 curies some public API where you can, you know, query the carbon emissions, the carbon intensity of the energy in that region and then do some placement logic based on, hey, I have a cluster in Germany, I have a cluster in Finland.
Starting point is 00:46:37 Germany, during the day, we kind of have a lot of sun, you know, maybe the energy is pretty okay green during the day, but in the night we use a lot of sun, maybe the energy is pretty okay green during the day, but in the night we use a lot of coal, so better move the workloads to Finland so
Starting point is 00:46:51 we can reduce that. There is a lot of traction right now in the community, and I'm pretty sure that even more interesting projects will come up. This is fascinating. I'm taking notes and notes and notes.
Starting point is 00:47:10 That's why it's so cool. Mario, Brian and I, we always repeat on this podcast that we're the ones that benefit the most because we get to talk with so many cool people and we just learn new things all the time and it's really great. all the time and it's um it's really great um yeah by the time that this uh podcast airs you mentioned sustainability week
Starting point is 00:47:32 uh it will have happened in the past but nevertheless i'm pretty sure the sustainability week that happened early october or second week of october uh will be repeated uh most important is that it it starts a movement. It brings awareness to the topic, to a global audience, so that we change our habits, so that we are aware of our impact that everyone has and that we can become all more sustainable with every action we take.
Starting point is 00:47:59 Yep. Cool. Yeah, Mario, did we miss anything? Any final thoughts? No, we didn't miss anything. And the final thought maybe is just the closing word, but you can have the closing word once I'm done. It's like, well, we have to start, right? We have to start. There is no perfect solution um i think every little bit counts right if each and every one of us and they say engineers software engineers software architects i.t staff um tries to do a bit and i think in the end you know we have kind of a huge movement and uh yeah we're gonna crack crack that sustainability nut. Awesome. Andy, you? I know I have nothing else to say. I'm very thankful that we have guests like you,
Starting point is 00:48:53 that I meet people like you, and then they are open to share thoughts and experiences with us on the podcast and how many people we reach with this podcast. Hopefully some of them will change their habits and therefore we contribute to a better future. Yeah. And I think also just the awareness is key, right? Even coming into this, I was aware of some of the sustainability efforts, right? But I had no idea that there was all these projects. So you could just think of almost every developer out there currently,
Starting point is 00:49:23 or relatively speaking, probably thinks maybe a little bit about this, but is like, well, how am I going to tackle that? Knowing that there are so many of these projects out there existing already, and so many people working on this stuff already, and that there's even meetups, and the other event that you mentioned that's going on,
Starting point is 00:49:42 I can't remember it right now. Yeah, hopefully just even people hearing this gets the spark going, gets them investigating and gets them thinking a little bit more along the lines and it starts slowly growing. But then on the flip side, like a lot of these things, we will need some sort of regulatory incentivization for the corporations to embrace it. It's really good news to hear that the EU's got some of that going on. Obviously, in the United States, there's, you know, the two camps of get rid of all regulation and privatize everything, and the other camp of, no, let's regulate stuff because we know people won't do the right thing. So, hopefully, we'll start moving to the right side or to the, I shouldn't say right side because that's the wrong side to the correct side on this over here as well.
Starting point is 00:50:30 But I think it's with efforts, efforts of use, not only working in the field, but spreading the word is really helpful. So thank you, Mario. Thanks. All right.
Starting point is 00:50:42 I hope everyone listening got a lot out of this today and hope it inspired you as much as it did Andy and I. And thank you everyone for listening. We will see you next episode. Bye-bye. Bye. Bye.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.