 that was amazing. I have to start with a confession when I did make the bold prediction earlier that if we combine all these different technologies we could do something powerful. I'd already seen that demo so kind of new. It wasn't really fair but one last note for those of you out there who are playing buzzword bingo if your card has smart city iot docker and kubernetes yell out bingo because you're a winner bingo wow i should have known it would be guillaume albashan from digital film tree thank you guillaume he's actually the cto of an awesome startup in la that's been wiring up the whole entertainment industry and he's he's been part of several keynotes so we had to give him a camo today and he spent all day for better or worse shopping at allen's boots um for those five seconds so thank you for for owning that um and he'll be he'll be at rainy street later so come by to see him um so anyway like i i've been talking this morning about collaborating how we've got to talk with other communities and i'm happy to tell you that we're going to start by doing that right now and we're going to bring out a couple of folks that are really active in some of those other communities that we were talking about earlier uh first is going to be uh joining us is craig mclucky who's from google uh he's a group product manager there is very very involved in both kubernetes and a lot of the the google cloud uh platform work and of course uh the ceo of coro s who's a friend of mine it was actually one of the 75 people at the very first austin summit and if you if you tweet at me i'll send you this the secret photo of him from the first summit his hair is like this big so alex pulvy come on out morning folks my name is craig i'm a product guide google and it's been amazing to watch over the past few years uh the growth and adoption and velocity um of open stack as a technology that's bringing infrastructure and service primitives to developers and operators everywhere my journey with cloud computing started about six years ago uh with a technology that looks a lot like open stack in its own way it's called google compute engine uh my first project at google was to bring traditional infrastructure service primitives to google i can tell you it was tough it was hard to uh you know bring a massively scaled infrastructure service offering to the world uh but i was very privileged in many ways because i was building on google's infrastructure now google's built over the last uh decade or more uh some very progressive infrastructure that makes it easy to build distributed systems at scale and it embodies a set of patterns that we've come to call cloud native computing and for me cloud native computing is really about three things it's about operating applications that are packaged in linux application containers which gives you a hermetically sealed repeatable deployment um atom that makes it very simple to get your application out there into a production environment the second piece of it is about uh dynamic scheduling so we have a system called borg uh which is responsible for figuring out how many containers need to get deployed you know where they should be deployed what the health of anything that is running is and uh and you know it results in far higher efficiencies for far less operator input which is great and the third thing about cloud native computing is about microservice oriented applications being able to create loosely coupled systems and so when i thought about you know where to go from here you know we we produced a basic infrastructure service offering it was clear that the world would benefit from the same set of technologies that we at google were able to build on when we're building uh computer engine and so we embarked on a journey to create kubernetes which is an open source cluster scheduler for docket containers but we also looked at building a broader foundation called the cloud native computing foundation so alex myself and a broad array of folks from industry that were really conversing in these paradigms put a lot of time and effort into building this thing called the cloud native computing foundation and when i look to the future and you know where we're going next our first port of call is finding ways to bring these technologies to the adjacent communities and to work with the adjacent communities to use the amazing technology that they already have to accelerate these patterns and open stack obviously is a really interesting first port of call it's important for two reasons one is because hey there's some really great technology that we can use to to build and establish these clusters that can actually run these progressive applications but two is open stack is a community that can absolutely benefit from the same set of technologies that i had access to when i was building computer engine and this morning alex is going to walk us through a really interesting demo which is reimagining the management of open stack from a cloud native perspective so at core west we're building this concept of called giffy or google's infrastructure for everyone so naturally it makes a lot of sense to work with craig and team of google around kubernetes to do that and today we're going to show um something that has never been done i think before ever as well as never be done live on stage so we're going to show you a fully containerized um open stack on top of kubernetes so let's do it mark you're going to want to get back out here for this all right show what you're doing so as we do this i need you all to free your mind okay open stack is just an application it's some python it's some c code it's a bunch of things but it's an application no less so it is subject to installation and upgrading uh lifecycle management just as any other application is um and so what we're seeing here is horizon this is something that that many of you should should recognize and i've seen um we have a cluster running a one one vm right now this is called lone star um and we have a hypervisor oh log me out perfect let me just log in it shows that the log in is indeed working and so we have one hypervisor uh in this cluster okay so now i'm going to jump over to the kubernetes view tectonic is is our distribution of kubernetes uh that we put together and in this we have six physical servers right here so these are bare metal servers that are running through one of our partners a packet they're bare metal as a service provider and and we'll see here that uh there's these set of pods and i'll explain pods in a second but what i'm going to do is first label this machine um for app equals compute so what this is doing is telling kubernetes that this machine is um meant to be another hypervisor in the cluster so if we look here we already have this one running um you'll see uh that it's a kubernetes pod uh a pod is the base object within kubernetes it is it's it's the logical unit that gets deployed out to a server unlike a straight container one pod can have many containers so in the case of horizon here it just has one that's the the the web application itself but when we jump into this compute node here this pod actually has many containers and you'll see that is doing um doing nova compute which is the the agent that actually talks to open stack to run run the run the hypervisors it has libvert itself in here now remember libvert is just an application it's i believe it's written in c it has a little api just like anything else it needs to be upgraded and maintained um we have sensing a trend here yep we have neutron um and the agents associated that and all the open v switch components so we're we're fully containerizing the network the hypervisor and the control plane components here okay so this i believe was the one that i launched we can go over here click let's just check out the logs really quickly um to see how everything is going um let's see you can read this real fast yep looking good all right so if i were operators out there that can actually read the logs that fast look at that guys i refresh there's another hypervisor added to the cluster this you're seeing it first here ever all right never worked before yeah exactly first time it worked was live on stage okay so let's go do something fun let's go launch another server here we'll call it stubs we'll launch uh core os of course uh as our virtual machine so what you're seeing here is i'm launching on a bare metal cluster a new vm um that is fully containerized every single component of this so i'm going to go launch the instance we see our friend stubs here is now spawning um right there maybe maybe we'll go get some stubs in lonestar after this okay sure so okay um i'm going to just click into lonestar because it's already up and ready and just show that this vm is is ready to go it's it's online um and up and running um i bet at this point if i jump back over to the instance view we'll see that our friend uh stubs is up and running too so we booted a vm on this cluster i could jump back over here to the operator view and we would see those these logs streaming by of the actual nova agent again launching a machine so fully container at the end of the demo or does it get better oh we got more let's keep going how much time we got i better get moving all right so the next piece i want to show you guys is that we can self heal the clusters okay so i'm going to go back to this machine and i'm going to instead of making it a compute node i'm going to now make it a different one so um i remember how to spell this here uh non-persistent control okay should have went with an easier name um you'll see that that one pod was terminating to disappear so our hypervisor is now gone so now let's do some self healing i'm going to go ahead and kill live my console the thing i'm demoing if this works uh be super pumped so what i'm gonna what i'm going to show here is the self-healing nature and this is the power that you get by using kubernetes in this way so this pod right here represents horizon this thing right here so i'm gonna go and i'm gonna just kill it you sure that's a good idea not sure but let's do it so i kill it and we should see right away this thing pop up and i believe i actually might have felt persistent wrong did i let's do it app equals non-persistent control there we go i noticed my typo um we should see this thing pop up and start running it i need you guys to the spell check me here should have said an easier name um there it goes okay so you see the horizon thing is now running over here let's just try this again what other component should we go and kill neutron uh yeah let's let's kill neutron let's kill neutron all right i'm gonna kill a neutron here why not people have been suggesting that a couple years ago there we go we see it pop up see if this is what's the good it happens so fast when you're talking you didn't even notice let's do another one let's take out nova okay so i'm gonna kill nova and then watch the lower lower thing we'll see get rescheduled okay so there we go boom it popped up container creating container running okay so nova got rescheduled and moved over let's go check horizon very quickly to see if how it's looking oh again reading the log so if this works correctly i'm gonna refresh i should be logged out demonstrating that we have a new version um deployed demo god's willing thank you we did that all right they're on your side so far so far okay last piece i want to demonstrate is rolling upgrades so we showed you a self-healing open stack cluster now i'm gonna show you how you can do rolling upgrades of an open stack cluster all right live at the open stack summit here we go so um this is horizon v2 and horizon v3 i'm gonna upgrade horizon itself i can do this with every component but we're gonna do it with horizon to start with so i'm gonna launch um a new version v3 the way that this is working is anything um at this url is being represented by the pods that are labeled app equals horizon so in this case i actually have version two and version three deployed in tandem i'm gonna go and scale down v2 to just demonstrate that i fully go over zero is quite a scale down yeah i scaled it down to zero you see it terminating now so now only v3 is running um and and so this is super useful for if you want to do this kind of red green deploy like rolling upgrade component and again we can control these or apply these concepts to every single component in the in the control plane including the hypervisors and so on um and so again demo god's willing um we're going to go in here and refresh and if this worked we should see me logged out and we should see um a noticeably different uh a noticeably different version of horizon so let's do it here tada thank you and thank you to our friends at intel that helped do this okay so if you're interested in learning more about this um it's a project we're just kicking off right now and uh we're working with at the summit to to work with the whole community to figure out where it goes from here awesome thank you guys all right thank you amazing stuff thank you