Fun Alex it seems like you're here again. Are you gonna tell us about Hansel? Yes, take it away Alex So just one thing before If you like the t-shirts, please For this girl, this is the artist that made the design the designs She's a local artist a very friend of ours and she does she does a great job and Well, if you liked it, please tweet about it Okay. Thank you So well, I'm I'm Alex Savio. I'm one of the core core organizers I'm a co-founder of the Paterson Sebastian from Society and I'm one of the EPS board members. I work in Munich in the Hesse is a Hospital and I'm going to talk about a small module that I I did for my work last Christmas, it's called Hansel and I'm going to show a bit so Yeah, so in my in my job if I usually work with databases of files So they are basically totally balanced Tree of folders and files so I'm here for for example in this case. I have the subject ID a Subfolder called session and then one type of file and another folder for another type of file and then finally the the file so to To parcel this I I couldn't find something that would help me enough and so I created I created some Hensel which Which has an object called crump and it works like so Here I define Well the the root The root of the of where this this tree this file tree is and then Next I put So I say here go the The subject IDs then the session and then the folder where the Image files are and then actually the files So this is how I define the crump and then I can ask for the subject IDs available in the file system Yes, and then I can I have a list function and Sorry and If I do list I I get a list of crump objects with each one with With one instance of of the existing SID so for each one of these I can I can ask for It's a crump file and so it's a crump object and I can ask for the specific The specific idea of each element and I can also Keep searching inside it And then also I can look I can use rag ex or found name matching So for example, if I want only the subject IDs that finish with zero one I can Do this? It has other functions like intersection to compare different So copies of the same file tree. I don't have the live demo prepared And also it can copy crump file trees In the with different structures. So using the same Argument names I can copy different Different parts of the tree somewhere else Yeah, that's it. Thank you Ladies and gentlemen, I know that Alex is a very humble man and he might have skipped over that So I'm just gonna embarrass him a little bit here because I think he snuck away last year before we could do this but Alex is actually the chairman of The conference and he ran the conference here last year and he ran it this year So we all owe him a huge debt of gratitude. I mean to all the organizers, but especially Alex, so please show your appreciation Okay, I don't think he's actually gonna kill me So next we have leave your camera at home by Maximilian salts after that We'll have Lassa on growing a no open source community unless I think I saw you're here Mind yourself and then after that we've got Pat Curry Pat. Are you here? fantastic hi Pat and Armin, can I see you in the front row somewhere? Do do do do do do do do do there he is fantastic Okay So During this lightning talk session as per tradition. We should have one incredibly long joke Split over into multiple parts. We should have one rap and one song now We don't want to mess about too much so I could probably try and combine the rap and the song for you So let me just show you how the VGA adapters work because that's got to be part of my job, too Which are your VGA and that should work a little better To give a big hand everyone So my name's Max and I'm gonna tell you story Two years ago. It was in the end of September and I just finished my last exams in university I decided I wanted to get out go away from stress and It was a Sunday afternoon I had dinner with my parents and I decided I wanted to go on a tracking trip to Sweden in the middle of nowhere Not talk to another human person for like a week so On Monday, I went to the auto shop we have in Hamburg and on Tuesday I got my ticket and on Wednesday. I went on the train to Sweden and My first big adventure in Sweden started so What you can see here is something like the first five minutes of the trip and then it changes to something like this You're in the middle of nowhere There's only piece around you and I really enjoyed it But I had this nice plan to do around 100 kilometers in a week Which is a lot if you are carrying around 20 kilograms of baggage with you so the only thing that Kind of felt civilized I took with me or the camera and every time I saw a place I liked I took out my camera and took a picture like this So I came back with around 500 pictures or so Probably half of it was garbage. You couldn't see anything on it because it was I don't know shake you or anything But I noticed after the trip that every time I saw something I liked I took a picture of it And then I moved on because I had a lot of way in front of me so I Kind of felt like these tourists you see For example in Paris in front of the Eiffel Tower and everyone is just taking a picture of the Eiffel Tower And no one is actually looking at the Eiffel Tower so This is what I saw all day. It's beautiful and After I came back I wondered why didn't I sit down for a moment and enjoy it But only took out my camera and made a picture of it so I decided Last year that I would do it again and instead of taking a pic a camera. I would take a diary I've never ever written a diary in my life and it felt kind of strange doing it in the first two days It was like talking to myself And usually you're crazy if you do that But then I remembered the last time I went to Sweden I started to talk myself anyway after like two or three days of not talking to anyone and I Didn't really have discussions with myself. It was mostly swearing if there was a steep hill or I don't know I just wanted to say bad words because no one could hear me scream them from the top of my lungs So what happened then was There's Lakes everywhere in Sweden where I was so I discovered like a small current to Like that was not on my way, but I went there anyway because well maybe it was it was nice and I arrived at a lake that was beautiful. It was stunning.  And for me in that moment it was probably because of my smell so I thought about how How will I smell or how do I smell? For what?  Just Sit a little like becoming the king of dragonflies and bees smelling like honey and mud Because what else is there to life than that and In the end I have a confession to make these pictures are taken from unsplashed. These are not the pictures I took on my first trip and This is just to make you realize This talk was good with pictures from different people. So why take your own instead just like the moment enjoy it Thanks I Very harsh lightning talk host, but sometimes you can't quite bring yourself to end it on exactly five minutes zero zero. Can you? Let's say you ready. Yes, that's a big hand everyone Thanks, I want to talk about growing an open source community and about being newcomer friendly because there are a lot of maintenance here And there are a lot of newcomers here. Let's bring them together I'm talking about experiences. We have made from the koala community. So during those slides You will see quotes from people that have done our newcomer process. They will hopefully support my arguments However, this talk is not a koala talk So let's get started. I Think one of the most important things to do if you want to attract newcomers is make newcomer issues file issues if you see a typo file another one if you see another one don't fix it and If you want to be even better, you try to build a kind of letter newcomers climbed up So try to categorize your issues in newcomer difficulty low difficulty medium difficulty high let them Get to the next level and that is something that people really like and is really helpful Of course, you need documentation so ideally you just make a documentation page pointing to your list of new camera issues and Maybe explaining something about your workflow then newcomers can learn about your workflow and get smoothly started What I think is also very important is rewarding newcomers, so we have had some newcomers Contributing some really really awesome bears for koala Which means new code analysis and what we did in those cases was we tweeted it out to our users because it's great It is awesome and you did an awesome job. We want them to know that and our users as well There's one thing about Responsiveness when you have a community and you wanted to grow try to respond now whenever there's any question Drop everything you have right now Respond right now. The response can be I don't have time up until next week, but respond now It is also very important To know that code review we have seen this in a lot of other talk as well Code review is a good way to exchange information so you of course want to review the newcomers code and You want to do it friendly with newcomers be especially carefully make them aware that you're doing this to everyone not to deny him But also very very soon You'll want to have the newcomer review your code because in this way You always get the fresh experience from the newcomer together with the like old but more seasoned Experience from a senior developer so you can get the best code and the best learning experience That's a two-way street. So use it Of course if you have a channel and you should have a channel if you're low non-code discussions Like make enough topic channel or something that current greatly enhance the social aspect of being in such a community I think the off topic channel is one of the most channels in the koala community almost as much used as the main channel actually and When a newcomer has Was getting started with your community Ask him for feedback because he has done the process and he will know way better what he needs in order to get started So you can improve next time at the same time you show with this that you appreciate his opinion and The last and most important thing I think is live the spirit You want the community to be because it is not an empty sentence that a lot of people say That a community or things that you do as a leader will be amplified the way you raise the community it will be So very very free words on how you can actually get newcomers to use you newly polished pipeline for newcomers Participate in hackathons summer of codes make workshops for newcomers and Just enjoy them coming to you So I always end my talks with something you I want you to do Maintenors, please try to do at least some of this for your project the open spaces was yesterday Sorry, I forget to update this size And the newcomers ask for those things because maybe the main tuner just doesn't know about it yet Thank you very much Thanks. That's a up next. We have reverse So we have a pat curry on this is my first time for everything Hey, so listen, I gather that and I haven't seen this directly that on Twitter Some people were saying that maybe I was a little bit mean to Florian after his his presentation about the amazing Vim powered Browser, so I just want to say a couple of things first of all I'm a Vim user and I think that idea is awesome and second of all like if I was saying a Project this niche and this crazy if he can do it anyone can do it my message there really was One of of ambition like that is a niche project But I want to you know that thing should really stimulate each and every one of us to go out and try things and we're always surprised By the feedback we can get back from strangers and from the community out there So really for me it was an inspirational story. That's really what I meant to emphasize I'm sorry if I gave the wrong impression and but please take the lesson that I did from that story Which is Florian is amazing. We all can be amazing and we should all go out and try these things that seem impossible And we're so often surprised by how well they'll turn out So forget applauding that please applaud Patrick who's come us to tell us about everything Gracias, este es mi primera vez hablando en español delante un gran audiencia y gracias la gente de Bilbao Los organizadores del europitan.  It's my first year of Python a couple days ago was the first time I've ever been pickpocketed This is my first time Using reveal.js, and I am now working at my first web developer job at the Leibniz syndrome for marine tropin ecology in Bremen, Germany You know and uh These are my contact details. I'm going to be asking for help in a little bit Here's another first.  To hide in a cherry tree Yeah, I know I know so what's the loudest sound in the jungle a giraffe eating cherries Yeah, yeah, yeah, okay, so this is the site that I'm working on and it's built on a Django back end with a postgres database and a leaflit JS maps background and what I do is I call using the request module URL where I have a data set That I can project on here. So Here's some dummy data sets. This is one This is bienvenidos. Here's another one you can Call it and it hopefully will arrive This is the ZMT that I work at in Bremen it's Here anyways, it works And the idea is to create a place where people can put their Mapping data sets and project them on to a map. This is the form that you would use to put everything on there and Then hopefully I'll be able to display everything onto a map like this and I'm working on this project all alone And after watching Google Matthews and them dangors Daniel proceed us and the koalas talks on Reviewing code. I felt like I should ask for some help so This is the Django model that I use. It's fairly simple and the most important be the URLs section right here. I'm going to be adding a user model for authentication and stuff, but I Call the URL to get the data into the the site and from a The request and serializers and this is what that looks like it's kind of crazy and I'm pretty sure that there's a better way to do this, but I don't know it So I've come here to ask for everybody's help Same we've been talking about code review If you guys have any suggestions send me an email or You know want to do some code review go ahead and find the github account. Oh and I'll put that up in just a second in response to Daniel Procedas Frustration with the terms rock star and ninja. I thought maybe we could be wizards Maybe we could be electric wizards Thank you Patrick, so I'm in I'm in your next After Armin, we'll have Pierre Gilbaugh on py3 stats. Pierre. Are you here? Fantastic, and then after that we've got Danny and Andreas on shah 2017 and I know you're over there I should also say that when I joke about this year being Linux on the desktop that I am proud Linux user and I fight those issues all the time and I have the full Stockholm syndrome.   Here is one big application With a bug Okay, so everything I'm going to show in this demo is on this huge application But actually it works on a real large application Okay Can you see what the problem is? Okay, it's five and two. Yes Okay, so well obviously here the problem is that The list will contain one of the objects twice And then this loop will add the value of this single object It will add one twice So that's then this Strange assertion here will fail Okay, and then well Of course if you run it crash, you know, and then you're not happy because well what crushes it this line here Okay, and then what can I do I can I can I Mean it's it's a bit pointless, but I could do that but then What do I get from that? I Get an object X and X dot value is seven. Yes. Thank you So what else can I do you can actually start it using a special version of Python interpreter, that's a special version of pipe. I actually as it turns out that that does not really matter and I That I want to produce a log file So now I've run my program and it crashed and it produced a log file of Everything that this program did Okay So what do I do with it then I? Use another program on the log file This is for Color code lightning and now I get a debugger and this is called a reverse debugger Because now I am at the first line and if I say continue it goes up to the last Executed line, which is a west of exit in this case, and we see that it's 1988 88 executed line of code. Okay, that's boring and Then I can sprint my object and see that the value is wrong like it's seven But what I can also do is going backwards step by step So now I'm on that other line Okay, but that's not the end of the story now x dot value is seven Right. Yeah So x is v subjects dollar zero so I can actually print dollar zero dot value That's just a strange syntax, but I can watch it now. I'm watching Dollar zero dot value and I can continue running backward And now it stopped backward at the point where dollar zero the value changed this is the point where the value change to Six and if I go again backward This is the point further further back where it changed to five Okay So it means twice in the list LST one if I print LST one when it's a big list Okay, but I see that this big list is dollar two So I can watch I Can see I can count Like yes, it's really twice in this list. Why is it twice in this list? I'm going to watch this Now I'm watching the fact that this value is two now I continue backward And it's this line that's like before it was one and after it's two So this is the line that is your real bug and Now you've found the bug. Thank you. Oh man Next Pierre Gilbaugh Gilbaugh, where are you Pierre? There you go. Thanks Gil Fine, so I'd like to do for you now One of my favorite songs and one of my party pieces. It's about a minute long and it's a song a Famous rap actually I like to rap by an outfit called Salt and pepper and I'll do that probably just after the next speaker. Please give you our big hand So this is my first talk ever the your python and it's about the pie free statues and excellent. So Thank you. So I'm sorry, but it's very excellent centric and unique and stuff, but You're going to say why X from there or no, I don't want to hear about it But I hope this makes you want to switch to a better window managing system So why this talk I was watching people trying to plug their computer yesterday struggling so hard with our display And I was like why? This is 2016 it should not be that difficult Exactly so what X is X from there X from there are is a primitive command-line interface to the wonder our extension and wonder our extension is a kind of communication protocol and X from there provides the ability to use that protocol and resize rotate and do things with the your screens Okay So What's I free wm I free wm is the the best styling window manager out there Well and I free status is a very small program that handle in a very efficient way the dating of the I free bar and By the way, I'm going to show you the I free bar in the next minute. So be patient But also check with Qtile. It's written in Python and it's quite like I free So what's by free status? It's an extension of I free status that's it The that handle the I free bar and it can do a lot of things the class feature is from is that it can handle click events So I'm going to to show you live demo of it Oh, okay, I'm just Yes, I'm going to switch to clone mod so And so now you can just see what I'm seeing right now So this is the I free bar there and this is the X under our module of by free status and I can scroll and Change mode and I can change also the the song and stuff like that. So this is on the left side the The the simple configuration of X under and you can see that I can say when I plug My this paper it will put the HDMI I one on the the the right for for instance and I can I can do that I can Can shut down the the screen oops and I can I can put the screen back on but Yeah, I Can do I can do that also I can just say I don't want to be on the screen and then I plug it and Then when I plug it back on oh, I have to And when I plug it back on this This works And so I'm back to the slides now and one this is the configuration and I'm going to show you the github now, but I hope you all like this right now amazed and Yeah, so here is the github.  Oh, yeah, you were full. Have you ever been in labor? I don't think so. No, I'm a genuine feminine female thing. Can you hang a number to sheet then? Dan child 2017 everyone. Thank you. Thank you okay We're gonna talk about not really a conference, but a camp that is next year Shart 2017 We are actually not Danny and Andreas, but which dog that's me and this is big We're from hack 42, which is a Dutch hacker space Actually the best heck of space Varnem also the only heck of space Varnem So this shot 2017 what is it? Well the unofficial name is still hacking anyway You may or may not know that every four years. There is a hacker camp in the Netherlands Three years ago that was owned 2013 That was my first heck of camp I think Mix has been too many more One more. Okay anyway So what is it? Like I said every four years and every four years we think of another confusing name So sorry It's actually a Large large campsite. We've got a lot of big tents That are really way too hot We don't have any hotels or stuff like that if you want to go to you'll have to bring your own camping stuff and There's well nerds techies Programmers, maybe even people speak Python there. There's people who talk boolean over there Really everything like that, you know What can you find there well open technology? The most amazing tech The most amazing knowledge We do little little projects what you see on this picture is actually a radio antenna and The colors on there is a live working VU meter That was indicating whether there was any broadcast at all really So Please join us either come and Help us organize or be a volunteer at the campsite This is our URL Thank you. Thanks very much We've got promoting Python a student community mentoring interns interns by a bug over Are you here? Bargava will skip that one for a minute for stem Stefan Virtele After Stefan if we can if we can find the promoting Python Bargava person. Otherwise Statistical data visualizations by Klaus A. King a class. Are you here somewhere fantastic? So this boy has this dog and it's a very shaggy dog and And all his friends are all constantly remarking on the the exceptional shagginess of this dog and Eventually his friends and family say you know what you should enter your dog in the in the village shaggy dog competition to see who has the shaggiest dog So he thinks okay. Well, I'll give it a go. I mean it's not I mean okay. How could I really win? I'm not so sure I'll tell you who can win is stiff and telling you about first them That so my name is third not really important that I'm just Stefan so It's just an announcement about One day the four and five February 2017 in Bursar's in Belgium. We will have the first them 2016 17. Sorry It's just a small event where we can find some hackers lecturers and the rest. Yes That's the description on the website, but in brief is just talk hack beer talk hack is sometimes some beers Okay, the result some we try to improve the free and upper source software In my case just Python We try also to improve the skill my skill and the knowledge So for the first them it's just a small event we found five thousand hackers 400 lecturers and of course unlimited beers because we are in Belgium So yes, this event is totally free Okay For the next we have some topics. You are you like pythons, but I think that you like some other topics We can find hell LVM security post grassy quail my SQL virtualization with Xan docker and the rest testing high o.t configuration container go Ruby and pearl So, but of course there is a python that room So a small example if you don't know first them is just that 1,000 people in the same room One doesn't it's not the mode the bigger room so Welcome to Python first them 2017 The last year we receive 500 awesome. Pilarista Thank you 16 lecturers and of course unlimited beers. That's the room of the Python first them At the beginning we receive 80 people the last year with the success We receive 400 or 500 people in the same room Thank you Oh, sorry, so thank you Stefan I just will be a dinner I Just like to say that I've been to Fozdem and I've been to Belgium just for it And it's not only beer that you can get in Belgium and you don't have to drink there. That's not compulsory. You can also get fries Fantastic, so Klaus are you coming up and getting ready? After Klaus will have Yernef Makovic probably yeah Managing compliance and technical debt What's the pretty close?  Would you believe are you ready Klaus? Yeah, let's give it a go I'm Klaus. I do data analysis and scientific computing and I want to quickly show you a library that really increase the quality of my working life visually exploring data sets is often very Tidious tasks and this is where a seaborn comes in handy So seaborn is a visualization library that is built on top of matplotlib and also sci-fi and pandas so it's kind of standing on the shoulders of giants and It offers a high-level interface to to produce a statistical graphics so it might be interesting because it has nice style functions appealing color palettes and You can do distribution plots regression plots category plots and exit with objects So I'll give you a few examples basically for the times use plot and a category plot. I fear a small data set where a Categorical variables and wage and we want to see how wage depends on these category variables I hope it is okay. If I continue because it's not very inclusive our data set. They're only male participants, but I Hope it's okay. So let's see what we have I want to see how wage depends on education and race by means of box plots But those who don't know what box plots are. It's basically a plot and a box So here we have half of the data lies in this area We have some robust statistical estimates estimates and here we have outliers so there are some people learning quite a lot of money and Yeah, we said we want to relate it to education. So let's add education to the X axis and We see here. It also I think it already looks quite fine But the order is a bit distorted. So let's let's change the order here By adding the order keyword and we see that it helps to have higher education But it is not really necessary. So you can already be a top earner even if A grad student at least in this data set and Yeah, how about race? So let's include race. We could do this of course by adding a second plot But it's hard to to see the relationship. So it would be much nicer to first split the data set According to education and then according to race. So let's do that We have a hue variable Which is split up by race and Now we have everything together Over the Education and also over race then you might say, okay, it's a bit dense so make it lighter change the styling of the plot and Yeah, for example like this and I don't know whether you use the matte blood lip But I think five lines for this graphic. That's a good. That's quite good so It's a fast way to produce Good-looking all view graphics. So this was an example for in the category of plot another thing that I frequently is a time series So in this case, we'll take a look at the sample data from European air quality database in this case It's a nitrogen dioxide So it looks like this We have a daytime index and some variable and want to explore this variable in this case It's from Vienna, but I think it doesn't matter here So what does it look like for sake of simplicity restrict ourselves to the last year in the data set We use a partial string indexing. That's quite nice. I think it's part of a pandas feature And yeah, this is how it looks like so we know that The cause for nitrogen dioxide Are for example cars So since we know that cars don't occur uniformly over the day it would be interesting to see how the concentration changes over time and also whether there is a difference between weekends and during the week So let's add this information to the data set. I had a column whether that tells us is it weekend or not We had another variable that is depicting the hour of day and another variable that we need for aggregation purposes So we just add the information that we want to display in our plot to our data frame And then we just plot it So it's like this Maybe it's a bit hard to read so it would be nicer if you could aggregate Maybe using a median or so some some other robust estimator. Let's do this and there we are to be clearly see that During the weekend the nitrogen dioxide concentration is much much less We have this typical peak in the morning hours caused by all the people who Drive to work by car and there we are so we had just a few lines of code to add to the information And another three lines for the plot for me. This is quite useful And maybe you want to check it out as well. I think my five minutes are over so Thank you Thank you very much. We have a couple of announcements Alexander here. Can you see him everyone stand up? We've just received notification that a talk is canceled at the last minute So if anybody would like to do an extra last-minute talk first come first served You have to find Alexander after the lightning talks end because it's not fair because otherwise just the front row will get to him first So first come first serve free talk slot tomorrow the other announcement is that Pokemon trainer trainer by the name of Well, so a Pokemon trainer has won the Pokemon go Championship, but I'm here to announce their name. The name is a throaty mule Are you in here? Maybe it's an anonymous thing But anyway, the prize is a free ticket to the cider house for this evening So you'll be able to pick that up from the the registration decks congratulations The best Pokemon trainer whatever that means and one final clap here for Janusz, please So hi guys. I must confess. I really liked all the lectures, but there were some That really somehow resonated with me.   So in my day job, we do a Lot of the time with startups that have similar problems and Interestingly, it doesn't matter if they are very small if they are just verifying their market Or if they just got like 10 million dollars in their D funding kit round and I just thought it would be interesting to share some of the solutions that worked for us So, yeah, again the meta classes guy So meta classes at the end of the day are really not that black magic And I would try to argue how they can actually Help us in daily life to resolve conflicts or similar things so The first picture should basically make the whole point and because I don't have much time I'll just skip it. I'll just make the case so you can then at home check what is actually going on Okay, we have some code So you see we have here two classes the first is decorate public methods and the second is require docs So usually the teams that don't have the time or the budget to write test and yada yada They also probably don't have time or the budget or the resources or whatever to set up the CI pipelines and things like that so the other options is of course to Find some static analysis tools or linters and configure them correctly, but if you have like a Legacy project you'll get just noise. So here are a couple of solutions. So the required docs class You see it is Metal here which indicates that it is somehow connected with meta classes and now every Class that will Be subclassed from this one Will check on initialization Or better yet whenever you start the app So you get instant feedback no waiting for the test or the CI server or whatever you just run it and You'll get an exception if your method doesn't contain doc string. So how cool is that? So if you want to go further you can analyze the doc string and say and write your Parcel here and say hey if this does doc string doesn't comply to let's say Google guidelines throw an exception And you can do a lot of cool things like that just with meta classes And again you get like instant feedback. You don't have to wait for Jenkins or whatever and it doesn't take a lot of resources so that was kind of the compliance part and Towards the technical depth part So again, I worked with Selenium for quite some time And you know if you want to have the proper reports and so on you have to configure a bunch of things So a solution would be to write a decorator that catches an exception and makes a screen shots And at that point, but in this case you would have to decorate all of your test methods not very cool Just write a class like this a meta class and Use it in your test class and from them from there if you subclass that class It just works it. So if you check out what's happening here you traverse through the class Methods and you basically decorate them and you are doing that for all of them the other thing is yeah, we didn't have time for Design and whatever excuse and yeah, basically you can refactor step by step and That's basically the same solution. Oh, sorry Oh Okay, yeah, so you have a class it has some arguments and You can solve it like that with meta classes And that's it. Yeah Thank you very much. Oh, yeah, the crowd selfie everyone stick your tongues out And that is in fact all we have time for today. So thank you very much to each and every single one of the speakers Thanks to each and everyone of you Thanks to all the trainers thanks to all the gold Organizers thanks to the volunteers thanks to the bar staff in all the bars Thanks to the restaurant owners thanks to the people who sell us ice cream on the street Thanks to the people who made the bridges and the museum and the arts and the and the pigeons and the birds and the bees and the nature and the sky and the clouds and everything


this directly off solar panels I have a cloud right now looks like once that one passes that probably got 10 or 15 minutes of full power it's coming out not bad for a completely unregulated power supply all right the bottom it's all welded together there I got the front welded on too I definitely used more welding sticks than I would have in ideal situation part of it is just I'm out of practice with stick welding and on top of that you know having an unregulated power supply I think I needed more current because the arc distance was real small so there's a real tiny window of distance I could anyway doesn't matter I think it's pretty strong should be good and I went back and forth over the side pieces here a few times just to reinforce it maybe I should do more welding on this thing there was a significant improvement in skill by the end I do that much more might actually be kind of decent out of again oh look at that looks a little great that's nice


I think we're going to get started. My name is Shridhar Basan. We're going to be talking about building OpenStack near the users. I'm a lead engineer with Comcast. This is Anthony Vega. He's our network SME at Comcast. And Sean Collins. He's our lead developer, Neutron developer at Comcast. So thanks. A little bit of background on what Comcast is. Comcast for people who don't know from North It's a very large ISP and service provider in North America. We do internet service, video and telephony and over-the-top services for millions of customers in North America. We have the world's largest IPv6 deployment. And we have multiple services distributed within the United States, close to the customers. So this talk is about deploying OpenStack close to our customers and some of the challenges and what things work for us. So the traditional model of configuring and installing OpenStack is to do it in large data centers. We do have a few of those. Data centers, national data centers have a lot of redundancy built into them. They have dual power sources, dual cooling, and also network redundancy. We took a different approach to this model. Some of our services run, we do have OpenStack regions which run in our national data centers. And certain application files fit into those. But what we're here to talk about is deploying OpenStack close to our end users within what we call our regional data centers. We have a lot of these smaller data centers spread all over the United States. Being a video provider, we already have points of presence all over the United States where we serve customers. So it made sense for us to deploy OpenStack close to our customers for certain use cases which we'll go later in the talk. Actually, can you go back, I think? So each data center, the regional data center has its own AS and networking. We have a traditional leaf spine design. We have multiple racks of servers with their own top of rack switch feeding into a single spine. We decided to not have a lot of redundancy in our regional data centers because we expect the application to kind of be aware and the redundancy move into the application layer. So I'm gonna talk a little bit about why we came up with the design that we have and what it's done for us. So the first question is why would you split up? Why would you decentralize your entire environment and split out into a multitude of different locations? Besides what Sri said earlier about us already existing in points of presence all over the country, we had already had these sort of regional networks which have their own independent network connections to the end users because that's the point of aggregation where all of our markets come into our core network. So they're their own connections. They don't have to cross a backbone link to talk to a customer. They're close to the customer. Being the point of aggregation for a customer market means that there's a lot fewer hops. It's logically only three or four hops away from talking to one of our data center points. It's a lot less latency because you've got a lot shorter distance to cover and fewer links to hop through. Apps like Video and Voice, they want predictive latency. They want low latency. They want a stable connection. When you try to take from a customer end point and bring it back to a national data center things get a little more unpredictable the further you have to go. So this actually enabled us to reduce jitter, reduce latency and keep a more stable connection and a better quality. So the other thing about this is when you take a look at the more Amazon or Microsoft Azure centric models you've got these large availability zones but there's only two or three of them. They tend to take, in North America they tend to take an east west coast approach to availability zones where they've got one or two in the east, one or two in the west. You can only pick one or two of them and you have no control over where they are or how you're distributed. And when they go down, they go down. I don't know how many of you in the room remember when the east coast Amazon zone went down and took major applications out with it. When we go to this model of the distributed, highly distributed regional data centers we kind of take a lot of that danger out of having a single data center fail over. Because we've got these markets all over the place these designs usually incur a pair of links to the backbone. So what we did was attach the data center to each one of the routers that has these backbone links. So if we lose a data center even in a specific market there's a backup in the same market available and if that goes down there's backups in nearby markets or all the way back to the national data center. So we have a lot less sort of footprint for failure when a data center goes down. So what did we do differently? You're gonna notice that we're probably one of the only people who's got a really large neutron production environment. A lot of people talk about why neutron's bad, why they don't like it, why they don't want to deploy it. We actually really like it and the way that we deployed it is a somewhat better model for us. We're using provider networks and we're not using the Elf Brigade way at all. Which means we don't have the issues with HA, we don't have the issues with being in performance bottleneck through a single host. So we can actually take all of our VMs and attach them to a trunk network straight up to our spine switches for L3 termination. We also, our pioneers in this, Sean and I are actually active on the Neutron IPv6 subteam. There was no IPv6 support in Neutron up until Juneau. That's because we needed it. So all the way back in the Grizzly days we started working on it and actually had it deployed in our Havana builds and the code has now actually been upstreamed. So what are we running? So our regional data centers run within the data center all of the NOVA components, the Neutron controller and the agents for each compute node. We also run Glance locally for each regional data center. And then we also have limited block and object store where within each regional data center there is a Ceph cluster that provides both block and object storage. And then within that, so there is no replication across regional data centers or within like having a global namespace where if you create a volume or you create an object that is replicated across markets the failure domain domain is just within that regional data center. So it is left up to the application to replicate objects across depending on their storage requirements. So the things that we gain from having this design is primarily within the keystone design. So we have a central keystone where identity, the tokens and then also the catalog which maintains the list of end points for each region. It allows application developers to quickly recycle pieces of provisioning code that they have be it through HEAT or through NOVA where they can launch instances in one RDC and then with a simple change of the actual region that they're using to make calls to the OpenStack API they can quickly take all of their stack as it were all their databases, the application servers the web servers, all that tier and they can quickly just stamp it across all of the markets within our deployment. So it creates high amounts of reusability for the actual provisioning code with small minor changes to turn their applications into cross the country that are aware and then they can start building in fault tolerance into their application based on their needs rather than in a more expensive national data center model where you have redundant links, redundant power and all of those decisions have been made for you in advance because there are some applications that may need different types of availability and can also tolerate failures in a way that is more economical and then also gives the application person the person developing the application the ability to decide what portions of their application need to be replicated across or portions of it that not necessarily need to have uptime or are resilient to failures. So what did we lose? We obviously lost the capability to tolerate network failures within an RDC because the way that we're doing it is is it's a single switch with no redundant power. We also have a learning curve because a lot of the application developers are used to the traditional model where provided that they install their application on the server and it pings and they can reach it. All the other things that went into that that were typically the domain of the engineering team and then also the operations that was handled for them quote unquote for free, meaning that they didn't have to worry about it. Obviously there needs to be a lot more training that we had to do with application developers to explain to them the advantages of having this type of arrangement and then also explain to them what parts of their application need to become fault tolerant. And there is also the complexity of the open stack environments where for example, when we have a centralized keystone that serves out all the authentication and authorization, we have to work with the community to help scale token storage. So we're really excited about some of the ephemeral PKI stuff that is coming down the pipe and then also scaling the centralized keystone so that that piece of the open stack service is resilient and can tolerate failure. So that even if you had one of the nodes that is serving the centralized keystone went down, there's still other nodes that are available to honor requests so that if you lose keystone but some of the regional data centers are still operating, you don't actually lose connectivity. One of the other challenges that we have is since these regional data centers and the open stack installs inside of them are separate, the tenants also have to replicate some of the items within open stack. So for example, security groups, if you create it in one regional data center, you have to have some sort of logic in the application to replicate that across so that things also like your glance images and other pieces, they're not shared at the same level as the keystone. I believe SSH keys are but that's the exception, not necessarily the norm. So there is some overhead to that and we would definitely be excited to have projects in the community where certain things, including quotas for example, some of that I guess would be pushed up into something like Congress or another type of project where those things would be stored across regions because replicating it by hand is difficult. So is that it? So I went a little bit into this before but the main challenge has definitely been training customers, also putting in like the amount of service level that they should expect in this type of thing, in the regional data centers, telling them that there is a very good possibility that if there's power interruption or network connectivity that their instances will lose connectivity or will be powered off. So they need to have systems that are monitoring all of these types of things and perhaps when one regional data center in a market fails, they need to have logic that'll start provisioning other instances in the other regional data center to catch the load as it fails over. Another challenge that we have is using Tempest. We want to use Tempest to validate production installs before we turn them live and then it would also be really nice to be able to use Tempest to continually check that services are still available and are still consumable by tenants. So there are patches that we have in the works and that patches from other members of the community that we were very interested in seeing get merged. And then like I mentioned before, there is risk to having a horizon and keystone as the single point where all of the access is going through. So we have to be proactive and make those services more resilient and also allow them to scale out as demand increases since they will be the point through which all the other RDCs do their authorization and logins and things like that. Does anyone have any questions? So I'm microphone at the front. So what I didn't quite catch and maybe you mentioned it, but how are you doing the centralized keystone? Is it through keystone federation or do you have the whole cells architecture? So at this point, we use keystone. The only thing that the keystone, central keystone has is the authorization database that it stores. The actual authentication pieces, it is sent out to Active Directory through a driver that we maintain. And then the just the service catalog, which is just the list of endpoints that are available for every RDC that is currently live. And then also the tokens that are generated when a user successfully authenticates. So that's in the central keystone. Correct. So then how do the, and the other RDCs are independent clouds, right? All the other components, they are just independent clouds and their endpoint is listed in the centralized keystone as an available region. Okay, so they get their service catalog from the central keystone and everything else is, okay, I get it. Yeah. One last question on the neutron front. Using the provider networks model, do you guys, what's the compromise there? What functionality do you lose, if any? I'll take that. So you lose a couple of built-in features, right? So things like firewalls of service, low balancers of service aren't actually gonna work because you don't have the L3 agent there to pipe or intercept things. We also don't actually have floating IPs anymore. This is kind of a big challenge for people who are coming from the more traditional Mova Network model where they've got private IPs on their hosts for the fixed address and they have to work on floats and some people get used to the idea of a float being a sort of pseudo permanent address, a static IP, if you will, for an application and that's one of the retraining issues that we have sort of an issue with that a lot of people in traditional networking spaces assume that their IP is always static and that they can always have this IP address. We're getting around that with port reservation by pre-building ports and neutron and detaching them before Mova terminates an instance, but the whole concept of having floating IP is just no longer there. We're assigning public IPs as fixed except for tenant networks, which are a non-routed internal network. So we actually explicitly don't route tenant networks on purpose because our multi-tenancy is a little different than sort of a public cloud's concept of a routed network that only one customer can get to because our customers are all internal projects they all share the same space in our data centers normally. So the only thing that we're adding here is an attraction layer between the front end points to all their hosts, like putting in an HA proxy instance and then attaching all of their web servers to a private tenant network to do the hosting. Yeah, and using some ugly DNS hacks like round robin records or trying to automate some sort of GSLBs in some instances. You gain a couple of things out of not using the L3 agent though, like I said, besides the performance and the HA problems with the pre-DVR neutron. You also get the fact that this is a direct L2 trunk to your upstream switch. So if my network engineer guys wanna come in and say, well, I need to change some base level ACLs so that I can do security blacklisting or if I wanna do in any cast address, I can actually do that without having to do anything special because I control the routing upstream directly to the L2 termination point. Hey, how do you do orchestration in terms of all the data centers? Are you just running heat in each one and you deploy on each one individually or do you have some sort of global orchestration thing that deploys an application across all data centers at once? Are you referring to it as a cloud operator or you mean like how do our tenants orchestrate? How do your tenants orchestrate? So our tenants use multiple tools. Some of them use JCloud or Fog to orchestrate across multiple regions. Other tenants use Horizon to kind of people who are not very savvy with the CLI use Horizon or the Nova tools, like the OpenStack CLI tools to spin up resources. All they have to do really is like change the region name for the environment region name and then they can hit any one of our regional data centers. So you generally in terms of your application that you deploy the same kind of cookie cutter in each data center is not like I'm gonna deploy this port of the part of the service here and another part somewhere else. That's right. So we want application owners to deploy their apps across all of our regional data centers because they're serving, typically they're serving those local customers within that region. Okay, thank you. So I'd actually like to expand on that question when it comes to deploying cookie cutter apps. Since we've got this split out sort of geographically all over the country as part of keeping things off the backbone and keeping things low latency and close to the customer, what we generally see is if they're gonna deploy an app in one of the regional data centers, it's usually serving customer edge or it's something that's local to network management tools in the area. So you'll wanna have a copy of it all over the place because you have to serve the save function everywhere. So instead of having one piece in the Northwest and one piece in Central, they're gonna have it the same pieces all over the place. So it's the normal model for us with some exceptions. So in most cases, their data is sharded by geographic region. Is there any specific reason why didn't you try to distribute the Keystone? There's a horizon I can understand. I mean, you don't need to have, but at least the central point of authentication that. So the Federation model just landed and Jay, I think, right, the Keystone to Keystone Federation, we wanted to have a single ID for our tenants so that they didn't have to figure out like, now I got an auth against this region with new credentials and that token is only valid for that region. We wanted to make it simple so that our tenants can validate it against a single endpoint and then go to any one of our regions. Still, you mentioned that actually most of the activities are running. Okay, I do understand, for example, then the problem of policies because that would be a problem to synchronize. But anyhow, you mentioned that the actual authentication runs through active directory, right? So making the Keystone distributed without any need to do kind of Federation would be even possible and will guarantee you a certain level of availability of the service because you remember that all your, if I don't know, cut off the optical fiber between the central node and one of the remote node. No service is accessible, no? Yeah, so. Yeah, I'll take this one. So centralized Keystone for us isn't actually only in one data center. It's sort of a mesh. We've got Keystone running in all the NDCs that are running this environment. So what we do is the actual endpoint the authenticated against is around Rob and HA proxy. So the HA is there in the fact that it's actually running all over the place. And the reason we went with this, we realized that it's a little cumbersome to have to start changing region names all over the place. But it's better than having to put in an FQDN for each of your different locations. Remember what the FQDN is, all you need is a region name. And this is actually a precursor because we've been looking ahead and we know that there are more things coming down the pipe that are gonna start integrating this like a centralized glance with full replication across regions and there's a lot of stuff in the works and there's a lot of stuff that we wanna improve on and we like to contribute code to the community to improve on. So at some point, all of this becomes something that I can run centrally and distribute across all of my environments so that my users have the ease of saying, all right, well, this is an RDC application. So I'm gonna run an RDC script to deploy this to every OS region with region name that starts with X which would be an RDC delimiter so that they can deploy through all the nodes with the same commands and with the same objects all over the place. So basically you mentioned that actually even though it's seen as centralized, this is distributed, then what do you use to synchronize the database? Do you use the normal MySQL Galera? Do you use Postgres with the... We use Galera to sync all of our keystone databases and we use Galera within the RDC itself even though we mentioned single points of failure. The API nodes itself, there is like HA available within that.  It's less likely that a network equipment is gonna go down rather than a host. The hosts are much more likely to go down. Yeah, there've actually been some studies in the past that put the mean time to failure for a top of rack switch somewhere around 10 years. The mean time to failure for a hard drive is gonna be less than three in most cases. So we tend to focus on making the HA on the compute side and the controller side as opposed to the network. It's a lot cheaper too. Any other questions? Thank you.


Good afternoon, everyone. Hey, will you hear me okay? Everyone got your coffee? No, it's just the first day. This week, it's going to be a long week. There's a lot going on. Anyway, welcome. Thanks for joining us today. My name is Karthik Prabhakar. I'm at Red Hat working with OpenStack and being part of the OpenStack community since about the SX release. So seeing it grow in literary leaps and bounds as the community has grown, the projects have grown, the impact to customers have grown. So what we're going to do today is really focus in a little bit on looking at Red Hat and Cisco and how we're collaborating together to help customers be more successful with OpenStack and helping OpenStack meet customers' business objectives, right? So the focus is how are we collaborating in different realms to enable customer success. Joining me today, we have a number of folks from the Cisco side. We have Suhail Said, Hart Hoover, and Vish Chakka, who are product managers for different parts of the Cisco product portfolio. And we're going to talk about the different collaborations that Red Hat and Cisco have in different realms. But before we get there, I'll give you a little bit of context as to why we are collaborating the way we are and why the focus on solutions. Now, within the OpenStack community, we very commonly use analogies, right? Real-world analogies as to why things work a certain way. And a very common analogy that we often use in the open-source community is cars. You know, open-source is about driving cars with a hood open or proprietary software is about driving cars with a hood welded shut, right? So in the OpenStack realm, an analogy I've kind of used a little bit is imagine you're on the market for buying a car, right? What do you do? Do you go out and start looking at auto catalogs and start picking the parts that you want in your car and then say, hey, I'm going to assemble this car for myself or have someone assemble it for you? How many of you go about the process of buying a car that way? Pick your favorite catalogs from the common auto manufacturers and start selecting parts.  I'm kind of looking for this model of vehicle at this price range with this kind of feature set. And pick a car and drive it out a lot. Maybe tweak it a little bit, change your color, change your tires, change a few things you're in there, right? Option packages. But I suspect most of you tend to fall into the latter category. If you step back and look at what's been happening in the OpenStack community the last two or three years, for various reasons, we always tended to take an approach when presented with hundreds of choices, thousands of choices of technologies that we can adopt. We wanted to use every single one of them or many of them and start picking and choosing what we considered the best of breed in each different category. Now, that works really well if you're a hobbyist and you're looking to understand the different technologies and really appreciate how things work from the inside. But if you step back and if your real focus is on getting OpenStack deployed successfully, quickly, in a stable fashion, not just focused on an initial deployment but keeping that deployed and running from an operational perspective over many cycles of OpenStack releases. A model where you pick and choose individual components isn't always the best option. Not for you, the customer, not for us, the vendors, just because it makes it a lot more complex to troubleshoot, to decipher all the issues with every combination of components out there. So the approach that Radhat and Cisco have taken together is, first of all, looking at all of the different components that we have together focused on OpenStack. Cisco have numerous products that they bring the value of their technology portfolio into OpenStack. When you look at their UCS platform, when you look at the Nexus platform, the different networking capabilities, the storage capabilities, the compute, the orchestration. And together with Radhat, Cisco have collaborated in making sure that each of those products are enabled for OpenStack, that there is a lifecycle for each of those products. And so we collaborate very closely with them. And this is really making sure that every one of these products, which typically have an independent lifecycle, are certified for OpenStack. And we collaborate very closely on that. And we combine in other complementary technologies, like in the case of Radhat. We have Radhat's storage. We have management orchestration portfolio. We have a number of other surrounding component. We all collaborate on certifying and making sure that they all work well together. But when it comes down to how do we package them together and make it easier for a customer to succeed with these individual components, we can just present this entire catalog to customers and say, hey, go off and pick your components and pick any random mix of third-party components and put it together and we'll support you. Well, generally, if it's a certified component, the answer is yes, we will support you. But it's a lot more challenging. You get that deployed from an initial deployment perspective and supported and taking care of upgrades. Because keep in mind, each of these individual products has an independent lifecycle, an independent product team. Sometimes these product teams struggle, especially when you look at the broader ecosystem of vendors out there, to keep up with the rapid pace of change with OpenStack. So the approach that we've taken instead is to focus in on integrated solutions. And so from that perspective, we've kind of looked at a number of the common customer deployment use cases. Starting with some of the ones such as building private cloud infrastructure and whether it's customer managed or whether it's customers are looking for a Cisco managed on-premise solution. We've looked at telco and NFE infrastructure, where as you heard about this morning, there's been a marked shift over the last couple of years towards more and more telecom operators moving to OpenStack as the platform for NFE deployments. And even for public cloud deployments, where we look at the common customer use cases and Cisco and Red Hat have collaborated and packaging together a number of solutions in each of those use cases. And the benefit to customers, first of all, is that Cisco and Red Hat have collaborated on making sure that when we cherry pick the individual products that we think are relevant for that given use case, a given workload. We do a lot of work on integration testing, making sure that the products work well together, making sure that we have common recipes for high availability. We have recipes for making sure that when individual components break, making sure for the common customer deployment architectures that things have been tested and validated. Secondly, to validate that things like the lifecycle is taken care of. As these disparate products have independent life cycles to make sure that they converge before we recommend that the solutions be deployed in the customer site so that customers don't have to go to the pain of having to deal with multiple independent products. Upgrades is a huge issue because over the last two years the OpenStack community has made a lot of progress in taking care of in-place upgrades, but that still continues to be a major pain point within the community. And that's been another area of focus for us. And finally, building an ecosystem of not just individuals within our respective companies, but our ecosystem of partners, an ecosystem within the community to help build knowledge and awareness on how you deploy these known solutions, these known validated configurations, and have these pods of validated reference architectures available across the community so that when customers need to deploy these, there's expertise available readily. To draw the automobile analogy, if you go to a random mechanic and take your own custom-built car and just taking a Ford or a BMW or a Mercedes, it's like there's a lot more expertise around known quantities. And so that's kind of our approach to developing solutions so that it makes it easier for customers to deploy and for us all to support it. And the benefit from a customer perspective, besides the ones I've already mentioned, is that the time to business value for you is significantly improved. You're not spending weeks or months, in some cases years, like I've experienced with some customers, trying to get some custom unique configuration to work. This is deployed very quickly, matter of days. And days for fairly large deployments as well. And it reduces the initial time to deployment, it reduces the time to business value. So you get back to showing value to your business fairly rapidly. So that's kind of a quick high-level summary, and now I'm going to pass it over to Vish to kind of cover the first two pillars of this, which are UCSO and FlexPod and what those are. Can you hear me? Thanks, Karthik. Let's talk about the number of solutions we have built with Radat for enterprise private adoption. As Karthik mentioned, customers have tried OpenStack on their own with mixed results, and it's often a tough task for our customers, enterprise customers to stand up their own private cloud. Recognizing those factors that have been shared by our customers with us, we've built a few solutions that I'll talk about in the next few slides. So the main goal for us for working with our partners to bring the solutions is to get our customers a faster time to value with their private clouds based on OpenStack. The joint solution is about providing a validated design, a validated architecture that has been tested, configured with best practices that customers can adopt for the best business outcome for them in their environment. So some of the main benefits that we bring to the table with this is faster deployment and easier deployment of their private cloud and reduce the amount of risk that they will face if they were to deploy a private cloud on their own. At the end of the day, we want to increase the return on their investment while reducing the time to value for them. By the great partnership that we have with our partner with Radat and others, we provide a fully validated solution that removes guesswork, removes all the legwork that they have to do if they were to embark on the journey on their own. So there are no configuration questions, there are no sizing questions. We provide all this information that customers can leverage. At the end of the day, the enterprise customers, they want to use something that is validated, they don't want to spend their valuable resources on something which can become a science project for a long period of time. It's all about getting something that is enterprise ready, running on a very stable and reliable platform. So we have from an open stack private cloud perspective, the main use case, as you can imagine, is infrastructure as a service. We have a couple of... Okay, so it looks like the graphics are kind of not good there, but yeah. So let me try again. Ah, okay. I don't know what's happening there. We have a couple of validated solutions out there for customers to adopt. It's all about the end of the day. Our main goal is to provide options for our customers, be it a option from an open stack version perspective, be it the kind of storage they want to use or the capabilities they want to use. Based on that, we have two things that I'll talk about in the next couple of slides. It's the focus here is to provide validated infrastructure as a service offering for standing up private cloud in your data centers. The way we do it is, by following the rigorous model we have, okay, the way we do this is by following the rigorous approach that we have, Cisco, that many of our customers are already familiar with, the Cisco-validated design model. Here, four key elements come into play when building these solutions. It's driven by our customers, driven by the common use cases, common pain points, common issues that they are addressing. So those things make a big part of this whole process. That's the customer-selected engagements. We work with them, collect the requirements, do a product development by working with customers, with partners to get the best out of the system. And we provide thought leadership by working with the best of the breed in terms of technologies, in terms of skill sets, and provide a tested and validated design with detailed reference architectures that provides best practices in terms of configuration, sizing, and the use cases that you can run on it. So this provides a reliable model for our customers to leverage as they embark on the journey. So one solution that we have with Kilo is Cisco UCS with the data platform running self-storage in the backend. Here, this is a production-ready cloud deployment solution. It's a highly-available architecture and a scalable solution that customers can leverage even if they are starting fresh or deploying a large-scale setup they have. It's a completely integrated co-engineered solution wherein we provide seamless end-to-end configuration and management capabilities for our customers. One of the things that Karthik mentioned is about support. So one of the big things we bring to the table for our customers is Cisco solution support capability. We act as a single point of support for our customers, be it a physical layer, virtual layer, or the applications running on top. So customers can call Cisco and be assured that they'll be able to get the resolution they need, which reduces the downtime, if you will, if something were to happen for the customers. So details on the individual components. I'll skip that for now. The other thing is the second option that we have for our customers is... Okay, once again, sorry about the formatting there. The other option we have for our customers, for customers who are using a particular kind of storage, for example, with NetApp, FlexPod, as many might know, it's a proven architecture from a Cisco-integrated infrastructure perspective. So we have a solution out there as well with FlexPod with Juno OpenStack version that is being refreshed for newer capability as well. Here, it's Cisco uses integrated infrastructure with servers and switching, and NetApp storage on the storage side using the Red Hat software components. Same capabilities, enterprise, production ready, private cloud, with the same capabilities in terms of scalability, availability, and support. So these are a couple of main things that we have, but we have multiple options out there for our customers, depending on your preferences for versions or vendors that you have out there. So quickly on why I'm in Cisco for OpenStack-based clouds, right? So one of the things that we are known for is, I mean, reliable and leading integrated infrastructure platform. So we are combining the capabilities of proven architecture, proven platform with the leading edge capabilities offered by OpenStack. By combining our joint strength between Cisco and Red Hat, we are able to provide a reliable solution for you guys. We have application-based policy infrastructure. I mean, with OpenStack, it's all about automation, it's all about open APIs, it's all about policy-driven architecture. So combining Cisco, combining Red Hat provides that capability for you guys. I'm not going to other capabilities in terms of security, reliability that Cisco is known for. We bring it to bear by leveraging the plugins that we have co-engineered with Red Hat as part of these solutions. So from a vertical perspective, we talked about infrastructure as a service, but we have a couple of a few other solutions out there, either being in works or already available now. So the next one that we talked about during keynote today about big data and analytics. So we are offering a Hadoop as a service built on OpenStack, Red Hat OpenStack. Basically, by virtualizing Hadoop, we are able to support multi-tenancy. So some of the metrics you see there, I'm not going to go through them line by line. Over a period of time, we have proven that Cisco uses integrated infrastructure, provides inherent capabilities in terms of savings, in terms of performance, in terms of economics when they're running their big data applications on top. By combining those capabilities that we have, along in the OpenStack context, we are helping our customers be more successful when adopting newer technologies. The other thing that's happening in the industry, it's software-defined networking. So Cisco ACI is a leading software-defined networking technology that we have. So we are bringing those capabilities, combining ACI, OpenStack, as well as UCS in the same architecture, same solution that customers can leverage. Many of the customers that we talk to, they're interested in SDN, they're interested in OpenStack. And we want to make sure that we enable those customers. They're able to adopt these new capabilities, new technologies, without having to worry about going through all the pain in terms of design, architecture, and all that. I will skip this slide. I will not go into too much details here. The point here is that it's not just that we are trying to position ACI for our customers. It's the developers like the capability that ACI brings to the table in terms of programmability, in terms of automation, in terms of policy-driven architecture. So this ACI, OpenStack, and UCS, they all play well from an OpenStack context. Let me wrap it up from a solution portfolio perspective, what we have today and what we have in the pipeline. So earlier I talked about, I mean, infrastructure service. That's a big thing for our customers, even though OpenStack has been around for a long time now. Many of the enterprise customers, especially, they are in the process of adopting, evaluating, adopting OpenStack now. And we want to provide these capability-validated solutions for them to adopt comfortably. So the new thing that's on everybody's mind, we talked about it briefly during various breakout sessions today, as well as during keynote. Bare Metal as a Service is a new capability that many of our customers are looking for. Leveraging Ironic, we will be able to provide that capability. So this solution is being worked on with Radat. That's something our customers will be able to leverage, not just for Bare Metal, but also for specific applications that require Bare Metal capabilities as part of an overall cloud. And then the OpenStack and SDN solution, the journey that many of our customers are taking, the ACI solution that I talked about with UCS, so with UCS with ACI, we'll be able to provide that capability with OpenStack. With that, I will... So this is all the stuff I talked about, is these self-managed solutions that customers can leverage. But many of our customers are interested in not necessarily standing up on their own, but they would like Cisco to help on that area. So that's where we have a few solutions that Hart is going to talk about. Thank you very much. So hello, I'm Hart Hooper. I'm with Cisco Metapod. So as Vish was just saying, talking about a customer-managed OpenStack solution, I'm here representing the Cisco-managed OpenStack solution called Metapod.  They are very hard to find, you people out there. You're hard to find, believe me. So what companies are doing are saying, I know I need to get to the cloud, I know I want to use OpenStack, but I either don't want to pay a ton of money for OpenStack talent to run this for me, or I just don't have the expertise in house. I guess it's not going to happen. So I want Cisco to manage that for me. So when companies adopt Metapod, their users are delighted because they get what they want. They get a public cloud experience with a private cloud delivery.  We have open, well-documented APIs. These are OpenStack APIs. There is really nothing super-secret about them, right? We give users instant provisioning of computing, just like a public cloud. They log into a dashboard, they use APIs, and instantly provision compute and storage, and networking. And finally, because they're using their own servers, they get consistent, reliable performance. They don't have to necessarily worry about noisy neighbor outside of their company. If they have another team inside their company that's a noisy neighbor, that may be a problem. But as far as consistent, reliable performance, Metapod can give that to them. As I said, developer tools integrate with OpenStack, and therefore they integrate with Cisco Metapod. Like crazy.  It integrates with Metapod. Everybody get their picture? iPad guy in the back? Awesome. But not only does it provide what users want, it provides what administrators want. So if you were here for the keynotes earlier this morning, you saw Boris and his bear trot out, right? And talk about VMware admins out there in Cloud World, right? Who want to deploy OpenStack. Administrators get what they want because they get to manage and govern users, groups, and projects.  So flavors being RAM, disk, CPU. They get access to security policies and authentication. They get to control firewall rules, keys, et cetera. But on top of that, they get highly, high availability. They get monitoring and management from Cisco. And they also get historical real-time reporting. And they don't have to run OpenStack because we're doing that. So as far as what does Cisco do for you when we manage your OpenStack Cloud, we help you design and architect the solution. We deliver it to you as a service. We help you install it in your data center and then we deploy it for you. We then monitor it for you, make sure all the OpenStack services are running. And if they are not, we log in and fix it. If there's a problem, we'll solve it. We coordinate maintenance with your team. So if there is an upgrade or a maintenance that needs to occur, we actually reach out to your team via email or support ticket and say, hey, we want to run an upgrade on your cloud. It will impact these services. What is that cool? Here's when we want to do it. And if you say, yeah, okay, that's cool, then we do it. And if not, we schedule it around your schedule. And finally, we also provide capacity-planning reports to you. So if your adoption rate is, oh, my gosh, higher than expected, which it probably will be because cloud is amazing, you get a report saying, hey, you're almost out of space. We should add more capacity just to let you know. Most importantly though, Cisco Metapod has delivered to you the big takeaway as a service, a public cloud experience. Thank you for your time. Let's talk about network function virtualization. Here's Sunil. Thank you. Hi, guys. Welcome to the last session, literally, of the first day. I know it's been a long day and you heard a lot of talking points. Right now, I want to talk to you about a really exciting field that's developing, that's growing really rapidly, and that's in the space of NFV, network function virtualization. There's a lot of action. It's just amazing the amount of velocity I'm seeing here in the last nine to 11 months. The amount of RFPs I've been personally responding to and the number of service providers who have been adopting NFV and adopting OpenStack as a vehicle for them to launch their products. It's amazing. Today, in the next 10 to 15 minutes, I want to talk to you about NFV and FEI. What are we doing at Cisco to address some of the problems that this growing space is encountering? Together with Red Hat, how are we fixing them? What pain points are we addressing? Really, guys, in NFV, as you virtualize applications and your functions, performance really matters. With Red Hat and with Intel, we can demonstrate to you what that means. Really, when you look at NFV, it's taking monolithic appliance-based solutions and then deploying it in a virtualized environment. That's what you see on the left is the monolithic environment. On the right, it's a new virtualized environment. Now, where I see customers today, they've just embarked on this journey, and 90% of them are just essentially virtualizing their appliance. It's still monolithic. It's still running as a VNF on top of infrastructure, and that's where most of our customers are. But where we see them going and where we are leading them down is you also have to think about changing your applications, making your applications cloudy, highly available, modular, and being able to stay resilient, independent of the underlying infrastructure as much as possible. This is a big challenge. This is a challenge that has been encountered on the consumer space, and they're making the journey too. And an enterprise and service providers, they're just starting on it. It's scary. They don't have the expertise as my first world colleagues and Karthik talked about. It's not there. They're growing it. And depending on where they are, they're trying to get functions out into a marketplace that lets them extend their infrastructure investment, maintain that TCO, so it's about getting the time to market first, and then it's about, okay, let's do esoteric things. Let's make it even more better. Let's do best of breed. Many of my SPs who have embarked on the best of breed picking up the different components like Karthik talked about, building this car that never gets built because it's very difficult to get all of these different components to work together. The upgrade and update process that Vish talked about is huge. If you want to take advantage of the innovation that OpenStack provides, you want to be able to move as rapidly and quickly as the community is moving because they're fixing bugs, a ton of bugs. My team in Mitaka fixed about 300 bugs in the cycle. We are focusing on a pain point. So if you want to take advantage of that innovation, you have to be prepared to be agile. And this is another problem that I see my SP is struggling with. I still own a waterfall model, and they're not very comfortable with just in time, building it just in time. So we're helping them down that journey. So what really is NFVI? It's a set of hardware curated and software together that forms NFVI, the network function infrastructure. This is the base on which our SPs and even enterprises are looking to deploy their functions, their services running on top of this. What have our customers been telling us? These are the top five after talking to about, you know, 20, 30 of them. It's about carrier class performance, and I'm not talking about five nines here because five nines, frankly, at a system level, it's impossible to get. We're talking about is your solution resilient? When the cloud goes down, when portions of the cloud goes down, can itself heal? Even before it heals, you as an operator, can you observe the situation developing where your cloud is getting to its limits and it's going to go down? Can you take remedial action? That's what they mean by carrier class performance. They want to be use case agnostic, which means, hey, I invested all this money in this infrastructure, millions and millions of dollars. I want to be able to take this infrastructure and run different workloads on it, and we'll show you what types of workloads we are building and developing and deploying on our joint solution with Red Hat. It needs to be open standards like I talked to you. They want to be able to, they want to be able to take advantage of the innovation, the agility of this huge, vibrant open source community that all of you are part of. They want to be able to take advantage of that. They want to be able to adapt to changes in technology as and when they happen. They want to be able to use this, all of this, with unified management. Think of all those moving parts in the car, but being able to control them with a single pane of glass. And most importantly, when a cloud goes on at 2 a.m. in the morning, they want to be able to pick up the phone and talk to one person, one company that can bring them back from the downtime. I'm sharing with you some of the early adopters. All these names are public, but what I want to point out here is that even though Journey has started, it's very rapid. A lot of SPs, a lot of big SPs are deploying it. You heard AT&T talk about it in their keynote earlier in the summit. Seven percent of the infrastructure is going to touch open stack, so it's real. It's getting there. What SPs are looking at and enterprise customers are looking at are these four areas, capital efficiency, operational savings, service agility, and innovation and differentiation. And the last part is where a lot of people forget, but that's really what's motivating our end customers to differentiate their services.  It's the desire with best of breed, but it's very difficult to get. They really want to differentiate, get to market fast. It's also differentiation. So getting to market on a very, very stable, repeatable, consistent infrastructure is very important. So, okay, how are they approaching this? They're approaching this from multiple ways. Some of them are use case-led. Some of them are orchestration-led. And a lot of them are actually going from the bottoms up, which is from a hardware perspective. And we have different elements here. We have the IT guys getting involved now with the traditional networking guys. They come from different backgrounds, and they're all trying to approach the solution based on their historical expertise. So in such an environment, having someone like Cisco and Red Hat sort of calm things down, provide the solution to them in terms that they are used to, and helping them on the journey is very important. And at Cisco, we pride ourselves in participating in a lot of these open-source projects because we feel that we have the right expertise on the networking side to help guide and shape the direction in which this growing industry needs to go in. So we participate heavily in OpenStack, OP NFV, and Open Daylight. And we partner very closely with Intel and Red Hat, ensuring that the innovation that Intel is building and Red Hat is exposing gets actually used and consumed through the software platform that we are building with both Intel and Red Hat. So earlier we talked about NFVI. It's the physical hardware at the bottom with a virtualized software platform running on top of it. That is NFVI. Above that you have the different use cases, so automation, management, above that you have the applications and then you have the enablement, which is how do I automate it, how do I manage it, how do I orchestrate, and what analytics can I run? How do I ensure that the solution that I've built is actually performing well, that I can benchmark, and I can prove that I'm delivering value and SLA to the applications running on top. So clicking on one level, we are running our set of tools and software packages around and on top of RELL OSP and RELL. And as RELL OSP moves with the versions, we will be upgrading and providing in-place updates to going forward. So what this means is that as you are building your cloud, you will be able to move and take advantage of innovation pretty seamlessly. You don't have to do a rip and replace. And you will be, best of all, you will be working on 100% upstream code. So we're not modifying anything in the underlying NOVA neutron areas. We're just running on stock open stack. We're just providing our customers a set of tools and capabilities where they can deploy, monitor, and manage their cloud in a way that they've never been able to do before. And all of this is just getting it up and running, right? Making it run extremely well is another area we are focused on. Making it run extremely secure is another area we're focusing on. And we're working very closely with Red Hat and Intel in ensuring that all the latest technologies that are being exposed by these companies are consumable to our end customers as we productize it. So, like I said, simple access to support. Cisco will front-end this and you'll get excellent tax support. And behind the scenes, we work with Red Hat and Intel to ensure that any bugs that have been found down to the kernel level OS are seamlessly fixed. The other thing we want to do here is we want to be able to bring in innovation into the solution level much faster than waiting for upstream to actually get it out and release. This way, we'll allow our customers to try it out in a real world situation, get the telemetry from the experience, and feed it back to the community. So it's a virtuous cycle. When we are upstreaming a fix or a blueprint, we're back by real world data, by real deployments. That virtuous cycle, that's what we're going to accomplish here with this partnership and make OpenStack product as well as usable. Use cases, like I said before, they want to be able to run multiple use cases. Enterprise is one, so virtual managed services is an example of enterprise-based applications. Mobility is another, you know, VPC, virtual packet core, GLN, being able to deploy that. And then finally, media, media workloads, being able to transcode your workloads either locally or on a cloud. Talk to you about performance, right? On the right, we've actually published this with ENTC, which is a third-party benchmarking company earlier this year, where you can see stock obvious performance on the right, it's getting better, but it still has a ways to go. And what our SP customers have been telling us is, please show me a way in which I can get line rate performance or close the line rate. So with our virtual, with our packet core processing that we have, VPP, packet processing, we are able to generate tremendous packet forwarding performance. And on the left-hand side, we can see the increase in performance across IPv4, across, you know, VM to VM. We get 10 gigabits per second by stock OBS. And 77% at line rate, at 20K, all of this with zero packet drop. In fact, at MWC earlier this year, we demonstrated with three VMs, 40 gigs bi-directional traffic. 127 byte packets, zero packet drop. And on bare metal, we are able to demonstrate 136 gigs of packet forwarding performance, but that was at large packet sizes. So on both extremes, we are able to demonstrate achievable performance on open stack for NFVI. And to wrap it all up, why Cisco NFVI? Because it is carrier grade. It is open and elastic. It does embrace all aspects of cloud networking. It's multi-domain, and we have rich partnerships with Intel and Red Hat as an example. So with that, I'm going to stop. I want to open up the floor for questions. Please show us all the questions. Yeah, and I realize it's 20 minutes before the drinks open as well. So feel free to come up to the mics and ask questions until then. We'll be hanging out here. We'll obviously all be accessible whether at the Red Hat booth or at the Cisco booth as well. Go ahead. I have a question that kind of goes towards the NFVI, but I think everyone might be able to help answer it. And it has to do with the innovation and being used as a competitive differentiation. How do you position that with customers when they're saying the whole reason they want to go to OpenStack is for no vendor lock-in? It seems like these are two opposing ideas. I'll go first, if you don't mind. Yeah, that's an excellent point. And the way I look at comparative advantage, if you get first to market with your solution, that itself is a comparative advantage. And by being able to take advantage of the latest innovation that's coming in, being an early adopter, you're taking some risk. You can differentiate there too. The flip side is you want to make sure that the chases of the car that you're driving are stable, because you want to focus on the engine. You want that engine to be the best damn engine possible. But if a chassis does not work well and it's not able to give you the direct drive to your tires, the engine can run as fast as it wants. It is not going to be able to propel yourself fast enough. So we're ensuring that the chassis is very stable and reliable and you just get the engine running fast. So that's what we're building. I just had one more point there, which is fundamentally, Red Hat is really a fundamental principle that Red Hat bases our company on, is that we believe in the open source community. We believe in making sure that everything we do is open source. And even beyond that, the technologies that we put into our products is available in the upstream community first. So all of the collaboration that Red Hat and Cisco have going on is based on having those technologies available in the upstream community. So the intent is to make sure that what you're getting is a completely open solution. And if you have a functioning solution that works well, at some point you decide that doesn't work well in replacing components. Absolutely. We'll help you if you want to work with others. It's all based on upstream open stack components. Yeah, the tools I spoke about for measuring performance and checking the cloud, they're all open source projects. In fact, one of them is already in open stack and Cisco, we have big proponents of making things innovative open source so customers can take advantage of it. Thank you. Okay. Let's talk about the strategic differentiation from Cisco's NFVI and NSO. Okay. So NSO is the orchestrator that's running on top of our NFVI. And it's a great orchestrator. It's by Teleth. But we're not tied into that orchestrator. So customers do have a choice of actually choosing their own flavor of orchestration. They get unparalleled performance when it comes to life cycle management of VNFs onboarding them and being able to manage and maintain these VNFs, you get tremendous performance advantage. It's up to customers. Everything about NFVI is modular. You can choose your SDN controller. You can choose your VNFM. You can choose your MANO also. But we do provide our own solutions in case you want to do that end-to-end You don't want to do too much of do it yourself. It's there. Any other concluding thoughts? Any other questions? Some of the takeaways I'd like to leave you with, right, to think about through the rest of the week, is that first of all the innovation that you can get with OpenStack and all of the component projects is incredible. What you can do with the technology is amazing. But at the same time it's very easy to get distracted for all the shiny new objects that are there, right? The collaboration between Red Hat and Cisco is focused and our partners like Intel and NetApp and others within ecosystem that are focused on these solutions is around the real world. What do customers need? The basic building blocks to make sure that they can walk before they can run. And so if you are on the stage of planning your OpenStack deployments come talk to us. We have a bunch of best practices you can learn from us. We can help seed some of these building blocks in a fashion that might make sense for you based on your specific needs. And we are absolutely available accessible. Come talk to us in our booth. The slides that will be available to you, we have URLs where you can download some of the reference architectures. Any other parting thoughts, guys? Right. We're open to partner with you guys, discuss with you guys, provide information in terms of the whole solution as well as pilot effort if you guys have to embark on the journey and open for any questions. Yeah. Cisco's booth is C11. There we go. Come see us. Thank you. Thank you.


After months of requests from Ukrainian officials, the Biden administration is working toward providing Ukraine with powerful new long-range ballistic missiles, according to two U.S. officials. The NBC News reported this to IT as noted that late last year, the U.S. began to supply Ukraine with Army tactical missile systems, known as ATTICMS, but so far it has provided only the older medium-range ATTICMS. Now, the U.S. is leaning toward sending the longer-range version of the missile, the official said, which would allow Ukraine to strike farther inside the Russian-held Crimean Peninsula. But U.S. funding for arms shipments to Ukraine remains uncertain because of opposition from former President Donald Trump and his Republican allies in Congress. Last week the Senate passed a $95 billion foreign aid package for Ukraine, Israel and Taiwan. But it's not clear whether or when the GOP-controlled House will vote on the measure or whether it would survive the vote.