 This is Satan Bharti and we are here at OpenSUSE conference in Prague and today we have with us Panos. I was looking at your talks here and it was on serverless. Because serverless these days is kind of a hottest topic. But the funny thing is that even if the word is serverless, there is a server in a serverless. Yes, exactly. So can you explain from your perspective what is serverless? Yeah, sure. Well, the word serverless itself is a sarcasm to the technology itself. It's also a buzzword that everybody hears and say, what? So serverless is basically a way that you can use function as a service. Meaning like nowadays everybody runs applications in containers. And back in the day we use virtual machines. What is the problem with virtual machines and we went up to containers? First of all, in order to realize that the virtual machine is online, you have to wait a boot time. So you don't know that this machine exists because you don't see it, it's virtual. And you realize it when it's online. That's the first thing and the second thing is that virtual machines in terms of space storage is quite big. We talk in terms of gigabytes. In case of containers, they are very small. We talk about in terms of megabytes. And also you can realize that they are online almost immediately in terms of milliseconds. Now we live in the area that containers are still not enough for us like microservices. And we chop down these microservices into even smaller units called functions. So functions altogether they basically make your service. And the good thing is that since you have a container which is small and fast, if you put code that is small and fax execution like functions, then basically if you have an event based infrastructure, let's say you have a WordPress site and you use functions or something like that, then when somebody visits your site, your site doesn't need to be online in that case. The nginx can start only when somebody asks for it, means like the service, the web server in that case doesn't have to be online. Why? Because it can be online so fast in terms of milliseconds so the user doesn't realize that this thing doesn't exist before. He doesn't feel any delays. So if he doesn't feel any delays, what's the point of having this running? So some might say that another term of serverless is not yet a service as a service because the service is not running. Now why so hot? Because it makes you spend less money, like considerably less money. Like even 90% less. So to my presentation that there are some, in terms of numbers, I think one company was paying $10,000 in AWS and using serverless they dropped down to $350 which is huge. So people will look into that just for this because money. And the second thing is fast. So if you ask me why everybody is not going into serverless right now, first of all is new technology. With all new technologies, now it's the time that the technologies cost effective so people start looking into it. It's not that mature yet. There are many implementations. There is no any standard way. That's why the CNCF is now looking into that. Actually last year they created a talk technical oversight committee or something like that and they try to standardize the way people write those functions and get and send those events. So it might not be that everybody is using it right now but I think in the next five years it will spread like a wildfire because of these two things cost and speed. But can serverless be an answer to all the applications? No. There are websites and servers.lol. You can visit this website and you can put there your application how many traffic you expect to have and it will make the website backed by AWS I think and it will make the calculations if it makes sense for you to use it or not if you are going to save money or not. But serverless is not meant to replace everything. It's meant to be an extra tool for your IncoSystem to make it even smoother and faster. It's not meant to replace your whole thing. Yeah because you said in five years everybody will be using it. That's why I asked a question. Yeah, exactly. I mean all these things with CI, CD, having bots go to IRC or Slack channels and say like event driven stuff. The world is going to event driven automation. Not polling but wait for the event and when this is happening then go into inaction. And one of the use cases I may be wrong of event driven is IoT devices. Yeah because if you have thermostat the temperature rose and then you have to trigger something or your camera spotted something you trigger something. So do you think that will also have a massive use case in IoT device? Yeah sure. I mean imagine use case at least what I'm trying to build for my home since we talk about home automation that case. I have a Kubernetes cluster with Raspberry Pis. Why? Because it's fun to do and learn about the technology. And the next thing is that what I'm doing is I'm writing my own functions what I use at my home. For example instead of buying Amazon Echo or Google Voice I didn't remember how this device are called. I just write my own functions like if I say open the light gets opened in that case. So you can automate your whole thing. For example when you go and buy Coca-Cola from Fritz and by the time you swipe your credit card to this vendor machine what is happening is that an AWS Lambda function evaluates your transaction. So Coca-Cola in that case pays only when you buy for a Coke. And the same things like speaking of IoT devices you can do at home also. That means Coke should be cheaper now because Coca-Cola is not paying that much. I don't know. Maybe. You mentioned Lambda and that is the thing that we with serverless is that there are three big cloud providers. Google Compute is there, Azure is there and AWS is there. So when you talk about function service most of the services are tied to these platforms. So you get vendor logged. Yes, that's true. And actually if you are going into this ecosystem right now you are kind of logged to use JavaScript. But there are open frameworks like the one that I presented like OpenFuzz which allows you to use other languages, Python, Ruby, Go. And basically what you do you deploy your framework that you like there and then you are free to write your code in whatever language this framework supports. But yes if you are going to use public clouds like Amazon AWS or Google Compute Engine or Azure I'm sure the best way and the most comfortable way to use what they offer to you but you can also deploy your Kubernetes cluster and then do your own thing. So there is no risk of vendor logging are you saying? I wouldn't say so at the moment. I mean it depends how much... Azure function, once you have started using it you cannot just move that workload to Google or to... Yes, in that case you are logged. Yeah, exactly. So what is there to break that lock? Because the whole point of open source or even CNCF is not their goal but the point of open source is that when you are neutral you can move around. Yeah, that's why there are framework like OpenFuzz as I said and the CNCF is trying to standardize that because it doesn't want to get locked in that case. So instead of doing the Amazon way or the Microsoft way, do it the open source way. Like pick a framework, this framework I guess it will be easily supported by those platforms and if they are not still you can bypass them and bootstrap your Kubernetes cluster there. So you mentioned OpenFuzz so what is your involvement? Are you involved in the project? I'm involved by writing some blogs, back in the day I was quite a blogger writing Linux articles so it picked my interest so I started testing it, I saw how it works, I talked with... I also met the main guy behind the project Alex Ellis and I really liked the openness of the project in that case. First of all it has the open in the title of the project which is cool and then it's really community driven. I am their Slack channel and my next goal is to build a package for OpenSuzer and having OpenFuzz tested in OpenSuzer in that case because I use it and OpenSuzer gives me this possibility that you can involve into the process through OpenQA in that case and I would like to make sure that OpenSuzer works with OpenFuzz 100% so that's the future in that case, how I would be involved into that project. And you were also talking about one of your pet projects that you are working on. What's that? This is called Agatastasis, it's a Greek name since everybody in the Kubernetes world even Kubernetes is a Greek word, I was like let's name it Greek, I am Greek Agatastasis was a project that started last year during hug week in Suzer and basically I was learning about containers, I was experimenting and this is why it's fun because in the end I received a lot of good feedback about it. What this project is is basically a way that you can test the whole ecosystem like you have right now in OpenSuzer we have 55,000 packages and I would like just for fun to make sure that each one of those is able to be installed in a clean Docker image meaning I download the OpenSuzer image, I install all the packets destroy it, another one, another packet so basically 50,000 containers in that case just to collect some statistics and I found really nice things, I found some bugs, I found some other problems that are happening after the installation in the post installation scripts and my next goal is actually to do the same thing for the rest of the distributions at least for the big ones Ubuntu, Fedora, Debian and have a website that I can aggregate statistics for all of those distributions like how many packages are installable, are not, which version of Firefox is at that time and if I can to do it also serverless. I'm sure you are familiar with these websites that you visit and it's like is it down or just me? So imagine something like many people have repositories from personal developers because they need these packets and this packet is not in the official distribution so their system is not in a very good state or it's a custom state let's say so they want to know if these packets that they're going to install is truly broken or it's their system problem they can just visit this website in that case that will be serverless so a function will be try to install the packets through zipper in a proper system and let's you know if this is okay or not some ideas, experimentation, it's mainly for fun so let's see how this goes, I talked with the guys from the build service there might be some use case there because there are some corner cases that still we don't cut in build service or we do cut them but not in the most efficient way without using containers so I'm looking forward okay we talked about serverless, we talked about open fast, we talked about anything else do you think we should talk about or we covered some basic topics I think we covered most of them I would just like to make a mention that now we have cubic and we would like the community to embrace the project we would like people that even they are not very familiar with containers to give it a try, to give us some feedback because why I'm saying that the way that OpenSuser community works is that it's very open so if somebody has some use cases he can influence the project and shape it in the way he wants to work with that and exactly because it's the beginning of it the influence he has a big impact in that case just to give you one example I was recently playing with rootless containers and in rootless containers there are some packages like Umochi, Scopio, stuff like that and I've put the test in open QA and now I make sure that cubic always work with rootless containers I don't know if any other distribution does that or if they have the packages but as I said come over and let us know what you guys think about it Awesome, thanks for talking with today and hopefully we'll see you again next time when your project is more matured and we'll see next time what is the state of stateless serverless application Let's go computing