 The next talk will be from Thierry Cares. He is the Vice President of Engineering at the OpenStack Foundation and he will present to us why open infrastructure matters. Quick introduction. I've been actively contributing to a number of free and open source software communities for the past 16 years and my first first day was in 2005 and back then it was very much like it is today except it was much more difficult to get food. There were no food trucks, there were no open cafeterias and it was not as pleasant as it is today. The idea behind this talk really started with a paradox. We are here at FOSDOM, the free and open source developers' European meeting because we believe that open source is a superior way of building superior software. And yet, if we look at what we are using day to day to write this software, I'm seeing like in Devrooms yesterday, even in this room today, even in the Freedom Track, I'm seeing a lot of MacBooks out there. And sure, those might run open source software, but the operating system delivering it to you is very much proprietary. So even here in this temple of free and open source software, people are using a proprietary operating system to build open source software. And before you start laying the blame on your neighbor in the crowd, I'm pretty sure a lot of you are using GitHub. I've told it's free as in the year for open source projects and it's very convenient, has lots of features, but it's also not open source. So can we really say that we believe that open source is a superior way of building superior software if we are not trusting open source for things as intimate as our laptop separating systems or our development tooling? Benjamin McOhill argues that free software is only as free as the tools you are using to build it. And I agree with that because if you are using proprietary tools to build open source software, then you're subject to the whims and the limitations of that service provider and your software is not really free. The runtime side of this paradox is that a lot of the open source software that we write today ends up running on proprietary infrastructure. And by proprietary infrastructure, I mean Amazon Web Services, Google Cloud or Microsoft Azure. Sure, you might request a Linux VM or Kubernetes cluster to run your applications on, but the infrastructure service delivering that VM or that cluster to you is very much proprietary. So in the same way that we'll advocate here for using more open source in your development infrastructure, in this talk, I would like to advocate that we do the same for our runtime infrastructure and use open source solutions for providing infrastructure, what we call open infrastructure. Because it's better, but also because it matters. And so first, what do I mean by development infrastructure? What do I mean by runtime infrastructure or computing infrastructure? And why do people need it? If you look at the history of computing, it's all about piling up layers and obstructions. And this is primarily done for two reasons. One, there is market pressure on one side. When you have a given company owning a certain layer, the way to displace the old king is by commoditizing that layer and building a new layer on top of it where differentiation is happening. That's basically what Microsoft did in the 80s and the 90s to displace the IBM PC platform, which was dominant at the time. On the other side, there is developer pressure. Developers are looking for more convenience. So they're interested in building new layers to obstruct the differences between the lower layers, like web browsers being used as an application platform to obstruct the differences between operating systems. And this piling up of layers and obstruction is happening on all sides of our industry. Like if you look at application delivery, for example, traditionally you would represent applications like this, like users on one side and applications on the other. But the way you deliver those applications has been evolving. 20 years ago, when I started, you would procure some physical hardware and as an application deployer, you would install an operating system and then all of your dependencies and then your application on top of that. But we started to add more and more layers. First, we added hardware virtualization, so when you're constructing the server, your application is running on from the physical hardware that actually runs it. Then we added a new layer, Cloud APIs, to allow you to programmatically access those virtualized resources. So you have programmable infrastructure on one side and cloud-native applications being deployed on top of that. More recently, we added a new layer, application deployment APIs, which is basically what Kubernetes provides. Higher-level primitives that you can use to deploy complex applications on this programmable infrastructure. So the infrastructure space has been evolving. We are seeing an evolution towards with developers and application deployers wanting to care less and less about infrastructure details. We are seeing an evolution towards using commodity hardware. So when your needs increase, rather than scaling up and buying a larger server or more specialized server, you scale out by buying a lot of similar machines and you spread the load among them. We are seeing an evolution towards commoditized runtime environments. So rather than having a highly curated and tuned runtime environment that you have to make sure it never dies, you are moving towards using disposable, easy-to-recreate runtime environments that you can easily kill and recreate from scratch. And we are seeing an evolution towards lighter and lighter runtime. So from physical machines to virtual machines to containers to functions. And there is no reason to think that this evolution will stop there. And finally, as we add those abstractions, the share of complexity that is handled by software compared to hardware is increasing in order to optimize utilization, in order to reduce development and deployment times or costs, to change more often, to react faster. So we are building more and more of those layers in the infrastructure space. And as you pile up those obstructions, it's clear that there is a growing separate role of providing infrastructure for others to deploy their applications on. And this is really the population that we care about when we are talking about providing open infrastructure solutions. The people that provide that infrastructure can be private infrastructure for the needs of a given organization, or can be public infrastructure for anyone around the world with a credit card. But it's the same job. And that's really the new role that we are trying to facilitate. So now that we've set the stage and explained what we mean by computing infrastructure and the people that are actually trying to serve, why should you adopt open infrastructure? Why should you prefer it over using proprietary infrastructure that is already available and ready to use? Well, the first reason is actually obvious. Open infrastructure is based on open source software. So it shares all the benefits, the business practical benefits of open source software. And sometimes it's easy to overlook them. We're probably in this crowd have been using free and open source software for a while. And so sometimes it's easy to overlook why a business would choose open source software. The first benefit is availability. The fact that there is no barrier, monetary contractually or otherwise, to try out the software with all of its functionality. The fact that you can simply evaluate it for future use, play with it, just have fun with it. The fact that there is no friction going from that experimentation to production. So it's really, to me, one of the major benefits of open source software. But even more important, especially in the corporate setting, is sustainability. When an organization makes the choice of deploying software, it does not want to be left out without maintenance because the vendor changes its mind or goes bust. And so the ability for anyone to take and modify the source code means that you're not relying on the single vendor for long-term maintenance. It also conveniently avoids finding yourself locked in because the cost of switching software is just too high and you end up on the vulnerable side of the deal. Another key benefit of open source adoption in a corporate setting is that open development methodologies make it really easy to identify and attract talent. Companies can identify potential candidates based on the open record of their contribution to the technologies that they're interested in. And conversely, candidates can easily identify with the open source technologies that organizations are using. So they can join those companies with certainty and they will be able to capitalize on the experience that they will have there. It's much better than working on proprietary software which you are not even allowed to talk about and you will have no chance of encountering ever again in your career. From a technical standpoint, access to the source code means that you're able to look under the hood and understand by yourself how the software works or why it behaves the way it does. Transparency also allows you to conduct independent security audits for looking for vulnerabilities. But beyond that, the ability to take and modify the source code means that you have the possibility to find and fix issues by yourself without even depending on a vendor. This really further increases your ability to react fast to unexpected failures or unexpected behaviors. And finally, last but not least, you have the possibility to engage in the upstream community producing the software and influence its direction by contributing directly to it. The organizations that engage in upstream open source communities are more efficient. They are able to anticipate changes. They are able to voice concerns when the community is making choices that will adversely affect them. They can make sure that the software adapts to their future needs by growing the features that they will need tomorrow. And those are not like abstract or philosophical benefits. Those are really practical business benefits. And the main reason why companies all around the world today adopt open source software, including open infrastructure. But using open source software for providing infrastructure also gives you three additional benefits, which we call the three Cs, Capabilities, Compliance and Cost. So first, Capabilities. So back in 2010 when we started OpenStack, there were people saying that there would soon be a standard cloud with standard size VMs and that competing against Amazon Web Services in providing that service was a losing value. And yet, 10 years after, we're seeing clouds in all forms and shapes. We're seeing IO optimized instances. We're seeing memory optimized instances, CPU optimized instances, GPUs, verminal instances. So clearly one size does not fit all. And some of those features, if you want access to a specific feature set, are really overpriced in the public cloud market because it's really difficult for them to provide those specialized resources with the same margins as they have for their standard size VMs. And some features that you might need are not available. So, for example, if you want a specific piece of hardware within your servers, well, it's difficult to find it in the public cloud. If you want an atomic clock in your servers, well, there's just no public cloud that will offer you that, even if they are using it themselves. And so, using open infrastructure, you can actually decide what you put in your servers. You can have the extra flexibility, the extra extensibility, the feature set that you want exactly in your servers. Open infrastructure also allows full compliance with local regulations. It's especially important in Europe because we have very strong privacy laws. And so data locality in particular is very critical. But we are seeing that concern transferred to other parties, like governments potentially being spied on by the countries where their public cloud resources are based. And or strategic organizations like Airbus or the atomic research groups which are potentially also spied on by the same foreign spies. And finally, we're seeing more recently concerns from companies that are competing with those public cloud providers and running their infrastructure on their services, like Netflix, for example, competing with Amazon Prime Video while running all of their infrastructure in Amazon Web Services. With open infrastructure, you decide who has physical access to your servers. And finally, the last C is cost. So as an infrastructure provider, if you're interested in providing private infrastructure for the needs of a given organization, there are a number of proprietary software solutions that you can choose. But those really have high licensing costs, so the cost can add up quickly if you start using really your infrastructure. The licensing cost really adds up. And so using open source for those solutions will allow you to keep those costs under control. And if you're a company interested in building a public cloud, so for anyone around the world with a credit card, you can start from scratch. There is just no solution out there. So you can write something from scratch. And to be honest, you will probably get to something working really fast. OpenStack Nova was written in prototype over a weekend of coding. So it's not rocket science. You can get to something working really fast. But there is a reason why in the past year, OpenStack still saw 47,000 changes, 10 years in. It's because the devil is in the details in all the coroner cases. And so being able to rely on a community sharing the same code will save you massive amounts in development and maintenance costs over the long run. So those three Cs are yet another reason why you should adopt open infrastructure. But now I want to talk about how open infrastructure facilitates interoperability and hybrid cloud scenarios. So at that point, you may wonder, hybrid cloud, like isn't that a buzzword from industry? Well, yes and no. The traditional thinking behind choosing between public and private cloud goes a bit like this. So if you look at the price profile of a public cloud and you graph the cost of your cloud per CPU core, with public cloud it looks a bit like this. You pay a certain price per CPU core until you hit a number of cores and then you hit new pricing tier and price goes down a bit, et cetera, et cetera, until you hit the final pricing tier and that's the price you will pay for extra units forever. The price profile for a private cloud on the other hand looks a bit like this. You have this high investment upfront then you hit economies of scale and at some point you need the point of diminishing returns so it just goes like this at the end. And so the choice between public and private infrastructure looks simple, like above a certain number of cores makes more sense to use private infrastructure while under a number of cores it makes more sense to use public infrastructure. But in reality things are a bit more complex because this assumes that the amount of resources you consume is a constant over time and in reality your usage probably looks more like this, like with spikes and drops in usage. So what really makes the most sense economically is actually to use private infrastructure for those resources that you're always using and use public infrastructure elasticity to absorb the spikes in usage which is what is called hybrid usage. And open infrastructure is really great for those hybrid scenarios because you can use the same software on the private side and on the public side. That allows you to optimize cost because you can use private infrastructure for all those resources that you're always using and you can use public infrastructure for those spikes but it also enables capabilities and compliance because if you need specific hardware for specific workloads or you have data locality requirements you can run those on the private side of your infrastructure while still using public cloud. And using the same software and APIs on the private and the public side allows you to reduce applications costs because you don't have to validate separate versions of your applications based on where they are running. It allows you to move applications around from the private to the public side of your infrastructure and vice versa. Examples of open source software that provide that kind of interoperability include OpenStack which provides interoperability at the infrastructure as a service layer so you can find private clouds running OpenStack and public clouds running OpenStack but also Kubernetes which provides interoperability application deployment layer so any cloud that provides Kubernetes gives you some interoperability there. So open infrastructure is pretty great obviously I'm trying to make a case for it but it also makes sense for tomorrow and what do I mean by open infrastructure is future proof. Well obviously it's hard to know what the future holds I certainly don't know that but we are pretty sure of a few things we are pretty sure that abstractions will continue to be piled we've gone from virtualization to cloud APIs to application deployment APIs this is clearly not over we're also pretty sure that there is no technology that will end all technologies we are using VMs we are using containers we are now using functions and there is no reason to think that containers somehow is the end to all things there will be new things invented tomorrow and we are also pretty sure that we will need to provide infrastructure for those new technologies infrastructure will always have to be provided applications will always have to run somewhere even serverless need servers and in that uncertain future open infrastructure can help because with open source you invest in communities you don't invest in products and those communities tackle a problem space they are not only producing a specific narrow solution so for example the open stack community is not about producing open stack it's about taking the perspective of the infrastructure provider and helping them build and operate open infrastructure if we need to create other pieces of technology other open source projects like if that community needs those to provide open infrastructure then they will be able to do it so investing in that community lets you share issues and other infrastructure with other infrastructure providers and build solutions for tomorrow whatever you need there to summarize that's pretty fast so to summarize we've seen several reasons why as an infrastructure provider you should adopt open infrastructure some of them are like good business reasons based on the fact that it's open source some of them are more specific to open infrastructure like capabilities, compliance and cost we've seen how it enables interoperability and hybrid cloud usage we've seen how it better prepares you for whatever is coming up tomorrow but there is really a deeper reason why you should choose open infrastructure and it's that open infrastructure enables innovation I mean I love open infrastructure because I don't want a world where all of the infrastructure needs will be provided by a couple of internal giants or worse, by a monopoly why? well first monopolies are bad I'm not really sure that's something people can agree with they really distort good market conditions in the end they limit innovation and the prices go up so having concentration of infrastructure providing in a couple of big shops really creates a problem it's not really sane but what's even less sane and I would say borderline dangerous is monocultures monocultures are vulnerable if half of the internet is running off a single infrastructure provider then it's not resilient at all a single class break can lead to catastrophic failure and what used to be mildly annoying because you could not check your Facebook feed anymore with more and more devices being connected to the internet and relying on the internet to function what used to be mildly annoying so it's really important that we have diversity to avoid monopolies and monocultures but beyond that giving everyone access to infrastructure providing technologies allows everyone to play and innovate if you restrict innovation to a couple of big shops you're limiting what the world can do so it's important that we have strong open source infrastructure providing solutions available for everyone it allows us to distribute the future more evenly and actually is really why open infrastructure really matters and why I would like you to adopt more of it tomorrow thank you for your attention it's like 30 minutes for questions now so does anyone want to ask any questions? thank you for the wonderful presentation I have just one quick question what are we doing to address barrier of entry? so take a little example I work for a startup we need to spin up infrastructure today and fast I can do it in Amazon in two or three days but I care about open source we care about freedom and not being vendor locked in what would be the way to do the same with say open stack? so you can opt for public cloud sorry? you can opt for a public cloud that is actually based on open stack we have a number of public clouds in Europe in particular it's difficult to make a dent on the public cloud market in the US right now because it's really a cutthroat between Amazon and Microsoft and Google but in the European market there is really a strong footprint of open stack based public clouds because we have unique concerns in terms of data locality and regulations so it's really attractive we have an ecosystem of companies I won't name any of them because that will be forgetting one of them and making enemies you have options that will let you benefit from the fact that it's ready to use I'm not saying you should do private clouds I'm saying you should take into account the fact that at one point you might reach a level of utilization where it might make more financial sense to start setting up your own infrastructure especially once you have your needs start to stabilize it's easier to know how much you actually would benefit from implementing some of it in a local private infrastructure but you can prepare for that future by opting for open stack based public clouds in Europe we'll have a market this one are there any other questions? ok, thank you very much for your talk