 Hello everyone. Welcome to the workshop today. So today in this workshop we're going to be doing a hands-on lab essentially giving you the opportunity to play with our go-rollouts and understand what it's about and actually interact with it and go through some of its core features in terms of what it provides. To start off this workshop I've got a few slides just to explain what rollouts are for folks that may not be familiar with it should take maybe five, ten minutes and then a few slides on kind of the logistics of the workshop and then finally just a very brief overview of how it actually works and then I'll turn you guys loose and you'll be able to log into the clusters that we have provision for this workshop and actually start working hands-on with rollouts. So that's the plan for this workshop if at any point when you're doing the workshop you have a problem feel free to raise your hand we're happy to come by and help you. I'm joined today by Valentina who will be assisting with solving problems as well as Johnny. So any of us if you have a problem just let us know and we're happy to help you out. All right so Argo rollouts what is it? It's really a drop-in replacement for the Kubernetes deployment object if you've been working with Kubernetes and you're familiar with deployments you know it's really got two strategies built into it neither of them are particularly sophisticated one is recreate and the other is rolling. What rollouts does it really advance adds two more not really adds but replaces it with two to advance deployment strategies which is blue green and canary and we'll get each of these in a second. It can integrate with a variety of traffic writing tools like trafic or service mesh like Istio for example in order to manage the weighting of traffic between say a blue green or a canary in a stable service and it automates the deployment and rollbacks of things so you think about how you do say for example like blue green or canary in traditional infrastructure even in a kubernetes environment you have to set up separate stacks and then you're going to write some automation that when you deploy the new version you got to start shuffling traffic over and then maybe write some testing and test scripts to make sure that what's actually rolling out is the new version works right and if it doesn't work then automatically roll it back that's what rollouts does for you is it provides all of that out of the box and makes this a lot more simple and easier for people to manage and provision. So in terms of strategies if you're not familiar with them blue green is essentially a basic strategy where you have an old version of the application version one it's the blue version and then I'm coming along and developers made a code change I want to deploy the new version and it's the green version my users are still hitting the blue version but I've got the green version deployed and I can actually go in and test it independently and not impact any user traffic and make sure that it's fit for purpose before I switch traffic over to the new version and when the new version is running after a certain period of time and I'm satisfied that you know that new version is holding up it works great I can scale down the old version and get rid of it canary is really kind of an advanced version of the blue green strategy where similar to the the old proverb the canary in the coal mine which is always a bit ghoulish but essentially reminders would take the canary down in the mine and if the canary died they knew they had to boot it back out of the the mine because the air was bad the idea here really is that you can deploy a small percentage of users onto the new version of the application and get live feedback about whether that new version is working out and if it's not roll it back and replace it with the old version so in this canary example here we got the old version which is the blue version we deploy a new version we wrote 10 percent of the user traffic to that green version and we wait a while we'll pause for a bit and then a next step will essentially increase that routing to 33 percent things still holding up things still look good will then shuffle the traffic to 100 percent and similar to the blues green we get rid of the old version the blue one right now we're running the new one so rollouts will handle all these strategies for you and it'll provide the testing that you need to do between moving from the new and the old version this is where analysis templates come into play so an analysis template you can really think of it as a way to integrate with a variety of different metrics providers you could also run jobs in it and the idea behind it really is to get the data and make determinations about whether the new version is fit for purpose and is meeting the roles meeting the the expectations of what you want to do with that new version that's working correctly so it can integrate with things like Prometheus for example it can integrate with web URLs to pull those metrics down and then you can write a bit of a juicing to figure out kind of whether or not it passed so done analysis can also define the failure conditions you can say you know I'm only going I'm going to measure this like say five times and as long as there's not more than one failure like one failure is okay but two nope that's no good I'm going to stop that and we're going to roll back to the old version you can control that because again every application is going to have different characteristics of how that's going to work with the canary analysis can be run in a variety of different ways you can run it as a background which essentially is running in parallel with the deployment you can also run it as an inline step where the canary will actually pause do the analysis make sure things are good to go before continuing on with the progression of moving the weight of the traffic and with blue green the analysis can be run pre or post promotion so pre is useful in the sense that I want to make sure the new version is good to go post is useful in that okay I've got the new version rolled out users are hitting it but I still want to look at some metrics to make sure that users are not having unexpected issues with it the other neat thing is that a job can be run as part of the analysis in the workshop you will see that we're going to run an open source utility called Siege to drive load in order to generate the metrics that we need to make sure that the application is working successfully so that's a very very very very quick overview of role it's like I don't want to spend a ton of time on it because the value in the workshop is really hands-on keyboard not listening to me talk as much as my wife might disagree no she wouldn't disagree she'd be full fully aligned with that so the way the workshop is going to work is you will get some URLs the left side of the room will get one cluster the right side of the room will get a different cluster and you will register with your email address and your workshop password that I'll give you as well and the idea here is you don't have to use your real email if you don't want to we're not going to contact you or anything but do use an email you remember because if you lose the registration page and you need to get that information back if you don't put in the same thing you'll get registered as a new user right and you'll be starting at square one so do use an email address that you know about once you register you will get this screen that you see here on the right side this will give you the workshop lab lab guide with the instructions that you need to do the workshop the second link is the console url for the open shift cluster that you're going to need to log into and then you'll get a user login with your username it'll be like user one user two user three and then the password which will be open shift so once you do that now I'm just going to go through the process like I said here's the lab guide I'll just go ahead and click on it so you can see here all the content that you'll be going through you can just click on the different things now when you do things in the lab guide let me just scroll down you will see that it represents things that you need input using this kind of the orangey yellowish box and there's a copy icon here you just copy that text out and you can paste it into the terminal that I'll show you in a second and drive the workshop that way when you go to log into the open shift cluster let me do this here I never thought holding a mic and talking at the same time would be difficult and I should have provisioned you'll essentially what you're going to do is the workshop walks you through this but you're going to provision the terminal well hang on sorry now I understand what happened one second I was logged in as the cluster admin just checking that everything's working user one password in open shift okay so once you get in you click this icon up here and again the workshop walks you through all this it will give you a web terminal in the open shift cluster right here and then you can start running commands and copying those commands from the workshop into this now if you're running something like chrome it doesn't sometimes like hotkeys like control c for example to copy what you're going to need to do to paste is control shift v and what you're going to need to do to copy is probably just use the menu highlight what you want and then just use the copy menu here if you need to copy things out if you have any problems just let us know more than happy to spend more time on logistics and walk you through it so that's a very quick overview of what you're going to be doing for the workshop before I get you started any questions on this so far all clear what no there won't be any ssh and this is all just done through that terminal and using essentially kubectl or the oc command in your open shift case there's another question over there okay so let's get you started let me go back to slideshow all right so here is the url for the workshop so it will be demo dot redhat.com slash workout shop and then slash some characters depending on the side of the room that you're sitting on you will either get the left side which will be pkev wc that you replace the xx access with or if you're on the right side of the room 9m hd 3x very friendly urls right um anyways those are pretty straightforward to type and then the password that you need to register for the workshop is rh dash rollouts hopefully that's uh visible to everybody if you have trouble seeing it you're more than welcome to step up with your phone and just take snap a picture with a camera and otherwise I'll let you get going no yeah like I said we're not using your emails or anything this is all done with a separate system so but if you're uncomfortable and you don't want to put your email in feel free not to just put in something that you remember as an email address right batman at dc.com for example works less Johnny's taking that already let me just try it here oops sorry by the way if you're running like an internal firewall from your company or whatever you may need to disable it it's right there so I mean I just went to this screen here you're not getting it Johnny could you just have a look at his maybe is everybody else getting that screen all right or okay so at least we know it's working for some people okay thank you just doing a check in to make sure nobody's having any problems walked around seems like everybody's fine but sometimes you get people are shy so if you have a problem feel free to stick up your hand okay the other thing too as you're going through it if you have questions about rollouts how they work you know how they fit into what you're doing already but all means feel free to stick a hand up and one of us more than happy to talk to you about it thanks very much hey just want to do a quick check to see where people are can you put your hand if you've done module one how about module two module three whoa somebody's some team folks here module four okay all right thanks very much hey folks just a time check to let you know that there's 34 minutes left in the workshop I'm only mentioning it because there'll be a hard stop because there's going to be some closing remarks session that are going to be held in here so we'll all get kicked out and go away so just to let you know you got 34 minutes left in this room in this workshop we'll see where everybody is at the end of that 30 minutes and maybe leave the clusters up for you know they're half an hour an hour if you need it to finish it off if you want to after and we'll do a little poll to see where people are and what they want to do so thanks very much okay folks there's five minutes left here so I just want to do a quick wrap up for the folks that are left here I hope everybody enjoyed the workshop and uh just curious did people are still here are you still working on it did you get to look the final module or okay we're good all right okay close enough for government work all right that's all good so in this workshop you learned how rollouts work and the capabilities that it brings versus the standard deployment in terms of its advanced strategies like blue green and canary as well the analysis template and the ability to do testing and do things like load testing as well to drive those metrics in order to determine whether that new version is good to go or you need to do a rollback these are all things that I think like I said really simplify the usage of those advanced deployment strategies versus you know trying to hand bomb a bunch of automation and to do it yourself with deployments so I would encourage you to uh check out the rollouts community uh it's a well documented project so you can go through the documentation there is a slack channel on the cncf slack forms uh argo rollouts you can join that if you have questions about it or you want to ask some more in-depth architecture staff it's a great place to go as well and you're also welcome to reach out to any of the the right headers myself johnny valentina if you have questions about rollouts as well and be happy to have a conversation so thanks very much everybody for attending you still got three minutes here but at that point they're gonna shut down and do the closing remarks so thanks very much and have a good good rest of the con thank you