Rule number five, remove limiting beliefs. We all have these, but we don't know it typically.  For example, fear to be uncomfortable, to get out of your comfort zone. Like you better believe I didn't want to make a bunch of cold calls when I was a brand new agent. Like it scared me, but I knew I had to do it. It was a limiting belief. Fear of spending money because I don't think I'm gonna be able to go recoup it. That's a fear, that's a limiting belief. Or, here's a big one for me, I don't know about for you guys, but worrying about what everybody else thought of me. Worrying about what my friends thought, worried about what my family thought. Like I wouldn't do something, I wouldn't take an action because I worry about what everybody else was thinking, man. I want you to focus on figuring out what those limiting beliefs are.  You have to identify it, and then you have to do everything you can to eliminate it. Anybody else have an example of one that has held you back, that you've started to actually overcome and everything's changed? Maybe it's one I mentioned, maybe it's one I didn't mention. For me it was my accent. Okay. It was, it was. Yes, dude. It's all up there, totally. I had a gentleman in Houston, Texas say the exact same thing to me. And I swear, I didn't even notice the first eight seconds he was talking until he mentioned it. So I think a lot of times we create these false beliefs of things that are going to thank you for being honest to mention that. Because we create these things that we think are going on and holding us back or people are thinking when in reality they're not. So that's something that, because for example, I know only Dan and Clayton are actually Cardone fans and nobody else likes them. That's which is fine. Or is that true or not true? Okay, good. Okay, good. Clayton, you lied to me. No, just kidding. No, I know he didn't say that, I'm just joking. But I paid to go to a $50,000 master mar with Grant Cardone back in February of 2020. This was one of the things that he mentioned that got my attention like nothing else.  I've always worried about what everybody else thought. Like when I would do videos, we've got 28,000 insurance agents subscribed to our YouTube channel now. Who subscribed to our YouTube channel, by the way? Okay, good. How about that? That's cool, man. Thank you. Boom. Okay, can we fix that and get everybody else on there today? Okay, it's free. Okay, good. Thank you guys that we're on it, though, that's awesome. But what I've learned is I used to not do a video or like overthink stuff. Like who else like overthink something before you do something? I'm telling you, details delay, details delay. The more you think about doing something, the less likely you are to ever do it. Procrastination is real. Also, time kills all deals. Whether that be me personally adding time to whatever I want to do or talking to a prospect and allowing time for them to think about it. The longer a prospect thinks about buying for insurance from you, the less likely it is that they will actually buy it. I promise. Who's committed to figuring out what those are this year and removing as many of those as you can? Okay, good. This will be tough. This will be one of the toughest things I've said. Rule number six, effort. Effort. I remember at 16 years old, working at a little local Apple Market, a little grocery store in Rogersville, Missouri, and I'm supposed to go to work at four o'clock. Okay, she's enjoying this. That's already here. Either way, that's awesome. He's enjoying this. That's good. So let's go to work at four part-time. It's 3.30 and I'm throwing up. I don't feel good. So let's go to work at four, 30 minutes before I'm just not feeling well. I go to my dad. I'm 16. I'm not feeling well. I don't want to go to work today.   So I went to work because I've never seen him miss a day of work in his life. When I don't feel like speaking at 7.30 a.m. in Orlando after I get in at 2.30 or 3 o'clock in the morning, guess what? I do it anyway. Because effort is the name of the game. Like there's three things. What have a whiteboard doing now? It's fine. There's three things that could hold you back from hitting your target. Thank you, buddy. From hitting your target in 2021. Okay, somebody give me a goal. Or if you don't have one, you need one, but at least just make it up and make me think you do. Buy a Tesla by my next birthday. Dude, I like that, man. Give him a hand. That's awesome, dude. I want a Tesla. That's good. Okay, give me an income goal for 2021. Okay, good. 1.5 million issued. And what's your name, ma'am? Caitlin? Oh, you're gonna, okay, good. Thank you. There's only three things that could hold Caitlin, right? Back from doing that. Who wants to know what those are? I'll tell you later. Okay, well, all four of us, I'll tell you later, okay? Anybody else? Okay, good. Number one is effort. Number one is effort. Majority of agents struggle with the effort piece. The second piece that could possibly keep Caitlin from doing this because she may not put forth the effort. She may not work hard enough. Now, I hope that's not true, but it's up to her. We'll find out, right? You work hard, right? Everybody tends to agree, so that's good, right? That means she's a great example for all of you. Second, skill. She may not be skilled enough for that to happen. Now, I'm thinking she probably is from what I'm hearing. However, what's unique is she chooses how much effort she puts in. She also chooses how much skill and how developed her skill becomes and how good she becomes at what she does. Getting really great is a choice. Like if you're in a place where your skill isn't up to par and you're like, good, I'm new. My skill's not where it is. Guess what? You can put in the effort for your skill to go up. True or true? True. So it's a choice. We get great because we decide to. Third thing that can hold you back from doing 1.5 million, Caitlyn, this year, knowledge. She may not know enough for that to happen. But guess what? If we wanted to download Dan's health insurance brain into mind and I wanted to absorb everything he knows about health insurance and selling health insurance, could I learn everything he knows? Yes. Which means all it takes is effort. The only thing that could keep you back from doing whatever you want is effort, skill, or knowledge. And guess what? If you don't put forth the effort and work hard enough, if you don't put forth the effort for the skill to go up or if you don't put forth the effort to actually learn what you need to know, then you can't do what you wanna do. But it all starts with what? Effort, which is a choice. Which means the ones that are successful chose to do whatever it takes to be successful. Who was dissatisfied with your personal effort level in 2020? Good news is you can change it this year. Who's gonna make a commitment right now to change it this year? Okay, good, good. Me too. Okay. Hey, due to popular demand, we brought 8% virtual, the conference with 3,000 agents on it last year back to you, I can promise you. We will have over 10,000 agents that will register. It's totally free. Myself, Tom Hagna, Cells, Icon, Brian, Tracy, and about 15 other industry titans coming to you to help you be a better insurance agent in 2021. I want you to look back and say 2021 was the year. This is free. I'm committed to helping you. Are you committed to attending? Stop what you're doing. Click the link below and register. And I will see you and 10,000 others on March 5th and 6th. Rule number seven, you're gonna train every day. You're gonna love this. My office, we train twice a day. Cells training videos, either Cardone U or my Cells system. We discuss what we learned and then we role play twice a day as well, right? I get it. It's awkward. It's cheesy. Nobody really likes it. However, I've seen average sales people get great only because of role playing. But most people role play incorrectly when they role play. Can we teach you how to role play correctly? Here's what you gotta do. Number one, we stand up when we role play. A lot of people try to role play sitting down. It's like, I won't be sitting down all day. I might as well stand up when I'm doing this, right? Number two, we role play something specific and we role play it the whole week. So every time we role play twice a day, those 10 role playing sessions for the whole week, we role play that one piece, that one objection that we were struggling with, that one closing phrase, that one referral phrase, those trial closes to create engagement before we ask for the sale. We role play one specific piece the entire week. Most people don't do it right. You wanna go from average to great. You will start to take this thing seriously. What I didn't say earlier is as a brand new agent, I would listen to Brian Tracy's, the art of closing the sale every single day in my car. I still don't listen to music in my car because it doesn't make me better. Yeah, it gets me hyped, but it doesn't actually make me better at being a master of the art of my craft.  I don't care if you gotta train, like role play with yourself in the mirror. I don't believe in practicing on the first call and we train and role play every single day. There's five things I do to start my morning every single day. I started doing these three years ago and it changed my world. We're gonna see if you guys will do all five. Who wants to know what those five are? Number one, number one, I wake up before 6 a.m.  I used to tell myself the same thing, okay? Good, boom. Number two, I write down my goals every morning. Good, you're with me so far, that's good. Who else is? Okay, good, good, good, good. Like actually every day, by the way, I also work out every day. Energy is everything. Me and this guy are like the same person. Energy is everything. Your energy matters. I only work out, yeah, because I stay fit. However, I do it because I don't sell, you don't sell health insurance. You sell conviction. You sell passion. You sell you. You sell a relationship. You sell a personality. You sell a belief in what you sell. And you do that by transferring energy across the phone. If my energy's low, if I didn't go, like the gym at Talking Stick, where we're doing an event, is closed, I could choose not to work out. I haven't out, I have an excuse.  It's not really that hot right now. Compared to July, right? But I'm doing that because I'm speaking multiple times today and I need my energy to be right. So, work out, okay? Four, I learn something every morning. Audio book, book, YouTube video, I gotta be learning always. And number five, I'm gonna test you now. I finish every shower with a couple minutes of ice cold water. Dude, you gotta add that now, okay? Okay? I'm gonna add that. Okay? Yeah, and you know what? The water is not near as cold here as it is in Missouri. I'll tell you that, okay? But why? Why? Number one, it wakes me up. I like feeling alive. I like feeling awake. And another big thing is it forces me to start my day with something I don't like to do. I believe in starting, I don't believe, like people are saying on social media that you can do whatever you want and you'll still be successful. Like you don't have to do the stuff you don't wanna do. I don't believe that. We have to do stuff we don't wanna do to be successful. I'm training myself every morning to do something I don't wanna do to tick off my day. Hey, if you enjoyed this, I got another one you're gonna love. It's right there. Click on it. See you in there. Boom! Hey, I get asked a lot, man. I say, hey, how do you continue to level up yourself? I had someone earlier on Zoom say, dude, I'm thinking about, I'm about to make $600,000, $700,000 this year. I don't wanna get complacent. Well, you start making a lot of money.


Hello and welcome back, I'm EvilRabbit, we're here on VDC Surrup 2021 in my new drift car. My new pro car, all you're going to see is this view. You're not going to see anything else, give you guys a little bit more of a teaser so you guys can keep guessing what it is. Nobody's gotten it right yet. We are in a boosted motor, not a V8.   It's not a Volkswagen. A lot of people were saying the Polos and stuff, it's not. So I'm joined here today by Addy and Frost. They are actually going to be running in Addy's Drift Division A90.  Now we are going to be just running some testing here in the car so I can get some shake down in it because this thing's a bit of a big girl. It's a little, it's a little bit longer than some of my other cars. So it's definitely a fun car. So we're going to do it, so without further ado, let's just drive. All right, time to make a full of myself. Who am I following? I don't know. Thank you, okay. Why do you start so far back? I don't know. I always have. The moment you forget the mouse is on your rig and you have this cursor bouncing around. He's so sorry. Oh, you're good. I had a cursor bouncing around on my screen.  Oh, that's nice. That's nice. I got to make sure, I got to check the gearing. This gearing might not be right. Oh, and by the way, if you notice, there's no pedal cam to date. My pedal cam decided to want to say I'm the head out. She's just, USB is in a running mode. Oh, yep. That was not, oh, nope. No, no. I need to add some more side-bytes to this car, Addy. Do I need to do things? No, I think I just need to add some more tow or some more positive camber. I was like, if I go back to pits, OK, good. It doesn't go to the third person camera, so we're good. I was making sure that you had to do a little editing to that one. Are you running positive camber in your car? Yes. How much? 0.3 and that's it. Yeah, just 0.3. Let me dial it back. Maybe I have too much. Are you running tow? Yes. How much tow? Oh, how much tow in the rear? Because that should grip me up a little bit. I am running 0.3 in the rear as well. 0.3? Uh-huh. By the right height of 75 millimeter. Well, right height is going to be totally different on these two cars. Oh, true. Yeah, because. All right, we're going to try this, and we're going to give it our best college send. Who's on the line? Frosty, you boy. Hey, is that car longer than the X car longer than the A90? It might be, slightly. OK, that's a little bit more grip. Still trying to remember where the back bumper is in this car. You can't third person. Oh, yeah. All right, let me try to get a chase. OK, let's get that out of here. Give it to him. Don't leave me at the line. Make a rabbit sandwich. Make a rabbit sandwich right here. I'm way short to catch up. Addy, you are leaving me. Oh, no. I saved it. Saved it.  This thing is right on par with DMVC speeds. I think I need to go back to my default set up or back to my base. And I think I just need to change. I think I need to change my tire pressures because I'm at 28 and 22. I found it in the rear on the V2 tires, like 19, 18, and 18, 19 somewhere in there. Because when it gets hot, it gets 22. Right. And you want to have a hot 22. Drop the pressures. I love all the bangs and the pots of this car. This is probably the worst track to bring this car up for the first shakedowns. Really? You want to change your whole thing? I think we should, because this is a bad track to be shaken down. This dude's talking that we can do something on. Rocking him is what the one you're talking about. Yeah, the other one. I have the idea of that one. I just realized these mirrors are a dead giveaway. If they know the cars, these mirrors are like a dead giveaway. If they know the brand, yes. Who's that, Addy? Frost. Oh, it's Frost. I have my neon sun right now. That's the way to distinguish. Oh, I'm so sorry. I did tweak the physics a little bit, Addy. Oh, what did you do to them? The words are hard. I lightened up the wheel feel a little bit, because it was getting a bit too much on the banks. That was pretty solid lung. New tires. I'm going to send it on these and see what happens. So we're going to send it on these tires. I don't know how much these tires are going to rip. Oh boy, I'll find out. If yours runs like mine, you should be around 80 right now for your tire pressure. For your tire flare. Because I found that the VDCV2 tires run kind of similarly, regardless of Jesse. I love this car. Maybe I didn't have that in zero point. I just put it in chat. I absolutely love this car. We'll call it X for now. We'll call it X car. Or we can call it. Load it one more time. Load it one more time. We can call it the Drift Division-ish car. There you go.  Give me a leaf, Ross. Go ahead. What's the bully you like I bully Eddie? Now go ahead and bully him. Eddie said it, not me. Wow. That car launches to the power.  I'm going to test this theory. New tires. We're going to test this theory here. We're actually going to bump my boost down to 80. Oh sure. Asking for some grip. I'm wondering if I'm blowing the tires off, because I mean this thing does have over 1,000 horsepower and I think I might be blowing them off before us. It's a good calculation. Oh. Nice. Bump. I'm watching the radar. I tried to save you. We both went airborne and as we went airborne, my booty got touched. And there was no saving it there. I honestly think 80 is the way to go, because I was kind of pushing your door in a little bit towards the end of that bang. I think I might. Yeah, that car's fast.  I still have more than I could grab if I can get. Which I'm going to do a little bit more for the NBC. What the heck was that? That was a hard flick.  So, is your car, are you struggling to stay behind me? No. I'm pretty much full Matt. Coming boys. Let's try this again. Occasionally I'll be doing some throttle modulation. That's just the nature of the beast because you want to be able to do that. Exactly. I realize I have left and right on my paddles, but I hope both of them looks behind me. It's the simple things in life. And I didn't do this weird wonky entry. Please. Might do no freestyle driving. I got slingshoted off of... Hey guys. I'm going to try and get one solid chase and see. Are you in 4th? This is like bogging out for me. I'm in 4th for the most of it, yeah. I mean, around 3rd if you like, but that's what I'm doing. I mean, okay, so one thing I found out when Eddie had twin cars with me, we would have run the same gear ratios, but I'd be in a totally different gear than him. It just has to do with... Let me get a chase. I'll chase both of you. It just depends on how you drive and how your foot is. We tap twice. Very heavy foot. I'm wondering... Okay. I think remember we were having this issue when I was testing your... your car, Eddie. What do you have your diff at? Uh, should have the same diff. No, what's your diff settings? Are you using it for that car? Mm-hmm. 180 and then 22 preload. Yeah, see, I was at 80, 55. 180 and 22? Yep. I'm wondering if that's going to be the difference with my... But I changed my preload on every track. Right. 22 feels really good on first W. Okay, we're going to try running in 100 boost again, but on a different... Different diff. Different diff setting. All the fire in my face. I do enjoy that. I do too. That bump to your car unsettled me a little bit and sent me up the bank. It put me up on the bank. The frost saved me, it's fine. Yeah, it put me up on the bank as well. I was like, oh no. That's such a good run. That was a good run. I'm going to go 90. I think 100 is still too much. This car made it into the bump so much better. This rode off the car on the first shake down. Was that because of me? No. That was a bank. I went up on the bank and when this car goes on the bank, it does not like it. You rode it off before and you want to get to see it except us. Let's try it again. I'm also trying to find out where the rear bumper is in this car. Sorry. True. After we need to just like back you up into the wall and let you experience. I think I also need to adjust the collider. Oh my. I'm trying on my brakes. You run soft brakes on it. I run very soft brakes. That's 70-70. I started running 70-70. That's nice. You can just stop on them and then you've got it. Sometimes. That's why you have the e-brake. I have the e-brake set to the same setting as 100% brake.  So the foot brake isn't enough. Stop in there. Oh, it bent the tie rod. I was there and then you kind of changed the angle where I didn't expect you to and I kind of booped you. I was seeing how much more I could do. Kind of doing a little shake now with mine. Before a Drift Masters. I got a while. Yeah, you do. Now watch the rule books come out that this car is not going to be able to pass. I'll be like, ah! It should pass. Your production car. Why, I threw way too much angle on that one. I don't know who am I chasing. Hi at me. Oh, okay then. Me and Frost have a very similar driving style. I can't differentiate you two. I can just see the gentle glow underneath your bar. Oh! Frostman potato. I have my neons on, he doesn't. Let me not run into the cone. Yeet! Brain and factory. All the flutters with this car. I tried to surge on entry there.  That was my over angle at the end.


Hold am Five years of passed. Since the public voted to leave the European Union. It was the biggest democratic exercise in our countries history. II came to office on a promise to deliver on that verdict. In March 2017 I triggered the article 50 process for the UK to exit the EU. And Parliament supported it overwhelmingly. A oeddiwch yn yr hyn, mae'n ffordd yng Nghymru yn ystod yn gweinio'r wyfnod o'r unrhyw o'r unrhyw o'r Cyfleniadau. Roedd yn cael ei fod yn eich gynnig yn yr ysbryd am yr 29 oes. Yr ysbryd y gallu gwirionedd o'r cyfloedd gwirionedd o'r cyfloedd gwirionedd. Ieithaf, mae gwirionedd yn ystod oedd, mae'r cyfloedd gwirionedd yn gallu yn ei chymru. Rydyn ni'n ffain o'i ffordd, rydyn ni'n ffordd o'r ffordd a'r lchained oedd ymarfer. Rydyn ni'n ffordd o'r MPs yn ychydig o'u gof窵u oedd, o'u bod gennych nhw'n gwahorol o'ch cynllunio'n wathu'n rhoi gyfatrwyr, o'r cynllunio LlywDonnyn oedd yma. Rydyn ni'n cael ei ddau'r process bryd yng Nghym Intrwyddol i mewn ac yn ddwynt. Rydyn ni'n amser, chi'n ardal. i'r wneud o'r cyfrifau ar gyfer L.M.P. Felly, yn ddull i'r Cymru, ddodd ac yn ddodd, i'r cyfrifau o'r Cymru ar gyfer L.M.P. yn y 30 ddiwylltio, i e'r cyfrifau o'r cyfrifau i'r eich llaw. Dwi'n clywed eich eu dddiwyllion o'r ddodd y ddodd y gweithio o'r ddiddordeb yn gweithio i'r ddodd y dyma i gyd panfod gweithio ar gyfer L.M.P. a'r sicr syniadau yng Nghymru. Do they want to leave without a deal? Or do they not want to leave at all, causing potentially irreparable damage to public trust, not just in this generation of politicians, but to our entire democratic process? It is high time we made a decision. So far Parliament has done everything possible to avoid making a choice. Motion after motion and amendment after amendment has been tabled without Parliament ever deciding what it wants. All MPs have been willing to say is what they do not want. I passionately hope MPs will find a way to back the deal I've negotiated with the EU. A deal that delivers on the result of the referendum and is the very best deal negotiable. And I will continue to work night and day to secure the support of my colleagues, the DUP and others for this deal. But I am not prepared to delay Brexit any further than the 30th of June. Some argue that I'm making the wrong choice. And I should ask for a longer extension to the end of the year or beyond to give more time for politicians to argue over the way forward. That would mean asking you to vote in European elections nearly three years after our country decided to leave. What kind of message would that send? And just how bitter and divisive would that election campaign be at a time when the country desperately needs bringing back together? Some have suggested holding a second referendum. I don't believe that's what you want and it is not what I want. We asked you the question already and you gave us your answer. Now you want us to get on with it. And that is what I am determined to do.


Okay, let's go. So welcome everybody. Thank you for attending this last session of the last day. So thanks. We will talk about a field report, how we manage at OVH to live migrate or instances. So first, who are we? So my name is Arnaud Morin. I work at OVH. I'm involved in deploying, managing the point stack infrastructure for OVH. Hello, and I'm Julien Kosmaou. I'm working in the same team as Arnaud. So I'm involved in the deployment of public cloud infrastructure and the automation. So what are we doing? So basically at first, we were selling dedicated servers, bare metal servers. Since 1999, and then we tried to evolve and we provided some web hosting in order to let our clients deploy web pages, basically. We also do some dedicated cloud, which is a product based on VMware vSphere. And of course. So we are doing public cloud, we are providing object storage, we are providing instance and volume with, we're providing volume with safe backends. And of course, it's providing an open stack. So before starting the talk, just a little bit of context. So everybody is aware of what we're doing. So we are managing 25 open stack regions based on open stack, either open stack Juno or open stack Newton. We will talk a little bit later about how we have graded from Juno to Newton. And we have more than 250K instances deployed in all this region worldwide. And yeah. So when do we need live migration? So as a public cloud provider, we don't know what our customer managing their infrastructure and of course, we can't reboot the host with all their instance running. So when we need to do some hardware maintenance or we need to reinstall some host, we need live migration to move all of this VM on other computer nodes. For example, at the beginning of the year with the Spectre and Meltdown in CV, we had to update Kernel everywhere, microcon, and of course live migrate instances and upgraded host. Another big project for this year was to upgrade our infrastructure from Juno to Newton. Juno was running on trustee and Newton and Xenial. So to keep consistency between infrastructure, et cetera, we needed to live migrate also all the QMU process running on trustee to Xenial host. We'll explain that at the end of the presentation. And of course, with more live migration, it will trigger some bugs and we will try to explain the bug we are on control and how we fix it. So let's talk about the novel live migration mechanisms that we have. So first, what you must know is we used to have all the OpenStack regions on Boon to trustee running OpenStack Juno. And we were using some QMU and Libre version which were regular software version on this OpenStack Juno release. So we needed a very well-working live migration, but as you may know, it's not the case on a pure OpenStack Vanilla Juno. So and also we have multiple instance profiles and this is why our migration is painful because we have instances which can have local disk based on SSD disk and we also provide to our clients instances which can boot on Ceph disk directly. So we can also add some signed-off volume, attach signed-off volume to instances. We also have some config drive possibility, GPU, FPGA and of course a lot of different CPU architecture. So with all of this stuff, it makes our live migration very complex and we had a lot of edX managing this live migration bugs. So to describe a little bit our workflow, when we find a bug on our production, but live migration, first we try to reproduce that bug in our own dev environment. And then we can, we try to figure out what is the root cause, if it's on QMU or if it's OpenStack for it in issue. Because we are on Juno, a lot of issues have already been fixed upstream. So we check if there is already existing commit upstream and we try to cherry pick in our OpenStack environment. If it's not fixed upstream, if it's impacting the production, we try to find a code workaround. And we have a team with working on our OpenStack code and they try to work with guys upstream to fix the issue. So for the first bug we encounter, so on VM, we are using a lot of memory on a loaded instance. Migration, migration never finished and take really long to converge to the destination post. So to be able to finish the migration, we needed to post the instance, so with Virge Suspender and to reproduce the case, we tried to run StressNG in the VM. So here there is an example, so on source host and destination host with Virge command, you can have some metrics about what is happening on host source and destination. So here on destination, after VM was suspended, the migration can finished and you see that the data processed, it's huge and we try with a lot of iteration to converge the life to finish the live migration. There is an option in QMU, it's auto-convergence. So with this feature, it fixed a lot of issue, so for that, it needed to remove 2.5 and a new version of LibVirt that we have not on Juno, but we had on Newton. So first, the first thing to do was to upgrade QMU and LibVirt on our Juno infrastructure. So what auto-converge is doing? So when you are trying to live migrate instances, we are doing a lot of memory usage, even if you have a big bandwidth between your source and destination host, even with 10 GB, VM can dirty memory page faster than you can live migrate to destination host. So auto-convergence will slow turn CPU step by step to help live migration to finish. So here there is an example of how to enable it on Juno and on Newton. Yeah, we had also another issue which is related to the LibVirt method that is used by Nova to manage live migration. So on the Juno OpenStack release, Nova was using migrate to I2. So this function was not able to live migrate an instance which have a local disk and an attached signer volume. So because of that, we needed to shut down the instances, detach the volume, migrate the instance, not live migrate because the instance was shut off and start again. So the solution to fix that was to use the next version of this function and of course to do that we needed also to upgrade QMU and LibVirt again. One other issue we had was about config drive. Config drive is an option that you can pass to Nova boot command or OpenStack server create and when you use that, it will just create on the compute host itself a new disk.config file which is used by the instance to get instance metadata instead of doing HTTP call, it will use this file directly. But in LibVirt, if this file is in a specific format, then it will be considered as a read-only and LibVirt is not able to migrate this file. So the solution is kind of dirty, but it works is to use SCP command before doing the live migration to copy this file on the destination host. So LibVirt sees the file, it just says, okay, the file is here, I don't have to live migrate this file. And this is just a simple line of code that we cherry picked back to Juno. It's available on Nova code. So we didn't fix all of our issues. Recently, we tried to use CPU pinning mostly for L1TF CV. So we make some tests with CPU pinning in our infrastructure. So it's working great with the scheduling and QMU in Nova compute. But live migration is not yet implemented. I think there is people working on that upstream. And another issue we had was with the format of our disk. On some flavor types, we now use a raw disk instead of QQo2. And when we want to migrate some QQo2 VM to compute nodes configured in raw, live migration was failing. So we make a little patch to allow that. And I think maybe there is something we can work on to allow live migration from QQo2 to raw compute nodes and make the conversion on the fly. And about LibVirt migration feature, there is another option we didn't test because we don't have the QMU version needed. So it's post-copy. It's a really interesting feature to help live migration with really loaded VM to help to converge. So it's an option that can replace the auto-converge. But it's not impacting the guest like auto-converge do with CPUs total. And there is also a compression of RAM pages. So it's a feature we need to test in the future. So now that we show you all kind of live migration issues that we had and that we fixed somehow, let's talk about the tooling we built around that in order to automate live migration because nobody wants to use live migration by NOVA, live migrate, blah, blah. So what we first did is we developed a tool inside of VH that we called RunCLI. And RunCLI is amazing because you can use that to, for example, call some mistral workflows and you can just drain host. By draining, I mean you can just empty that host. So you are using RunCLI to tell OpenStack to just empty that host because you need, we need to do some upgrades, do some stuff because the host is not healthy or stuff like that. Around this tool, we built a lot of other features. So we can, for example, upgrade instead of only one host, we can upgrade multiple hosts in a bunch, in a bulk way. We can just manage aggregates. We can move host from a region to another. We can do a lot of stuff. And we also recently deployed Mistral in order to automate some actions using workflows. So I don't know if you are familiar with the Mistral workflows, but here is an example. We can see on this web interface, which is called Cloudflow, that we built a Mistral workflow called LiveMigrateInstance. And this workflow is able to live migrate an instance in an automated way by pinging instance before to check if it pings, trying first a live migration without block storage, without block migration. If it fails trying again, if it fails again, trying with block migration and do a lot of stuff that an operator can do manually, but just do it without manual action by an operator. So let's dig into this workflow. So first workflows on Mistral are very simple. First you have some inputs, which can be considered as variable. Then you have some tasks, which can, for example, execute an action on a remote server through SSH, through anything you can imagine. And you can also call some other workflows. So you can just chain workflows together. And at the end, you have some outputs that you can use in other tools, such as Renssela, for example. I have an example workflow, which is called LiveMigrate. It takes as an input only a region and an instance ID, VM, here. Then this workflow is, in this workflow, we try to ping the instance before doing the live migration. If the instance pings, then we will set a flag called pingable to true. If not false, of course, and uncomplete whatever the result we will continue by doing the LiveMigrate action. The LiveMigrate action is what? It's a workflow which is trying to use Nova server LiveMigrate function, which is baseline in Mistral. And it will try first without block migration. As you can see here, it's false. It will try multiple times. If it fails, it will execute another LiveMigrate action, which is this time LiveBlockMigrate. It is basically the same one, but instead of block migration false, we set it to true now. So this way we don't have to care about, is this virtual machine migratable or without block migrate? We just need to migrate it. So now we talk from our workflow. So workflow is executed from an external host. We will check what's happening and what we added directly on ComputeNode. So we developed a lot of probes for our alerting system and we deployed it on our ComputeNode. So this way we can detect if something goes wrong for the instances deployed on ComputeNode. And we can detect a post-LiveMigration issue. For example, if everything has been cleaned on source nodes and if everything is present on destination. In our alerting, these probes are reporting to our Shinkan infrastructure. So for example, here we have instance routine. So basically it's just checking the four IP that are present in the ComputeNode zone. And we see here that there is one that does not respond because there is a missing route in the principal namespace. So we need an interruption to fix that. We will check, I will describe some probes we have on our ComputeNodes and what we are checking. It's mostly network stuff. So for our Neutron side, at OVH we are using BGP directly on our ComputeNodes and routing public IP in our instances. So it's a neutral agent coded at OVH. So first we are checking if there is a missing or a missing BGP announcement after the LiveMigration or if everything has been cleaned on source. We also check open flow routes. We are using them for our private network. We are checking if open V3 to bridge and every namespace are present or everything has been cleaned on source. And we are also checking if instances are responding to ARPing. For example, a customer puts some security routes. The mistral workflow is not able to ping the VM and not able to say that everything is okay. We can detect an issue if, for example, everything was okay with ARPing and if after a LiveMigration it triggers an alert. On NovaSign and QMU and NovaSign, there is less to check on our side. So there is a mechanism in Nova to auto clean orphan disks. At the beginning we were using LiveMigration with no patch. We had some issue with failed LiveMigration and disk was still existing on source. So we disabled the feature to auto clean the disk automatically by NovaComputer. So we just had to re-enable it because it just works. When we do LiveMigration, we also collect metrics and data on the compute itself in order to send that in a time series backend. And then we can do some graphs and some monitoring in order to see how long it takes, how many time it's failing or succeed. We are collecting that thanks to open source projects that we provide on GitHub, which are Nordrig and Bimion. And basically you can just put a custom Python script or any kind of script. So we are doing some, for example, version of Java info just after the LiveMigration. And we just collect all those statistics and send them to the work 10 time series backends. And after that we can just do some graphs. So here we have some graph, for example, it's mostly just to have some numbers. So we migrate in approximately 180K instances since the beginning of the end of January. So it was just after the specs and meltdown issue. So that's why we started to make some graph and have some statistics on what is happening on our infrastructure. And we have a graph of a number of LiveMigration per day. It was at the beginning of the year. And here we have another graph about the average lifetime of LiveMigration in some region. So we can see that the average is about three or four minutes. It's long because we are mostly using instances with local disk. So we have a lot of this, so we also have the data to move from Compute Note to another one. So that's why. So now that we saw that we have a good LiveMigration system and some tools to automate this workflow, let's talk a little bit about or upgrade from Juno to Newton. So upgrading is sometimes easy, sometimes not. So the first easy part was the computes. Because thanks to the work done on LiveMigration, we upgraded QMU, Libert, and now we have the same software version of QMU and Libert on both trustee and Xenial. So we are able to just upgrade the compute by just using some IPT upgrade command, basically. It's a little bit more complicated because we are using Puppet to do that, but it's quite easy to upgrade the computes. The second easy part is the stateless control plane. Because when you want to upgrade, for example, Nova API, you just have to upgrade the Python kind of Nova, right? So basically it's the same story as for compute, but it's even easier because this time we were able to reinstall the server itself in a new Ubuntu Xenial version and install OpenStack Newton there. But the hard part about this upgrade is definitely the database, because if you already upgraded, you know that upgraded OpenStack is basically upgrading the database. So our solution to do that was to use a so-called fast forward upgrade, and we did that by building some Docker containers with Python inside, and inside the containers we just executed basically Nova Manage or Neutral Manage, Neutral DB Manage to perform the alumbic migration. Of course, also if you want to upgrade, you need a very good documentation because the guy who will upgrade, he needs to know what he will do, what he is currently doing. So it needs a very good documentation with all kinds of cases he can encounter during the upgrade. You also need a working backup, of course, but everybody should have a backup of the database. And you need a way to rollback. So it should be part of your documentation, but it's not, it's, okay, we need a backup and a rollback procedure. As a conclusion, we had a very old OpenStack Frankenstein Juno code, in which we backported a lot of Newton or even new releases, new live migration commits, and thanks to this working live migration and Juno we were able to automate the live migration and finally we were able to migrate from Juno to Newton in an easy way. So this is the end of our talk. Thank you for attending the session. Maybe you have some questions or not? So this is kind of loosely related to what you've been talking about, but you mentioned a couple of times L1TF and CPU pinning and stuff like that, and I was wondering what actually is your strategy with dealing with this, because it's terrible, I guess, for cloud providers. It's a good question, and we don't have the solution yet, so we can discuss about it. There are a lot of people there who ask the same question. If you are making CPU over allocation, it's complicated. You cannot really make CPU pinning, but in our case, there is some flavor. We have some dedicated resources, and we are not doing over allocation. So in this case, we maybe have a solution with CPU pinning. It's not in production. It was just we made some tests, et cetera. And of course, if you have over allocation on CPU, this is SMT per threading, but I don't have the solution. So you said that in order to enable CPU throttling, so auto conversion trust, you need to upgrade Libre and QEMO. So what impact it had on user workload then? I must know impact. The biggest impact was why we needed to upgrade QMU, so we needed to live migrate instances to be able to run on the new QMU, of course. So it was harder because this time QMU was not able to live migrate. The first live migration was hard, but after it was okay. We don't add any big issue by just upgrading Libre and QMU. It just works. About CPU throttling, from a guest point of view, it's difficult to say. I think it depends really on the workload of what the customer is doing, what the customer is doing. If there is a really high memory usage, there can be, if the migration takes a long time, it may have an impact on performance for sure. But live migration doesn't take a really long time, so I think it's still better than shutting down the guest and restart it on destination. Did you have any VMs with PCI pass through, and how did you handle them? We do, and we don't live migrate those. So did you see any issues with local storage, block migration, where there's some QMU version that worked badly with them, like it failed disaster, because I saw everything working fine, and I was happy then, and then I went to do production, and some instances failed, so I just stopped doing that. Using block migration? Yeah. So we had some bugs about sites which were, for example, sometimes I think we were copying data, for example, from, if you have a set volume, stop me if I'm wrong, but if you have a set volume attached to an instance, and you use block migration, then you will copy this set volume to itself. We had a bug like that, but we fixed it by cherry picking something into the code directly. It was using migrate to R3, and it was the bug related. By using migrate to URI3 instead of 2, we fixed that, and basically every block migration is working now. Right. But the issue was present in Juno, but in Newton we didn't add the issue, if I remember well. So which version of OpenStack did you use? We used Newton, but these, of course, this was a production, and this was in the hour's oldest hardware, of course, and the longest running instances, of course, as well. So it might have been something like versioning old. I'm not sure, because everything I learned myself in devil, it worked perfectly, but then there were some production instances that didn't, from local storage to another local storage. You had some corruption on the... Yeah, if I recall correctly. It failed, it crashed basically in the instance. I don't remember having such kind of issues, but maybe we can talk about that after there was a team, if you want, because... You didn't know how many, which percentage of the instances crashed during life migration? I guess some probably did. We had especially that with older kernels inside the clients. We've seen crashes sometimes. So by crushing, you mean instances not working? The instance is freezing. The Linux kernel inside the instance is freezing. Yeah, we had such issues, but I have no statistics about that, so I don't know. Do you have an idea of the performance impact of block migration? I guess people are using local disks because they need high performance, and then if you block migrate, that might kind of defeat this purpose. You mean if we block migrate, we could lose some performance? Yes, during block migration, I guess people are using this for databases that are kind of disc latency sensitive, and then if you suddenly block migrate, then the database might spark. Yeah, so it will affect the instance, because of course we are just regulating it, so it will affect the instance, but it's still better than just shutting down or suspend it. Are you sure? I mean, imagine that some customers might prefer two minutes of downtime to like five minutes of erratic performance, but yeah, sure, I agree. On small instances, it's quite painless. Did you have the problem that sometimes instances end up running somewhere else than NOVA thinks? Yeah, we had that, and so that's why at the beginning we disabled ripping of instances. NOVA, instead of ripping, we were logging, and we had some probes on computes to check if an instance is supposed to be there or not, and in the Juno release, we had some tools to fix that, and by patching live migration and now in Newton, we figured out that it's not needed anymore, because NOVA is working in a better way, it just works, so Julien said that we enabled back ripping of instances, so we are not supposed to have any double instances now. Okay, and did you have the issue where you issue live migration, we have this in Okata, I think it's really rare, but you issue a live migration and then nothing happens, because we only consider the host that it's currently running on, and you have to clean up some weird database entry, and then it works. We do have, sometimes if the first live migration is failing, then the second will also fail, because the destination is already having some part of it, and it's just failing, and we do that the third time. We do live migrate third time, and it's working after that, and that's why on our list, we do live migrate multiple times to help work around that, and we also had an issue which was about Sethmon IPs, I don't know if you add that, but if your Sethmon IPs change, then your live migration may fail, because IPs are not available anymore. And we don't have any fix for that for now, so no more questions, thank you very much.


Yo, what's poppin' folks, welcome to another video. Thank you guys so much for clicking on this one, man. Hey, let me tell you something. I'm telling you the story right now. If you guys are new to the channel, you better smash that subscribe button. Hit the like button. Today, we actually have an original searching for giant or fishing for big bass, whatever you guys wanna call it. Fishing for giant bass episode where we go out to new location, not only new locations, we go out to the same locations. We go out to just cool little places where there's on the boat, where there's on kayak, where there's on the bank and we hunt for those giant bass. And that is exactly what we're doing today is going to hunt for them. But before we hop into that and I show you what I'm throwing, be sure to go check out the old big bass energy clothing boys right here. Look at it, it's hot, it's on the website. Go ahead and go copy some, it's selling fast. So you guys wanna make sure you get one before it is all gone. Join the movement, guys. If you guys are wondering what big bass energy is, it's about having that mindset, about having that positive attitude and going out there and catching big fish every single time. So be sure to join the army if you guys send me some pictures. I don't think you'd like some merch, man.  Go ahead and go give it a follow on Instagram. It's at big bass energy, pretty obvious. But yeah, go give that thing a follow.  Anyways, I'm only using one rod here today. And if you guys are wondering, it is the Louis Mac-Dooler here in the green and I'm only throwing one bait. This is kind of the bait I'm gonna stick to today and hunt for these big fish. I'm just kind of in the mood to throw a fluke today. So that is exactly what I'm throwing. Throwing the old six sense hooks right here, which are very, very sharp. These are EWGs, four odds. You guys can go check them out and use my code that I'll pop up on the screen if you're curious. And I also got Katie in the mix today. You guys know Katie, you know we filmed some video. What do we film? We filmed the boys versus girls challenge, right? So we're back at it today. And also I want to try to get you to catch your PB. That's like a goal. So your PB is like, I swear it's four eight, man. You can talk all the trash you want, but I swear it's four eight, four and a half pounds. I'll say four and a half, but I think it's more like a five. So yeah, she has a PB of a spotted bass is four and a half and then a largemouth that's about four and a half around there. I want to say it was four eight. I'm just saying. We got big fish in the tournament. We got big fish in the tournament, but I'm pretty sure it's four eight. And if you don't know another fish, that was pushing five. I don't know, man.  I can go back and watch it. Well, anyways, guys, we're gonna hop into today's video. Be sure to smash that like button. Let's go ahead and get started. Try to find those big bass. Let's get it. Like, like out here. See where I just casted. Got them already. First cast. Gosh, first cast. Are you kidding me? That's a decent one too. That's all the two and a half. Gosh, that might be a three. That's a three. Look at that, boys. That's solid two and a half pounder right there. To start off, the big bass video has been a while since I've done like a searching for Giants video, fishing for Giants video. It started off first cast. That's insane. I threw it out there. I let the fluke sit for a second and I popped it twice and he already was taking off of the line. That was just insane. I must have landed right on his head. That was just luck of the draw right there. Six cents hooks.  These things are freaking sharp. That is a fatty. We'll get a weight on him just to do it. Beautiful fish, guys. I think he's about two and a half. I don't think he's three. He's two and a half on the money. Two pounds eight ounces, which is two and a half, boys. Exactly what I just said. And that is a beautiful, thick bass right there. On the fluke. First one to start off today, let's go. First cast, that was insane. It never happens to know.  Right there on the fluke. Let's get it, Katie. Now it's your turn. Five pounder. All right, there where I did. I let it sit. I did that. And then let it pause. You got him? Oh my gosh. No way. Is he big? Katie's got a sl- Oh my God, that's a four pounder.  Next cast, same spot. They must be stacked out there. Come on. Come on, girl. That's a good one. That's almost four pound. That's four pound. Oh my gosh, Katie. Look at that. That is such a good fish. That's a four pounder all day.  You only get them on the bank for. Look at that, girl. Just think about that, Katie. What do you think? First or second cast, I guess. That's four pounder. You think? That's four pounder. Here, I'm gonna let you hold him or you want me to weigh him first. Let's weigh and then I'll hold him and we can release. Katie, that was crazy. Guys, I didn't even pick up my rod yet and I was like, they're right where I threw. That's a four pounder, Katie. Oh my God, it's your PB. Is it? Four pounds, 11 ounces. That's almost a five pounder. There you go. I just weighed this for Katie. My camera ran out of memory, so I don't know, but it was 411. So this is your PB. This is your PB right here. What you gotta say about it? Why are you so quiet, man? I'm in shock. I don't know. I thought it was gonna be harder to reel in. He kind of didn't fight me as hard as I thought he was. Yeah, you didn't really do much, did he? No, so. I wanna get back in the water. Yeah, let's get a picture though. You want a picture? We ran off the bat. That was so crazy. Let's do another one. You can just toss him. I know it's a little far. Pull the whole thing off. Oh, not like this. He's cool, he's cool. Look at that. Katie, give me some on that. What is wrong with you? I'm excited. You are not excited. I'm just appointed. That is my personal best, though. That is your personal best, hands down. No, the one on the river was felt bigger. He felt bigger, but he was a 4'8". Oh, man. That's a 4'11", girl. He just caught a five pounder. He didn't even like jump out of the water. I know. That was crazy. When you hooked him, you seemed big, though. Guys, we just got out here. I literally threw my first cast. I caught one. It's gonna be a good day. What? They's going through in there. Throw in there, get another one. Well, that's a pretty good cast. All right, just give it that pause. Look at that. Well, guys, look, first cast, I slammed one. Next cast for Katie, which was her second cast. She nails her PB right off the bat. That was our main goal, is for her to catch her PB. Her PB was on the river in a tournament, it was like 4'8". And that was a 4'11". That was almost a five pounder, which is crazy, but let's see if we can catch some more big ones. You see that? Oh my gosh, Katie, look at that. That was a huge... I was laying right on top of it. That was a huge one. Oh my God. Oh my gosh, guys. This is insane. Gotta get him out of that grass. Oh, he ain't that big. He ain't that big. He didn't jump, he looked huge. Oh no. That was a three pounder all day. What the heck, Katie? That was crazy. He came off right at the bank, just that is a beautiful fish.  They saw a huge boil. Look at his mouth, guys. He's been jacked up. See the side of the mouth? I don't know if that's from somebody hooking him or what that is. If you guys know, leave a comment down below. That's a solid three pound bass right there. That was crazy. My heart's racing. You literally had to try to flip him and he just came off right there. That's a beautiful little guy. Came up and just oiled. Nah, I'm not gonna weigh him. What do you want to? All right. All right, this is my guess. All right, what do you think? He's either three on the money or he's a little short. So I'm gonna say two and three quarters to three pounds. You ready? He's way bigger. Three pounds, two ounces, baby. Everybody says I don't know the weights, man. I got him on the money out here. That's pretty good. I can't believe that. You guys should have saw the boil before I casted it in there, just massive boil. I would have expected a way bigger fish, but there might be some bigger ones out there schooling because that's the third casting that same spot. There's something they're sitting on. It might be a little whole, but it's a beautiful, beautiful bass. So I'm giving him a little toss. There he goes. Sun's right off. All right, Katie, let's get back in there. Ball time of year, guys. Fish chasing bait up shallow. It's fluke presentation over here near this grass. It goes through it so well. It's also a slow bait, but it's something that's moving and it's something that imitates a shad. I never munched in the fluke. I haven't had a fluke by this good and I couldn't tell you how long. They like a fluke today, boys. This is a super, super sunny out. It actually feels amazing. Sure enough, they're going to eat this fluke. That was crazy in the same spot. Two good ones. I actually have a jig tight on guys. Oh yeah, it is. That grass is like elevated off the bottom. But guys, I got a big jig. This is a hybrid jig by six cents. You guys know I've caught some toes on it. And some of the latest, on the latest episodes, I caught some spots on the near on it. I kind of want to throw this around. I haven't had a jig bite in a while and I'm just kind of feeling it, man.  So I kind of want to throw this out here and hook a slonch on it. I feel like the fluke is just so good because there's all this vegetation, all the grass on the bank and that fluke just darts through it so well. I got one. Oh my gosh. Yo, this is a giant. Or he's stuck in the grass. What? I got him in the side. No, I don't. What? It's a tilapia. It's a tilapia. Oh my gosh. Look at this. It's a tilapia. I literally just hooked a tilapia. Oh my gosh. Oh my gosh. That's my first tilapia. Yo. That was my first cast on a jig.   I've never handled a tilapia. Leave your comments down below. I've never had to do this. I don't have a, do they have teeth? I don't think so. It doesn't look like it. I think tilapia have teeth. He looks funny. Should be one right here. This is the opening. It's like a little canal that opens right into this pocket. This should be the money shot. Oh my God. He ate it like a top water. I barely got a hook in him dude. He's not even big. I barely got my hook in him too. Oh, now you're in the grass. Oh man, look how small he is. Nah, he's small. It's like a pound. He ate it like a top water. I'll give him that, yeah.  Well, not much, but still a fish. Pretty one.  I'll take him. I would come, yeah. There he is. Oh my gosh. What is that? Oh, it's a pass. For some reason, he looked like a pickerel. It is long, he ain't big, but God, they munched that fluke this time of year, man. Oh, you're just a poundy. Oh my gosh. Come here. You're not gonna believe this. Nope. That's a tail. To what? Baitfish. Look at this. I want you to see this. This is insane. See that tail in the back of his throat? Look at that. That's a baitfish. That's why they're eating that fluke so good. This time of year, guys, pushing the shad up shallow. That's what you get right there. Look at it in the back of his throat. Oh, the tail's still moving. That is crazy. All right, let's get him back in the water. Good little poundy guy. Did a little back flip. I feel like there's big ones in here. What was that?  I don't know. What was that? That was literally probably a hundred pounds, whatever that was. That was probably an alligator. You think that was an alligator? I could have been like a carp or something, or an alligator. That's so scary. Or a 10-pound bass. I have no idea what that was. That was something big. Oh my gosh.  He pulled my tail right off. Look at that. Literally just put this fluke on too. Right when I was about to pick it up out of the water, he hammered it. That's a bummer. All right, we're gonna pull one of these on real quick.  I never got a hook in him. Might have saw me though, that's my only problem. He ate it last minute. Right here. He's still there. Yes, he is. That was the same fish that hit me. Yeah. I was about to tell you to come over here and throw in, that's what I should have done. He like followed me in.  Look at that. See he's from the grass, yeah. See, because you know where the grass line used to be, the grass died off, but I think they're still sitting on that.  He did the same thing again. These hooks are so good. I don't understand. I'm serious, I've never had any hooks. I can just not get out. Look at that, I got a piece of his skin on there. Little guy. All right, not a giant. He already ruined my fluke again. I put three flukes on in a matter of like 20 seconds. They're in here. Oh, that's actually a good one. Oh, no he's not, what? No, no, no, he was in the grass. He felt so big. Like right when I hook said he went right down in the grass. I got him in the bottom jaw, maybe that's why. Yeah, when I hook said he felt huge and like my rod did that like whistle. Look how he has himself hooked. How in the heck am I gonna get that out, buddy? How the heck do you get hooks like that? Ah, these hooks.  Look at that, that's still another smaller one, but he's got a little belly on him. Got a little belly. He ain't bad. Still not what we're looking for. I thought I had a good one. He's just drug himself down in the grass. Oh my God. I back lashed and I was trying to get it out and I had- That was like a four pounder. I know. I was trying to get it out and it was just sitting in the water and it came up and got it. Are you kidding me? I couldn't look at it. I couldn't reel. Out of any time. I have the whole time we're here, the bite that you get when you're back lashed. I wasn't even really trying to get it out. Wait, you watched him eat it or he was just taking off? So he was just taking off of it? Yeah. Maybe that's how we need to start working it. Maybe that's why we're messing up. We might just seem to let us in. It's fine, I don't go, yeah.


All right. Hey everybody. My name is Dustin Minnick. I work for Red Hat IT and this talk is going to be discussing how we are currently moving systems, Linux systems from using a legacy Kerberos and LDAPs it up to using IDM. If you're not familiar with IDM, it's the downstream of free IPA. If you're not familiar with free IPA, you can kind of lovingly think of that as AD for Linux and it basically has certificate management built-in, Kerberos built-in, LDAP built-in. It also manages Sudur's SC Linux, has a DNS server built-in, so it does a lot of stuff all in one nice package. So to get started I'm going to talk a little bit about Red Hat's IT environment or Red Hat's environment as a whole. I'll let you guys kind of read that slide because there's a lot of words, but the overall, I guess, takeaway that I want you to realize is that Red Hat is a big company and it kind of operates with several set or I guess several groups running kind of like their own startups and that creates challenges for things that you want to change across the entire breadth of the company like this. For instance, I know what IT is doing and I know what systems we manage and I know that, you know, if we give laptops to new employees, I can be reasonably assured what they're going to get on them, things of that nature. But engineering, the people that actually write the software, kind of have their own IT group and that's good for the company because that allows their group to run like bleeding-edge versions of things like OpenStack and whatever they're running. But at the same time, other people in the company need, I would say, more standardized or more red tape style things and more normal offerings that like a normal IT shop would offer, so it's kind of an interesting mixture of where we offer some things that other groups use and then other groups do basically the same things we do. So right now, this is our legacy setup and this is what we're trying to move away from.  We have DOMTAG, which is RHCS and that is the certificate system and that's multi-master. It's in multiple data centers and writes back and forth. Same for LDAP 389, RHDS writes back and forth in multiple data centers. And for DNS, we run BIND with one single master that writes to slaves in multiple data centers. So, I mean, you can see that this is a lot of software, a lot of stuff to maintain and you can also tell that BIND and Kerberos have at least a little bit of lag time. If something goes down, we'd have to do some work to promote some stuff to master. This goes into how things are configured right now. So we do still have some RHEL 6 boxes hanging around and they're running NSS-PAM LDAP-D, PAM-KRB5, NSLCD, NSCD, took into LDAP and Kerberos. Our RHEL 7 boxes are running SSSD. They're puppet-managed and whatever we give laptops and machines to people, it's either RHEL 7, Windows or Mac OS and those are kind of like blessed images that our desktop team manages. We also support a lot of bring-your-own-devices and self-managed systems. So one thing that's I think also interesting about Red Hat is even for the systems that Red Hat pays for, so if you get a laptop from Red Hat, last time I heard the statistic like 50% of those aren't even running the corporate image. Like people just get it and wipe it and install and do whatever they want, which is actually great for the company because most of those people end up installing Fedora and then they find bugs in Fedora and Fedora gets better and then RHEL gets better. So that's great except for now if I want all of those people that are self-managing their own machines to start using IPA, how do I do that? So Yeah Perfect World Config is moving everything to IPA. IPA does all the things and IPA has replicas and it's all multi-master everywhere. So again, this this is easier to maintain because it's all one big stack and a lot less servers and also we get rid of the single master problem for Kerberos and the single master problem for some of our DNS stuff that we got going on. Ideally everything would be REL7 using SSSD and we hopefully be Ansible managed and as we start to roll out new laptops, let's bake in IDM support to the actual images that you know the salespeople, the finance people, the people that want something that's supported by standard IT processes so that they can use a known system and then let's also give well-documented instructions, RPMs, and other things for everybody else that wants to do their own stuff. So getting there is going to take a long time. So we're currently in about phase two and a half. So we have the existing infrastructure, which was the legacy Kerberos, LDAP, bind, so on and so forth, and we've created an IDM cross realm trust and we've also done a DNS zone delegation. So our legacy Kerberos realms redhat.com, we now have an IPA.redhat.com. They both trust each other through Kerberos bi-directional trust and right now the IPA DNS is only managing IPA.redhat.com and it's subdomains. So that's phase one and I'll pretty soon go into all of the challenges we've had getting past even up Phase two is kind of adoption tooling. So as I mentioned with kind of this open model that we run at Red Hat where people do whatever they want to do, we have to make it easy for people to switch so that they will have incentive to switch and actually want to and and one of that or one of the things that we're trying to encourage folks to do is people that have written Ansible play Ansible roles or puppet modules to manage things like sudoers and se linux and those kind of things that are now that IDM is able to centrally store and manage and also SSH configs and stuff like that because IDM will do HBAC controls we have to get those folks to compare what they're currently doing to what IPA offers and try to show off that IPA can do this better and potentially, you know, coax them into switching. Phase three is going to be cutting off RHCS. So that's going to be the easiest thing for us to kill because basically people are just using it to cut certs, whether that's server certs or client certs and all we have to do is convince folks to start doing those same actions to the IPA CAs. One of the things in phase three also is the RHDS, so that's the LDAP repurpose. One of the things that IPA states in their documentation is that it's really good at storing user and group information and it's really tuned to do that very well and Red Hat, over time, has collected a lot of cruft in our LDAP servers, so people will come to us and say hey, I'd like to store my biography in LDAP or hey, I want my picture in LDAP or things that aren't like your typical Linux and Unix attributes they wanted in LDAP. So we've written schemas and we've extended our old legacy LDAP to support that and we have to push back on that and decide how how dirty we're going to make IDM to support what people want and how how unhappy we can make people to make our lives easier. We've also used RHDS for custom application stuff, so we have mail servers that do MX lookups in LDAP and that's because the mail servers do a lot of work and LDAP just responds really quickly and it's a good purpose fit. But again, we don't want to put that entire structure into IDM, so in all likelihood, we're going to continue to run the LDAP servers that we have now. We're just going to minimize that as much as possible. Phase four is Kerberos cutoff. That's going to be right now. We're scoping probably end of 2020 and the only reason why is again, we don't really have a whole lot of control. We can force people inside of the IT organization to some extent to make moves, but outside of that realistically, the only way we're going to get people off of the old systems is to really persuade them hardly whenever their I guess whenever their stuff is about to time out. So if you're going to be migrating from RH6 to RH7 or if your application is basically going to get rewritten or your device is going to be retired and you're going to get a new laptop, whatever it may be, whenever that brand new thing is rolled out, then it's time for you to move and then once everybody moves, then we'll be able to cut it off. Phase five is Forever Out and that's going to be us examining if OTP and bind can be more widely used. Right now in-house, we have a different OTP solution that seems to work pretty well, so we're not super, I guess we're at this instance, we're not super interested in pursuing that route and bind is also going to be interesting as well because we have some config management and we have lots of DNS servers around and I don't know if people will want to give up the way that they're used to managing that kind of stuff to move to IDM. I'm also like, we haven't done any benchmarking or anything either, but I'm not, I don't know, I'd assume IDM would be able to keep up with the demand, but we have lots of records and we get lots of requests, so I think IDM kind of treats its bind instance a little bit like a black box, like I don't think they want you to go in and mess with it a whole lot and that that leaves me a little concern versus the way that they treat RHDS, RHCS and all that is also kind of black box, but we don't really need special configs there, so I'm okay with it. Let's skip this slide. Last time I gave this talk, I had an hour, so I'm kind of trying to go through this pretty quick. So data synchronization was one of the problems and so IPA officially supports IPA Migrate DS. We use this for the initial data import and it's good for kind of a one and done approach. Unfortunately, to support these gradual migrations that I've been talking about and because we have a very complex account life cycle management that's hooked into things like HR systems and SaaS vendors that track locations of employees and things of that nature, we have to run both systems at the same time and that is terrible. In order to do that, we have written custom code and I would strongly suggest that you don't do this, but basically what's happening here is we have the legacy LDAP system that's still being used for some of the life cycle management of accounts because, again, that's what systems we currently have tied into it and as those things change, we have custom code that is then taking those entries out of legacy LDAP, putting them into IDM and sometimes that's with API calls and other times that's with raw LDAP rights and all the OU structure and everything else changes. It's just not pretty. Additionally, as new apps are onboarded or as new consumers are onboarded, we tell them to use IDM but then every once in a while somebody's using IDM but some of their clients aren't using IDM so then we have to do the reverse as well. Now we have to copy stuff from IDM to the old systems. Anyhow, if you can force a change, force the change because this is not good. Another situation we hit is in RHDs we were using a plug-in called PAMpassthrough and what PAMpassthrough does is it allows you to configure password bookups in different ways using PAM modules and traditionally what we had done with RHDs is delegate to Kerberos PAMKRB and what that meant is your LDAP records did not have a user password attribute and every time you would do a bind against LDAP, LDAP would then talk to Kerberos and validate the password. We did this because sweet, now we only have to store passwords in one place and ideally that's more secure. This did not end well or did not support our migration very well to IDM because IDM supports mass setting passwords and communicating them out to users as a migration strategy. There's no way we could ever do that. Maybe small companies that would work. They also support a web UI migration and an SSSD migration, both of which look for the user password and validate against it and then if Kerberos doesn't have the password, set it. They tackle it from the kind of reverse of what we had. They assume you're going to migrate over an LDAP environment that has user password hashes and you can't migrate over the Kerberos data so then they would set up the Kerberos data. We had the exact opposite. We can't migrate over the Kerberos data and we can't. So we have the ready custom app and the custom app is using a specific account or a special account inside of IDM and what happens is you end up on this web page and it's protected by SAML and it's SAML's tied to our legacy LDAP and Kerberos infrastructure and once you log in it asks you to set your IDM password so you enter your IDM whatever you want your IDM password to be and it goes out via a REST API and using that special account, that special service account and IDM and set your password. It also bypasses the user password reset requirement so normally whenever you set a password and IDM next time the person logs in they immediately have to change it. So this has worked well and this is easy and simple for people to manage so overall this was a win. It just took a little bit of time to figure out a workaround. So I've alluded to this some. One of our biggest problems is we can't lift and shift at all so in addition to me not knowing what the guy across the hall is doing like if he's running a Raspberry Pi under his desk that he's using to you know somehow seed production information. We also don't have really strong team ties to specific DNS subdomains which makes Kerberos migration fun as well. So if you can switch everybody at the same time that's great. If you can't switch everybody at the same time the next best thing you can do or the next best easiest thing you can do is update like the KRB5 configs or top level DNS text records which is what the domain realm stuff there is. So we could say like teamx.redhat.com is still pointing at the legacy redhat.com realm and team y.redhat.com is pointing at the IPA.redhat.com realm but the issue is is team X some of them will be redhat.com some of them will be IPA.redhat.com and because of that we have to end up doing all of the Kerberos information has to be fetched from DNS and as a specific machine is migrated we have to add a text record for that specific machine if they're staying in that same subdomain. So that's working it's fine and this is this is basically the statements of what's happening here when I just went over we have to move one system at a time as they age out and create DNS text records that tell it what basically that point this guy at the IPA realm instead and we're doing that as things age out and we're also again creating thing or we're making things as simple as possible so that when they do age out people will be able to migrate to IDM and hopefully not complain a whole lot. So we're creating puppet classes ansible roles rpms and docs for bring your own devices we're also updating kickstarts and other automations that our desktop team uses to spin up the corporate laptops another problem is people hate change so people are used to how they're getting certs for or from rhcs and people keep asking like well puppet or ansible is doing a really good job of managing ssh allow groups why should we switch to age back inside of IDM and again puppet or ansible is doing a good job with config management for sudoers and se linux why should we change and the last one's again a mention of basically how we're going to have to end up dirtying up the idm schema so people are used to querying LDAP and getting things again like biography or we have like a like a void system or a video conferencing system so we'll store like their video conferencing id and LDAP and things that aren't you know again stock uh stock schema things so to get people to change we're developing and offering even better automation so for the certificate stuff that they're used to we're going ahead and creating better automation using certmonger and other custom code that will spit out or basically take the PEM that certmonger spits out and renews automatically and converts that into pkcs12 and jks and it just really makes it nice so that software developers can just point out a specific file and just know that the cert's always going to be up to date which is a win for them compared to okay well my cert's going to expire and now I have to run an automation script to get a new cert so that's better automation for SSH allow groups we're doing stuff like auto member groups in HBAC so we'll be able to set things like okay you are underneath this manager and because of that you will have access to these systems and that will just happen and we can do auto member groups and auto member host groups and it all just happens automatically inside of IDM whenever it does the refresh stuff so again that's in some ways better than what they're used to with SSH allow groups we're also doing trainings and demo sessions and again pro con list type things for sudoers and se linux to try to get people interested in switching from config management to basically moving that some of that stuff into IDM and here the last bullet point again is talking about us moving some of that non-standard data into IDM there's some links there the my slide that's on the sketch site so you guys can grab that but here's some some of the things that we've done to do that it's not quite as simple as I would like it to be or quite as simple as it was in rhds uh you have to do some stuff and then you have to do some other stuff to get it to actually display the extended schema attributes at the api level and I got five minutes left and ready for questions yeah the question was from a fedora what version last version oh yeah yeah yeah absolutely from a fedora 29 version or laptop can join IDM yes I will say that with one small caveat I know it works with fedora 28 and I have seen a I've got a ticket in my queue and it was somebody that was trying to use fedora 29 and I'm honestly not up to date on the desktop side but I think there was um off configs being replaced by something I'm sure somebody in here knows um and because of that the IPA installer I think was bombing because it was expecting off config six beautiful yes that is true any other questions if you know now would you still migrate the idea with all the stuff from uh yeah the question was if I knew of all the problems that we were going to hit would I still move to idm and the answer is yes um long term this is going to be a game changer for my team because it's going to be less systems to manage and it's also the right thing for red hat to do um we try to dog food whenever we can so the more that we use our own products and you know the more we discover some issues the better off it is yeah sure yeah the the question was how many user entries do we have in the database yeah right now red hat has last time I looked a little over 1200 users uh yeah sorry 12,000 yeah 12,000 missed a zero um now to blow your mind I think we have like 50,000 groups yeah the question was do we keep off-boarded or terminated employees in the user base and the answer is yes uh 12,000 was the active user account I have no idea what the inactive user account is we move them to and legacy I'll have to move them to um a different OU and in idm we just do the inactive thing um yeah anything else cool thanks everybody


Okay, so I have to work out what happens when I double the point size of a word in terms of how much ink I need. Now obviously the amount of ink I need depends on the volume of ink, so it's the volume of ink that make up that letter. But when I double the point size, I'm not really changing the thickness of that letter as it's written on the page, or I assume so. And so really what matters is the area, so if I have an area, so if I'm writing a letter A, is it why I don't design fonts, that's a terrible A, but if I'm changing the length, which is the point size, then I'm also going to have to change the height. And so the area is going to change proportional to that length squared. So if I double the length, my area is going to be 2L all squared, which is going to be 4 times L squared. So if I double the length, I'm going to quadruple the area. So how much more ink? 4 times as much ink.


Dear students, I welcome you in the course of Leadership, Emotional Intelligence, and CNC and making. This is module number 263 and the topic of discussion is thinking differently. Remember, better thinking or worse thinking is not that important as compared to different thinking is important. So we have to focus upon different perspectives so that we can generate more creative and innovative ideas. Now this creative thinking is different thinking, there are different things that we need to focus upon. For example, the first phenomena that we need to talk about is basically our mood set. That our mood set is going to directly impact on our thinking processes. So we have to be careful about these things. The second important thing that we need to focus upon is basically that we are going to have to focus on who is going to manage and control our emotional triggers because the people, the places, the triggers which will shape our emotions and moods will be shaping our thinking processes. And to be involved in creative thinking, we have to think carefully about how we can control our emotions. Here one more important thing to keep in mind is that a decision is not just something that you have to decide one thing and that is all. Basically decision is always a combination of the reason and logic, always a combination of emotion and mood. So you have to see the emotional perspective because the reason being the followers would not be motivated or enthusiastic or encouraged to follow that decision if their emotions are not in association with what is being decided.   You have to find out an outlet where you can exhaust yourself emotionally. You have to find out where you can concentrate your emotional energy. Therefore those aspects would be the starting points for you to think creatively. So we have to be careful where we divert our energies. For this purpose, sometimes even an exercise is planned and that is that you have to go through a virtual day. You can plan your day and then you will try to associate your emotional triggers with your thinking on a conscious level and try to go through it. Or even you have to find out a job where your emotional job fits and with which you can associate and relate yourself. This job will create an enthusiasm in you that is not only a profession for you but it can also create a passion for you. Dear students, remember that until your profession is not converted into passion, you will not be able to easily demonstrate your creative, innovative ideas. Therefore to make our passion, remember we have to control our emotions. We have to think differently, we have to think creatively. Thank you.


Dr. O. In this short video, I want to cover the cardiac cycle. So before we start, you have to know a couple of terms, systole versus diastole. So systole means contraction, diastole means relaxation. So hopefully those terms are a little bit familiar to you because of your blood pressure.  So that's why these terms are important. Systole means contraction.  Diastolic blood pressure is when it's resting. So we'll cover blood pressure in this other video. So the cardiac cycle is a combination of systole and diastole. So we have atrial systole would be when your two atria are contracting. Remember that most of the ventricles are going to fill on their own. So about 20% of the ventricular filling is going to happen when the atria contracts. So atrial systole, what's happening then is it's going to top off the tank and help fill the ventricles. Then we have ventricular systole is when your two ventricles are contracting. The right ventricle is going to send blood through the pulmonary circuit to your lungs and back. The left ventricle is going to send blood through your systemic circuit everywhere else. So that's going to be what happens during systole. And then each of those is going to take turns resting. So during ventricular systole, you'll have atrial diastole, where the atria are relaxing and refilling with blood. And then during atrial systole, that's when your ventricles are relaxing and ventricle diastole. All right, so here we just see again, cardiac diastole is when the whole heart is resting for a set split second there. During atrial systole, your ventricles are relaxing as they're filling with blood. During ventricular systole, while the ventricles are pumping blood, the atria are relaxing and filling with blood. And then it happens again. And again, you know, 75 times every minute. So that's the cardiac cycle. I hope this helps. Have a wonderful day. Be blessed.


At first glance, this stock tank behind me appears to be just a place for a cow to get a drink. While it serves that purpose, it's also an important tool in grazing management. Water tanks, fences, and nutritional supplements are often referred to as range improvements. They serve their obvious functions, but they also help distribute livestock. Proper livestock distribution helps managers ensure that livestock are grazing where and when it's best for them. In dry country, this can sometimes be done by placing water sources in areas where managers want livestock to be. Since livestock are reluctant to travel too far from water, they remain in the area. Protein blocks, salt licks, and other supplements can also aid in keeping livestock in a certain area. Fencing obviously helps with livestock distribution. Some livestock producers use electric fences that are moved frequently in intensively managed pastures. This restricts cattle to a small portion of a pasture at a time, but they are moved often. Range improvements are tools livestock managers use to rest pastures, rotate their use, and manage toward their objectives. Range improvements and proper management can lead toward healthy plants and pastures and good animal performance. From the University of Wyoming Cooperative Extension Service, I'm Barton Stan.