 So, okay So we're starting now with The title you can read and I can't XEP open stack devian and the cloud This will be the river ride Thomas good on Please Hola, thanks for attending my time my talk. I hope she will be able to cope with my silly French accent So what am I going to talk today? so it's mainly on the topic of What's new in wheezy? I want to let you know about My past work during this year to package cloud computing stacks in Debian So I let you know What we have done together so together with Citrix and with other people working on open stack Briefly, I'm 36 years old and the CEO of GPL host which is a company doing server hosting We have an internal software to do hosting. I'm French. I live in Shanghai. I Normally don't do Self promotion here, but since I'm not in the permanent sponsor list. I wanted to highlight that GPL host is hosting seven relays for the video of that comp It's like all of them, but Sydney and Malaysia so I hear many times that cloud computing is a buzzword that We shouldn't don't talk about it because like it's just marketing and it's boring. In fact, it's not that's one of the things you have to Really put in your mind is that it's not just the marketing That's really software behind that and not just a few like there's many solutions available and All of them are quite large and represent a lot of code There's many types of cloud computing there's infrastructure as a service platform as a service and software as a service Here in this talk I'm going to talk only about infrastructure as a service meaning providing visual machines to the final users This means for having a cloud computing service it needs to have all these four points So it has to be on demand. It has to be self-served Scalable and measurable. I mean like the hosting service Service provider must know how much you've used and together this is awesome Thanks to Dave who gave me that so Why is it important to have cloud computing service software? Indibian so we've been we've seen a trend like everybody's moving to Cloud computing as a service for software like people are moving to Google Doc to WordPress They use their mail on big platforms and Indibian we've made a statement Zack Made an announcement together with Citrix and the OpenStack community that Debian cares a lot that we have Cloud computing software available in Debian because we think it's a safeguard for our freedom We want to be able to use infrastructure as a service directly in Debian. So When we use cloud computing services, we need a hypervisor hypervisor is the thing that runs your virtual machine It's a bit like a PC emulator. So like You have like the illusion that you have a full computer when in fact you only have a Virtualized server, okay So cloud computing Stacks do not implement Hypervisor they all use hypervisors. So there are there are customers of it There's a lot of hypervisors currently available in Debian. So Zen KVM virtual box QMU VMware and you can access These three through packages in Debian. So Amazon EC2 there's UK tools that you can use to access But of course you cannot install EC2 on your own hardware Briefly there's also containers with LXC that is available in in Debian It's it's great to have LXC because now it's it's in mainline kernel So we have very good hopes that we'll be able to provide cloud computing on top of LXC So to do cloud computing as I said, we need a hypervisor So I took these slides from Jeremy at Citrix So I showed them first a bit fast. So you see there's many types of of Hypervisors and different model Basically with ESXi you have a Machine here that is kind of opaque. It's like you Don't have access to it. You just have a black box So as a system administrator, I don't really like this model because if there's any problem there I won't even know with KVM you start real machines as processes of the host operating system and then is different because you have the hypervisor running here and the DOM0 is at the same level as the DOM use like The DOM0 provides the management and it's considered by the hypervisor just as a visual machine with more privileges so on the paper it's better, but KVM is Easier to manage inside the kernel because visual machines are just a process And on the container side, we used to have OpenVisi And v-server available in squeeze and that is gone away The reason is that nobody stood up to say I'm going to maintain that so currently we have only LXC and We can use it in the cloud computing environment Using OpenStack, which is I believe the only stack that can manage LXC So a brief history of Zen that as well I took it from slides from Citrix So Basically, we had the Gen project started there around here We had the first usable Zen hypervisor so like with version 2 it started to be really good Then Amazon started to use it and provide the cloud computing service then Rackspace Then Citrix started to work on Xcp which was Okay, so then after there was Zen server that was sold for about 500 bucks a year that was a cloud computing stack and I'd say that around 2010 or 2011 we started to see open source stacks for cloud computing So basically for us lovers of free free software Nothing between before 2010 available and now it starts to be available widely so In Citrix, they first started to sell Zen server as Appropriatory software Then they wanted to open source it so they took this ISO image Which is sent OS based and provided it as a sent OS appliance of as free software But still not package means that you take the as we made you install it on your server and that's about it. There's no Stand alone. There was no stand alone opinion packages that you could use you had the source and you could do it yourself But that's not the way it was released and shipped and since about a year We have Citrix that worked on a packaged solution for Xcp that was called project chronos and So all of these three implements then API, which is a restful API that you can use to create manage and start-stop real machines, so that's what I've been working on with the guys from Citrix was Packaging that and making it making it available in Debian So this this started about a year ago. So there was discussions in the open stack mailing list saying that Okay, we have open stack. This is a Ubuntu project. So Debian based and we have Xcp which is a CentOS appliance so it didn't really make sense for administrators to have both CentOS and Ubuntu or Debian Together on the same cloud environment As well it made sense on the maintaining sites because like if you have packages it it might be easier to maintain the software So Mike and John started that project like last in April 11 And we've been working on that until December when it was first uploaded in in Debian So Mike and John has been extremely helpful and not only that they've been also very friendly So I'm happy to announce that we have that for Weezy and it's basically you do APT gate install Xcp X API and You have a server which is ready to use with Xcp Still some RC bugs. No, there's no RC bugs anymore There's like two normal bugs and we'd be happy to have more testing and and more Reports and of course more fixes so contributions are of course of course welcome So a few differences we have between the CentOS CD and the packages in Debian Sorry so Because it's a CentOS appliance they have to maintain all the packages themselves So the hypervisor version that you have in current Xcp is a bit lagging behind The DOM 0 that we have in Xcp in Debian or Ubuntu is what is available as the operating system So only 32 bits for the Xen appliance The it's very fortunate that both Ubuntu The last Ubuntu LCS and Debian uses the same kernel version Okay, next slide so what This is the difference between using just Xen and Xcp The main difference is that instead of having one hardware that you maintain with Xm or XL on The command line is that you have Xe and it manages a pool of servers many hardware So you have a master node That you control With the command line or with the REST API So the REST API the Xe tool Sorry the Xe tool on the command line is just a client for the REST API that you could use by yourself using JSON and things like that So you have a pool of hardware not only for computes, but as well for storage So every machine that runs Xen API Can be used for storage as well There's multiple storage type. So Xt is like Xt3 or Storage type. You can as well use directly LVM giving partitions to your little machines or I use Xe, NFS, Semba, whatever so and there's yeah, there's Semba stuff to store your ISO images and provide them to your clients when they want to install Virtual machines There's a very cool feature that Citrix is currently working on which is storage motion meaning that currently you can Move one machine from one server from one physical server to another. It's called live migration But the storage will stay on the hardware where your current virtual machine is running with storage motion as its name As you might have guessed by this name means that you can Move the physical the virtual machines compute workload, but as well as storage. So it will move live when the Virtual machine is running. I really hope that will have that for with E plus one So a bit of demonstration here. So how does it works in in real life? So that's a script that I'm going to Explain in details. So what you have in blue there, there, there, okay, it's things that you can replace In this typical script the red things are the Xe commands So basically every commons sends that you send will return you You you ID so that's if I can find my mouse. Yeah, it's there So what's cool? I mean Chinese So what's cool is that you have? Bash of the complete so you can see all the commons for Xe quite a lot right for more than 400 so you can do Xe VM list and currently you see that there is only my Dom zero machine and here you have the same script as I showed on on the slides. So Find the template create the machine. I did the visual network interface Set few parameters and then finally start so the start is commented So If I do Xe VM list, so you see there's no machines and I do new VM and very quickly VM list Very quickly. You see that there is a new machine called Managua 2012 that I can start if I want Xe VM so ST tab and she completes The M equal and then there I can either give the UUID that you see here or the name. So I'm going to give the name that's cooler Managua 2012 So starting is as fast as you do with normal then That's Managua 2012 and There you go, and you see a nice net boot. You fool So I won't go of course in the process of setting enough that would be boring Just do an Xe VM list to show you that it's running If I want I can shut it down a few few commons so that you can you have Vlan create so everything's there. So that's it about the very quick overview this as well then Open Zen manager. So if you have used the Tool delivered by VMware stats comparable so that here you have a list of the templates Maybe I should show that because that's that's nice When you create the machine, that's what you do. Okay, so you have all the list of templates So if I add the D then it will show only the Debian ones Okay so Now go back to my slides So here you will see all the templates the same way you would see on the common line So basically this is just like Xe so that's a client for the rest API, but In a graphical way So when you use So Xe P you have one of the possibilities to use normal Zen bridging Or you have the possibility to use open v-switch So I won't talk in details about open v-switch because I believe Guido is going to talk about it in the presentation just after mine But basically What does open v-switch is that If you have many servers and many switches and then complicated network What is going to do is that aggregate all these and make it controllable from one unique central point So it's going to maintain villains across your networks Your switch has to support labeling and then it will create villains The goal is that one customer has like many virtual machines You want these virtual machines to be connected to each other, but you don't want your customer to see the traffic of other virtual machines As well what it does is Monitoring with the v-flow protocol so that you will know how much Benweeds Virtual machines are using you can do QoS and things like that So Xcp is nice. It's very easy to use on the shell. You can create and Stop virtual machines, but it's not easy to compatible And there's many services that it provides that are lacking for putting that in production and provided to your customers So one way to use Xcp is to use it together with OpenStack So Xcp will do the compute load mainly So OpenStack will bring you the EC2 API and the STRE API and do storage for you so you will have your Images that will be stored using Glance Over Swift if you use that setup there's many ways to set up OpenStack. I will come to that later You Might have heard that about the first like Citrix is focusing on CloudStack That was an announcement that I think now Citrix is regretting In fact, they are still working on OpenStack and providing support for OpenStack One of the reason is that Zen is a very cool hypervisor And that's the only way you have to use to the only way you can use Zen is through Zen API If you use OpenStack and not through LibVerts the LibVerts think compatibility for Zen in OpenStack is Not tested. So don't even try because you'll be the first person to do it the setup is a little bit more complex than using just KVM meaning that The net the networking part is really complicated You have to set up three networks, three VLANs one for management one for private one for internal connections between your VMs So that now I'll talk a bit more about OpenStack itself So there's many many components in OpenStack Just Nova creates about 10 binary packages and Nova is only one of the project of OpenStack So OpenStack uses database whichever You want because it's used SQL alchemy So you can use SQLite, SQL or Postgres. It doesn't really matter and the RabbitMQ server so RabbitMQ server is a Something to communicate between the components. So it's it's a messaging queue Meaning that you have made on one side You have many components that might send some messages and they want it maybe broadcast to many other components So that's what it does Then you have the core project of OpenStack. So NovaVolume NovaGlance and NovaSwift together providing storage And then the compute part is made out of Nova and as I just said XCP if you want to use them So in Nova, in your compute nodes, you will need Nova network, Nova scheduler and maybe quantum for Managing your network That slide is a kind of a joke to tell you oh look that's easy There's only a few components and of course I have to explain a bit how it works So this is the RabbitMQ messaging thing So all of the components of OpenStack can send messages to the queue and then after the queue dispatches the messages to all the components So basically you have Nova API that will listen to a restful Request from the outside or through Nova dashboard. So dashboard is the horizon project and That's a web GUI. So you connect to it create machines through a web interface I like to highlight that if you use cloud computing It's a bit silly to use a web GUI cloud is all about automation and scaling and script scripting So it's not the way to come as a customer to use the cloud But it's still nice to have a web interface and see an overview of what's going on So the customers took to Nova API and then Nova API Sends to the queue to compute to create start and stop virtual machines Nova network is the thing that will route all the traffic of your virtual machines. So Your VMs will run in this like many hardware and Then absolutely all of their network will go through Nova network. So there's two ways to set it up First one way is that you have one Nova network and then all the VMs are routed through that Or another way is to set up Nova network in each compute nodes that you have so doing that is like You have more things to maintain but the nice point is that you have more redundancy like if one Nova network Several dies then you still have networks for the others So Nova volume is a kind of It uses LVM. So that's the elastic block storage of Nova meaning that you create a partition and then just say assign that to this machine The Nova scheduler you won't have to deal with it too much. It just decides where the machines are going to be started Yeah, and here when you want to create new virtual machines, you have Glance. So Glance just stores your virtual machines images like AMI if you if you use the AWS So here it will store your images and then you have multiple back ends You can use Swift so Swift is the equivalent of S3 so Swift is not File system storage its Objects so you can have literally billions of of objects stored there an image A picture of idol. It's not meant to be fast But it's meant to store a lot of objects and it's highly redundant typically you will Have at least three Swift machines That have at least three copies and then after you can add more and more hardware And it does the copies using our sync in repetitive Chrome jobs So once you have all the complicated setup you have here then you can plug XP on it if you like to use them So what happens is that you have one open stack controller system and Then he connects to let's say what one XP server and that one can have multiple XP servers to get connected to each other so one master many slaves and If you have multiple availability zones, then you can have these three So that's one cool feature about open stack as well is that you can have Availability availability zones. It's like let's say multiple ones in your data centers or Across the world if you have multiple data centers so I like Open stack is maintained by many these four guys including myself and XP's main maintained by by citric guys with me together so clearly the packaging is Quite complicated. It's not easy to set up. It's not something you say, okay I just set up a seed and then five meters five minutes later. It's done So we we tried to have Google summer of code students to do what we call an open-stack packaging use case so what we were hoping through that was that We'd had meet meta packages so that You could say okay. Here's a compute node. I just do APT get install open stack compute node And then magically would you would come up? So that hasn't been done And we would be very happy if we could provide that to dbm and reduce the size of the how-to's so Our final goal will be to have no documentation Because it would be so easy to set up and I think we are far away from that We we've added already few depth conf configuration screens and we hope to add some more later So we targeted in open stack it's Maintained through the same release cycles as you find in you want to so that it every six months does a new release so we had Boston Diablo cactus Boston cactus Diablo and sx Currently we are at sx that has been released through together with you want to 1204 and We're quite happy of this release cycle because it means that the guys working on open stack will maintain that for five years and That's what we are going to maintain in wheezy. So for us. It's really fortunate Like the the two previous versions of open stack like cactus and Diablo were Usable but not as much as sx which we are very happy because it's more stable It has all the features when we need So we're quite on a comfortable situation here But there's a lot of work that is going on open stack is a very young project. It's only two years old, okay? So there's always more and more things to be added There's Indibians in slaini this ganetti Which was the first opens the first cloud stack? That was available in dbn But there's more to be packaged Personally I'd be very happy if we had open nebula or cloud stack or eucalyptus totally package in dbn Currently we have ganetti Leni and then we have Xcp open stack and that's it nothing more available. So especially eucalyptus it would be interesting because Okay, that that is already available in in Ubuntu. They've been using it for years already The very good point of that is that it's fully compatible with easy to Open stack team decided that yes, they will try to be easy to compatible But that's not one of their main goal. What they would like to do is more having a Nice API and if they have to diverge a bit from EC2 then be it doesn't matter because open stack is aiming more at Being the standard of cloud computing by itself So all of these are very interesting and would love to see them in dbn So if you would like to contribute You're of course welcome and these are the references you should take this stuff So once again, I'd like to thank John and Mike from Citrix for being great of streams So on the open stack packaging there's been Louis and Julian from Inovance, which is a French company Inovance has spent like a lot of money By hiring Julian form like many months doing full-time work on open stack packaging It's really really a lot of packaging. It's complicated. So We really needed them to work to do that for the community So big big up to them I Recently George he will recognize himself Did a lot of bug submission on on the dbn BTS. This was very helpful. So thanks to him as well And we are now we have now have 10 minutes. So I'm happy to have Question and answers Please go ahead Was the microphone yeah over there there's a question. I just want Touch on eucalyptus a bit. I work for eucalyptus Sorry, I just want to touch on eucalyptus what you were talking about before I work for eucalyptus as a there Debbie and release engineer We recently uploaded eucalyptus to Debbie and we just didn't quite make the freeze So we're trying to work with the release team to let us in And also I just want to clarify. We're not just open core anymore. We're we're completely open source the only two components that are not are Pieces of VMware technology that we license and so we're not allowed to release that code. You're talking about eucalyptus Yes, sir. Yes, so it's not open core anymore. That's completely open source okay, I Think that Even if eucalyptus is changing the way to release it, I think the arm that has been done like two years ago Is already past. Okay, and I think it you have lost a big Opportunity here very very much That's why they hired me actually they receive quite a black eye on the community. We've been working really diligently with We've got three Debbie and guys on our team now. We've got Charles Plessy out in Japan We've got Rudy. Good boy down in Argentina. I believe it is and Stefan Molar out of Germany have joined the package eucalyptus team So we're trying to correct rectify that situation. So we'll Eucalyptus being with you plus one Definitely we see plus one and we're still working with release team to try to get in Weezy But that's maybe not gonna be 5050. That'd be really a great if we had eucalyptus like I Believe that together with OpenStack and XP. That's the thing that we really want the more the merrier Yeah Is there any other questions? I don't think there is any All right Yes, go ahead So this is all new to me. So that was marvelous But there were an awful lot of acronyms and diagrams and stuff and I didn't really understand about half of that However, it looks really interesting. So if you stick that online, I can read it again and try and work out. All right What's what so for those of us who've never done any of this. It's all quite confusing, but it does look good No, that was after let me find it out This one, right? All right. So what's your question? My question is just put it online so I can read it again. Sure. Sure. It is online Anyone making presentation it would be nice to upload your presentation in pant above Yes, it is there Already I uploaded it any other question. Is there any questions on that thing? So I Know that these things sounds like whoa, I won't ever ever be able to do that In fact, that's why I spend a lot of time to explain it to you Because it seems complicated, but it's not that hard. Okay, and like In fact, you can set up all of that in one machine and it's going to magically work. Okay, so thanks a lot And we'll resume at noon with talk by Gido Trotter for advanced networking, which is especially relevant to retaliation So, thank you