Bestand wählen
Merken

Breaking Technology Silos with Chef

Zitierlink des Filmsegments
Embed Code

Automatisierte Medienanalyse

Beta
Erkannte Entitäten
Sprachtranskript
all 3 of my name is Shaun I'm on the infrastructure team at the National Football League we take care of all the web anything Internet-facing like from you that your your mobile phones here at the websites and video streaming of was a story about how we've changes organization of for the past to have years and how has within the catalyst to the change and if you know a minute amounts presentation before they're all required by law to have a picture by the Phoenix Project silos and this will not disappoint I believe that silence that we call non-telecom we've got what we call a club states which is your team curious sporting games of fantasy football mobile applications and site it's his own silo of previously in 3 years ago mn overlap with own silo and there's another handful of miniature silos of independent websites were brought in so with a lot of a lot of independent things from MIT silo I mean silo of 3 years ago of the text act for in a fellow comical sites of very similar but it was all in the room here they each have their own i Figure 5 a parable balances they had their own the more clusters that were not allowed to talk and they're all written in Java but they deploy different ways some used open JDK some use Oracle fantasy was written on the iron and PHP as the but molar guys I wrote it in a completely if we're doing Java for starting off in the sphere of another cluster of course and then moved it to the cloud but and then if you look at people wise is a bunch of balls in between groups at every team had their own infrastructure team I reading have their own business people have their own developers there on different floors it was not but it was very very siloed i'm and this all kind of came to a head out they're having trouble retaining employs a largely because you know you got 1 team is possible move around on intervention we're right in as as an operations team so and we got in there and we looked around said I don't think these problems technical these are cultural problems so how do we change of culture i'm because the only way were really successful operations team doing with the uniformly successful as like your innovation is to change a culture of the way software so I'm going to to the bottom line up front the stories told chronologically but the answer is were not optimize everything for conversations and make menu and don't let team I get there but if you look at the way were so we're sportingly and and so it's very cyclical but we start off a kick off in September of we've got the regular season going told rule which is you know the beginning of February and January of done then we have a few events in the off-season we got the combined which is like a athletic competition you've got the draft and then the pre season starts in July so because of this fragile infrastructure that build the whole development process around this season so effectively you develop your stuff off season but you realize a preseason coming so faster and then kick off accounting and stuff out and they knew the meanest mode so a busy time was actually the season because we were removed from operations mode into development mode so let's look off-season 2014 we salary Miller protocol level now and it was called the at the Netflix of videos of football essentially was that I of a customized stream of videos and new channels of new way to engage the fans but that's a screenshot from a commercial was talking with a product that was aired before civil and if you know the calendar development assistance laughter simple so the the the the the the the scope was fixed I ever we wanna run this is agile project so we better for silos and now we've got another silo you know we all in behaves like a bond it's fast it's moving maybe we can do better I so I've been at it with the NFL for a few months by then and then I was kind of put all into to work on this project from the operation perspective and I really want to fix 3 things I want to get rid of environmental drift on a fix a configuration file problem and I wanna get developers servers when we talk with a model draft we mean to a doesn't look like staging stage another look like production you development boxes all of my production and which a building who as you move it to environments you find all these problems are there were the 1st to be what you're missing things but even within an environment of the old way of doing things when a developer wanted the MIC Pollock's is then ask the operations the please give you my sequel blocks the guy would have you were cloned templated storm icicle developers say I actually wanted 3 of them the guy was still shut it down a call it twice now you've got 3 stating boxes music and where production tomorrow can I have 5 please and he shut down quantify more times and that was it of and so you we would get on production boxes and they would 1 box the different from another box and and so this is a big problem so for NFL now say shaft just will be our savior will bring in chess will template everything we will have chef do everything and info for those pretty good get into the kind of the things we learned I by the end of it production was around 100 servers depending on on what we know you know kind of features were delivering with around 200 servers and total it was 1 cookbook practice so each application was pretty much a snowflake we would have us some apps developers want to write a framework vertex and they did 1 happened vertex and some other guys like detonated in vertex to but they had multiple outsourcing and different ports the same vertex container then some Everton Tomcat and summed over this so we had about a dozen ish services and they were all in their own cookbook to manage that um and then because I really love this environment feature the environment that Jason or you know if you upload your shift server on we put all the differences in the environment into the relevant files so that we'll just have a template variable look for No . no User Manager . database and then we would override the by the end of it we had this gigantic environment filed a soldier is on the and had battery can amass so a later on we moved away from that and started extraction stuff to the recipes themselves and this had basically if environment is this the new this and that made it a lot easier for us to to really reasonable the recipes and we have a single source of truth for the configuration but document configuration the old way was what you know the bundle into the war file but if you were on 1 silo of or 1 silo would do a for loop with secure copy the files another silo would done would NFS and put them on a fair share the Cecil toolboxes and someone demand and we have deployments were a developer would say it looks hang on fix something and that something was undergoing broad boxes single fixed configuration files so leading up to the configuration files was a nightmare and I really want fix that because 1 of the biggest problems we had an operations group was trying to managers can think files and make changes so developed like we would say we need to add a an Apache redirect morning and the Apache willing QA it's over here and staging is over here on this environment it's actually SemLink on this environment you gotta ghost and it was this mess so still a chef I use templates from the developer would modify on the development server they would create the convict fell because again remember this time others rapid development on the services so they would continue to be adding new configuration options so this isn't like we had a standardized template this was something that over and over is being developed we would go on to the box and we would do of why around makeshift blind FW to see what changed and we would go to resolve those deaths and update the template file until all we could do a clean Sheffield and then reproduce that template on the denser and then we promoted to staging we don't serve you in the database of staging is actually the solution the environment file and then we would that the plate to the other environments
I this is very problematic because as you get closer to crunch time about developers working 16 hour days I 1 work 16 hour days there in California Housing when it pays the 3 hours behind so they be calling for these changes that weird hours we ended up with coming up with service level agreements between the groups can thing changes we done with and for on and it was a mess it was we were fighting with the developers or the stupid configuration files and and finally the old developer answers so they are used to it because that was the way was always done we only have ways to ride them the information that they needed on that server so developers again get on the servers but we finally got it so that there only on development servers and then we would do the chef templating we would we would help them uh stuff that we can manage and staging of until you get to crunch time when you turn off the Chernoff shaft and I spent hours resolving all these differences in staging and production so did works awesome some so that work on you know as building hundreds of boxes and we're just getting into shaft we're just learning the sphere of like getting the visa scale on I found this plugin called unexplained culture the sphere and what it does is it automates eviscerate the i so you can clone of the m you can bootstrap chiffon that you can take snapshots really tries to be anything that the the center of the we as you do the I we start cantering patches back to it and I started going into the issues tracker on get held in helping people and events to the guy who ran it said you know what I don't see this anymore would you take or make use so that so I can maintain this plugin for the past little while I know if if you guys have ESA environment I really can't talk how enough about it so I heard you download tried out and annual follow an issue and then work effects of if he's if he's going to problems but but so and now is happening we're moving into the season 1 problem I had with the with NFL now was we could chef could create this box it could bootstrap that we could all we we can get the binary on the box but it's still didn't have the load balancer conveyance of low-budget had to know about it and problem because I love I love that I could create 1 command I could have you know a new user Manager server up but I still to go over the load balancer and we forget that we have the settings were be consistent and you know this it in Salt chef's chef's server Providence only if 5 problem but in ended early work like there's some stuff there that didn't quite work the way I wanted to F I've talked about having a jam but they later got update they litter deprecated to so I started off but 1st I wrote of thin wraparound around so PPI as Colette fly-by control on and really what I want to do about it not only create a wrapper because everyone out there but I want a CLI tool that will let us get off of that that horrible gooey on the A 5 and do like f 5 pools status at 5 pool disable so that are not only could my operations teams managed Majid easier but we constructed so then during a play we could have the play system bring nodes of the pool but the plenty binary start 10 health check bring back of the pool and then with that of library ruby library I create a shuffling resource that lets you do something nice like this so if you have an app cookbook so you can have enough I pool resource and you can add it to the full so this isn't configuring it is is as a new node is brought up it goes and lots and says as a node in shaft are in the 5 no it's not create the node is a pool there no it's not create the pool is a man is a node in the fall no it's not added and it is a fairly decent job of of automating all that so that after year at your 1st converge you've got that node the pool ready traffic and that's that's a very simple example promise that the more options the and the but we like chess sigh Tyson there's your problems but really we were learning at this my 1st experience with shuffled with a bit of a branch of solo on we had a 1 1 now we heard about this role about having a base role in all your boxes where you have your your basic stuff your basic packages we're moving inland l that because some silos used all that some had local passwords some had whatever so I want to mention villanelle that so I created a base for all of them and we use the rule could put pattern so it's tied to a cookbook called police so that we can version and have a bit more code than just the traditional role of that is all about the does access control of and some basic packages I personally think is a crime to run the not rhinoceros are so themselves are of people we have college mother boxes in our environment and you know the legacy what we call a legacy and look on stuff allele called stuff was all boxes but find you roll role all and all it does this excuse is just to put itself on there a dozen basic stuff like put my SSH key on it because I you know makes things easier but the base packages that I want on that box really doesn't try change all that the doesn't a change in the conventions but to me those the thin
end of the wedge so now we've got chef everywhere and someone's got a problem the chaff can solve Holsinger Saudi there and they can just read a couple to solve the problem so we don't have to go and we don't have to go take over the entire lazy staff at 1 go with that chiffon can still start we can now start taking over piecemeal and fixing component by component and that the key was getting up a minimal of just shut all in that box so look at 2014 Shaath nice here the sphere and the advice of that were great on a lot of manual steps coming here and there that we had to clean up I still don't know why developers need access to servers I wanna manage files asynchronously prominent thinking a lot about and it's asynchronous versus synchronous nature I think at this point time that I'm getting my head that I think is a problem the Annals is non standardization of frameworks we had shaft managing told of they're called different snowflakes all we had were 12 automated snowflakes we hadn't really solve the problem so now on the off season of of 2015 Argles replacing a formal application of and to do some work on the front end site moving from the traditional kind a Tomcat JSP model into the reactor mom or the more single-page act will say so this involves making some microservices again because the silos everybody had their own micro other kind of micro-services were you know as so where whatever with a term day was there is no unified API for all the info properties and so we wanted a part of this was to create services that any current or future NFL look on app could use it so you know as was the style of the time we will microservices and that that is winning the decisions of our but still really want fixes stuff I want the develop of answers on on standardized frameworks and and finding out if it's 2nd thing fell from so I started out my course I started reviewing the conversations we had over the past year with developers and His n-dimensional I actually don't live in the same city we don't live in the same city is a developers we do everything over chat up I went down to LA and and sat down with them we we talked about the stuff of a water problem having and really from their perspective they trust the configure on the box was what they thought would be because the rappers behaving the way and they expected it to is a problem of the code is a problem conveying and be honest a lot of the times it was configure something else because of this the for the for the previous configuration Paul problems so they had really been fixed up they need the logs we had started playing with a centralized logging through gray line but not everybody was using the same framework so they can log it correctly or they're missing logs or that the framework of choice was incompatible with all that have a library that would would talk this summer this Gulf format but you know from the school having only give a shot and just on the of a lack of trust up and we're both ways and again going both ways been realize that the stuff we're doing is making sure those lives harder of the and I can realize all these users were related and all these things have root cause the same because of problem that is all the conversations were having problems with the trust and so in 2015 we we really we tried to change like drastically change we're doing things I realize were restaurant we have 1 dish of is a very good dish we will we will work at at making the best as possible and if you're a developer you can have this dish of and and that will do the need so as analogy of this is really really comes down to it I think of this whole chefs you know chef and stuff I while problems was you know we're we're talking about things we were talking with the same things off so we said look it in have a name and ask and have a name and everything we do will have any minute um before talking with a load balancer pool it's can have any minute it's going to be a short tag the name of the server will have an imminent under Jenkins jobs everything you want to do when you say S 0 I know as a so means the QAT those vs. 0 means of snow so that this assumes order the bill pipeline from day 1 so from day 1 when you have your 1st comment go environment it may not do anything but as soon as we know what the same we can put that thing in staging and we're ready for you push button the prod I history projects were template we talked for a long time developers about what you actually want to what will come back to you building your building services mode for the most part you know why using anything that spring good but what I'm trying to solve any massive problems here you guys all summer spring good you really like it so let's just start from matters as a default and so which means you can the vessel of 4 J and don't worry about logging locally will inject that later so lies things were were deferring some decision a vote a boat on the wearing a run the app production until later some more this asynchronous stuff the war about logging you just use that framework which looks very natural to you and on the server will inject you don't have to have any coding AREPO and same thing with analytics the instrumentation were about put all that stuff on the server will give you ways if you want to use it during development were really don't don't worry about it during development mode but were and all the deployable fat jar for a for anything out so we don't have to worry about caring dependencies having depends in the server is going fact Java don't real-time kept going through a whole into stuff you just run a jar file and all the same they'll get run the same way they were the same command line parameters every server will look the same just have a different ever to have 1 chef recipes so for all services we have 1 chef recipe coat and thoughts and once you have that name I think these SSO so here if you tag your instance with that coldness of civil and musical as a way of like we use tags for a lot of things I really love tags and those that hatred tags but I think there are some so if you take that something that is the name of the and when you include NFL apps of the recipe in run lest it calls that recipe it creates a full on forever environment and so we've got integration with got production would that staging you know your servers and the location the environment as a so and some ordinal you know the the service name again on the box honey restarted service so but the logs if you need them and they are violent as a so we mention got to the point where production we want a disk anymore we use it all this degree log because we get inject stuff and all get into that we get inject stuff around right at at at build time and deployable always Nicholas a soda jar and you always know where it is sort skies it's only complains about what version of of SSL is running on this box doesn't look like it's the right 1 hour something's not right making going over the binary as they can look up at the SemLink and see which are and is running on the box Gray logs we tagged and because we're modifying the server the server conveyed on the fly were tagging
those logs of Apple as associate good gray log if you want your active NGO apple so and environment home production or whatever and you've got logs but we that dynamics for performance monitoring of very heavily so when you go not dynamics and drill down this can be called SSO and funny reposing because so and really finally all year round you Jenkins jobs will be started as a so and the only consistent so you know that and you know your building test in of your death of you're kind of on as you know for request is going to be numbers 0 we have a building test after gets worse master and we have a series of deploys so you deployed stage by default when you lend a master but it goes to staging about you manually push the button for pride and then we have a series of of smoke test in such a that run so this logging thing this asynchronous pattern we found was very helpful but we just drop a standard shift template with a lot back that XML which overrides what's ever whatever's in the jar file and and so we can then pass it I guess a key this 1 in incomplete fairly easy but we can pass it the template information about that server so we know which environment is running in we know which instance it is so if we have sixties manager servers we know that number 42 but we know the name of the app so that in the template we can pass a bit of XML it's you slide back specific but we can pass it out that information so that when there some all the logs were tagged with that information and they can easily search on it the another thing we had was the love and say what can you increase the logging of the certain package at the debug than having a problem with it I don't know what it is and by default it's info so we need a short cut off for Rothstein bill adding attribute to a node I the wrapper cookbook or and or anywhere the actually goes and if you put an array called but packages in act uh . debug packages it all right to lie back that package name at the load level deeper and then at 1 of the features we have configured the linebackers every minute it checks for changes so that within a minute some of that node converging but it's a start you debug level but this is something a developer can go into a chat room and pretty much ask anybody on the team can you please enable logging on at this level and we can do that and this is a bit more and of more features they need like there was new 1 decrease logging a certain packager ever we have another way through a hash that we can do that we make it easy for number of to that we have and we would normally do that through roles on which makes it easier to search on and to reuse and again this this we have this pattern we use where we we will have a 3rd party agent in the box and we have a few of these are and the 3rd party agent and in this case is that dynamics which is our it's like a relic diffuse through that 1 is a application words monitoring tool so we have a cookbook called and anammox and its responsibility is to put that agent on the server but based on what actually is it sees can figure that agent what it knows nothing about the application so you know it is not put the star of scripts is the job of the application of the and recipe to include that in doing the recipe and then adjusting the start-up scripts necessary and which means on the legacy stuff we can add an affiliate dynamics to the run list it'll install at dynamics but because it don't knows nothing with the start of scripts we can go manually changes started scripts so now from 1 role at an act at dynamics upgrade of the agent we can modify just that 1 recipe and it'll work on both legacy on legacy and applications and so we use this this pattern of of extracting uh to a separate codebook and and have a kind of boundary between knowledge of of the application of that in a few places and said configuration was lasting everyone it effects and we moved to consul so we don't write in Fig false disk anymore that was just in the easiest way to solve this problem was just pretend we we no longer have that option somehow we solid um so chef again because we have a NFL consul cookbook it drops consul joins it to the cluster we have 1 cluster per chef environment to so social manages the agents from the recipe itself manages the start-up scripts and and then we have just conventions within the system on where not confined its configuration so at boot it loads configuration from consul on source spring boot so we're actually will write a module that the brings and brings consul data into into spring mood of variables and then finally that configures Nouri polluting use I and undiscovered prefixes with it took us a while think to iterate on this on the 1st version I did I required like Linus twirls level of get knowledge to merge between environments and my coworker Paul just look at that and and up fixing it was something else and we we we iterate on that for a while and then now really happy with that we call a consolation we use the same pattern as before I wanna dwell on that but that but we consul in recall consolation but so basically is a bungee OWL files yellow shirts good but but now it's it's textiles they can commit 1 people but we did peer-review on so a developer wants to make a can think change they submitted these fabricated so they submitted for review when they landed so the other thing we do with fabricators when we see that death will run landing on it will try to compile it so this is all kind of interpreted and at build time and because we use the secrets simhash core evolved so at runtime it's is compiling all this stuff I'm and will do that on on every desk just to make sure that someone deploys that it's not a break and then finally as soon as that emerge we push it all environments this is a problem people talking about to reconfigure they've at the same where is you can think blocked your particular version of the application and connecting came up as a problem I think is a couple different ways to solve it and was the version you can figure out have a different copula can think and the other is to kind of say look I have a series of constraints on myself that if I make sure that everything is a consolation like that can exist no configu elsewhere and the key changes its meaning then I have to make a new key so if I want to have you know debido URL and all of sudden unspooling my databases into 2 databases I now have to create a new set of 2 keys for those 2 different databases I can't reuse it because that is not a backwards compatible and the thing is if you see a key in you can figure you know recognize that it must be for version ahead of you so for Bakker forwards compatibility just and so if you follow these 2 roller or 3 roles but what you get is you don't unless you know you don't have to really worry about an old version of an apple picking up and you can fit or a new version of the up picking up an open for as long as you're really OK was just things like like if you say tuning for numbers as long as those you're fine with
different versions but generally were tuning those and differently from the wrong kind of from the development trend and so the the set of rules really work well for us and so now we have this asynchronous conveying that we find that to a a good can think of a good interface between state like my group which is really focused on the developer interactions and the steam which is focusing on the day-to-day so far but but really try to write activates thinking of how it's going to be used in the field so 1 common thing we have is an apps running for a few months and that the profile of j of the Virginia memory changes so we want the asking of notices and make changes and so on we started we had this calculation it would do on but really we notice there they want change and the OS overhead so if you got a you know a 6 K box and you wanna give the memory of the Javier you wanna give the OS again then the JVM will be get 5 gigs but sometimes it 1 set the the Javier memory so we may have a 6 a gig box they want tried it for so we expose the attributes to let them and set is the set those parameters however it it's it's a workflow but and we can either do it in a wrapper cookbook of my test you contested director node attributes were again we kind of his life is the roles and roles makes it easy for our upstream to try these things out so it's really easy like people can know and look and see how it's done because it's it's fairly well on described all say that we are now experimenting so with eggs so little registered past week or so so this may change like you start again and often comes up in several do things 1 way is what I really do need something and this not covered by the menu and yes we're totally fine with people doing things off the main but it means we have to talk and you know our goal is if a developer once a to create a new app that we can have the whole pipeline and everything built they this to notice and they just have it is easy super it's and fast on if you wanna go off the menu yep we can do it but were doing some custom work now and then we have to start talking more conventions so if your app you wanna use a new framework and is deployable the runs without dynamics logs degree log is easy conversation we could probably do that we'll see what he actually get out of it but if try something super news something crazy with really tough you are right that we have no long anymore that we have no alarm performance monitoring on things really I so these conversations training this 2 conversations about what is your app do and what you really need other and maybe we have to adjust the menu for for the future that is through very helpful in in kind reducing the snowflakes and making it much easier for us to maintain our our services so looking back on 2 thousand of 15 the configure but in the end it work great I'm very happy with it and the standardize apps section meant that we only boxes anymore they're running the spring good they run it straight was indictees now but didn't have to simulate 5 6 different environments on the box to several different JVM it just works there and all the stuff but within the IT means they don't have to go ask somebody to go term that the but the box and about mode of now because they weren't on servers but because they had flows logging of because if they had a question with the ASR performance it is going to act in find everything base wouldn't have toolboxes anymore we got down to about half an hour for the developers say I want a service to staging production boxes built up to the plate of a pipelined Jenkins you know that repo being created and you know load balancer can forget the configure less stuff because we're able automated and and and really drive down the number of options and now you know when I started we used to deploy you know at something like midnight on Tuesdays and Wednesdays and because they were scared you know deployment of a look on my 1st 1 took 6 hours and now voicings anytime we can deploy a right for a game we can play the game we have to of because we have much more confidence you know now that get these pipelines orchestra testing um were able to to really get deploys a much faster and much more reliable because you know rather you only because we've automated say load balancer this deployed goes along the acoustics takes a pool at cards takes a quarter motor pool a connections as reliable as it happened the same way every time it just works and our conversation old muster conversations with developers are much higher value so you start talking would have these actually changed business and how these absent work in the wild but you know we can talk much more interesting things than you know i wanna try this new data store or in nowise my can think file not look right because we just all causation better and because we have been able to get really stupid stuff but now we think about Shaffer's on various servers on Merrill bouncer but we start to think what else can we automate you know what things like like DNS are happeneth invigoration are bills in the place and and also we use a bunch ascidians were really happy with vastly because of how the easily that enable automated talk with 2nd but you know if you consider the code the source of truth if you can have code go through some kind of transformation and then go to an API to configure some service the new source of like then you can start considering that servicing code rather than being dumping say that service and to get the that's just an audit trail but if you can go to making and that configuration code you can now do peer review on it you can pass through the history and get and you can start making it easier actually use because chef codicil configuration does not the sort of we use this as an example of vastly if you use varnish before it so it's a reverse proxy uses language called the c which can look very big but most are configurations of dialog boilerplate so where would take these configurations and and use B and ready a templating language for it so that we can generate from these E cell files but now the gentry the SIL files and put them into Jenkins to get fabricated Jenkins we can also write unit tests for these we can apply this to a to an alternate and location and vastly we can say but you know these Ural should be cached and it'll go on goes that was eurozone and curl problem again make sure that the the cache headers are there you can say this must have the surgery so now we've gone from some web interface where your typing encode decode you type in a computer compiling running through it can develop pipeline and it's getting uploaded to 1 uploaded production
up at announces got this ugly to go through Wizard of 4 steps to create a health role but in the end you're willing really worried about you know half a dozen options so what we did there was a was made a little DSL and ready to upload those directly and again we got get a we've got period but before you think what I many everything you look at the things right mating and make sure you're not on anyway conversations I forget that half-hour down like 5 or 10 minutes but if I did that that would get rid of a conversation I have the developer but what are you doing you know houses can benefit the company and how last doesn't run this out and so we don't automate everything because we want kepler's conversations but this so now we really want your attention using chef better as not seen and and in conversations will help us so we do our very best to try new some level of testing but this is just another screen cap from fabricated so when we utterly chef appearance of the specs on it so and we found 1 real good test is will it converge and it doesn't and if it converges chances are you don't have any unnecessary coupling other cookbooks if it doesn't converge you probably have a problem and even you know in the absence of Austin testing regimen just a basically converges very helpful I the like you so this helps us get better in a lot of different levels of skill in a team and a lot guy you know when I started I was only person committing a shaft and new committing to a cookbooks and now you about you 20 and a lot of more commit and so peer-review helps us talk about code and talk will best ways of doing things or new ways of doing things just some examples and don't like just talking with different ways of doing things and on the bottom and I want to try something new so I was talking about what how we communicate has changed back everybody else 1 another thing that helped us keep things clean is Ortolan thing with that food critic and real cops we try not to be too fussy about it but really restrainer keep the level of areas to not increase we know we don't want craft in there but sisters back to the
so example from this morning what is part of the chat channel and somebody of political book
electoral base and the got food critic error and so just this is kind of keeping our kitchen clean
but it also just as a team work on your workflow we have this recurring problem where someone will upload it to shaft and not up to the changes to get and then the version numbers get a sink so this is something we costly work on this 1 is especially bad when it happened a few weeks ago and we're trying to work on that because a static cadences it'll reading but and finally when you're coding you're really coding for the least experienced member of the team not necessarily to junior developer but the new person on your team so you wanna make you know your variable names descriptive you want expose stuff as you know as as operations person would would think about it not so as a developer would I so really you're just you're trying to make sure that what you can do what you've written but is very easily usable by and by your peers I just want to quickly wrap this up of we think about things German conversations are we having better conversations are worse conversations on and how do we chef automation to increases good conversations just as we more than just conveys on servers and unique feel bouncer out when I get back in looking for to doing some stuff on earth over network here I reduce complexity of aggressively and do that by coming up with a shared menu and an automated how about the chef way vocoder becomes the infrastructure seating imply that other places and phonic improving and my contact information of my Twitter handle it if you're in the this if you're going for 1 year Linux certifications are about to commit log 0 it's good but and I think you very much for a few times FIL B articles you about 10 minutes for questions so if you haven't please raise your hand or bring the i tear you of the high shown of a rich history 7 knife the sphere plug that you have get out can you compare contrast to the ship provision the sphere plugin that of the complementary or the very overlap have you use that why 1 versus the other when you're using the EM where using chefs automated provisioning of Ian's within the more hypervisors and yeah we don't know we generally don't build new environments very frequently so were mostly on building a box by box and the night this year you can think of as a replacement for going going doing stuff where parishioners like I wanna go build an environment it's got 5 as a so serious sixties mentors have better so under the hood these missing library but mind uh sorry makes the sphere is more focused on kind of a the operations level of running the surpluses they should so much of what you said uh around high utility filters that can happen in the colors so long as it's black and so how did you had develop the relationship with with him how did you deem that level of control trust his etc. because that's really the is the crux of the matter in end in yet so on 1 they're slated for that question because 1 thing I forgot to say was kind of the 2015 season when we realize the problem of conversations we actually organized are up steam around this idea so we went from having asking a project team to having this put walking on his name but there's like for us and our job is really just a workers developers and make sure the lies are easier and then we got project seems not seems but having these dedicated people that they go from interacting with like 30 people contracting with just a couple people would for further developing work so that 1 on 1 and just you know it took us a while I can about said to have years and there's some people storing on at and that it on you mention using the knife command to are triggered by automation what are using orchestrate those are you mainly running and I commend each time for do you have some sort of automatic load around tool generating those commands in running them I we use basically shell scripts that wrapped that long command I don't I should I'm taking it out there was long and then make sense but now we do a lot of tweaking so you know will build light will just for sake of argument 5 production user men servers than would a series of load test in realizing yeah unlike 30 of so we did we find value in in something like provisioning just because we don't care down environment frequently were very still mental model of of you know the answer and then of growing and shrinking that thank you that the working with the developers DG you give them access to the basic shaft proposed that you working with and encourage them to manipulate chef in their development environment so here we do now internally is like this public solar shaft recipes are public so far there's been very little interest in doing that other than if they're curious about how something will look on the it has only has really been a thing the Geller guys from those pardon on interest in really I see the opposite where I myself with the the factories a shot of is the Council's renewed you wrote for them to be a that open source is not I am now with back to my you would have to do I don't see any reason why it should be OK also things and it's the the and it so did you mention you have some standard of books which developers can use it does that it developers have the can post idea 1 cookbook thing and it's a good on their environments but for the most part they don't me and so if they wanted to they could be happy if they didn't hear the watching the video and we have yet for the most part they don't even used environments anymore the run it on their laptops and just like within the so it's really been a non issue so that they do have access but they don't do that so using yet but we have an interrogative enterprise and we open our cookbooks for everybody to look at and inside the company so if they do how would you have how the yellow them Bill executed that the is does it go to interview a an steam member has to the the water local could look has been good yes it we fabricator like we decoded you internally but you I would want somebody from 18 to to look at the chances are we'll be talking about with the 1st so they want to change they would just go make it would be saying they I would like to talk about changing this and whether or not they make the coder I make the coder work Paula colonies code you know that point does not it's a conversation unintelligible what were we not doing for you OK it this it the temporal 1 or 2 more questions and on the back and see if there's any others the yeah from looking at the problem that you put on the screen with a gap of loaded this to the set we saw that by making people of low to get there we get a hook that puts an end to shift so they're not allowed to go straight to the shifts over so let's see how this interesting way doing it but I the other that of the shaft got I think which just prevents you from doing it I much prefer your approach the the isn't but Ch could last question the I was just a follow on from the the senior senator useful to always handled knife Inspector which basically matched universally running Jenkins measure of what's been gets is in sync with what's the shutter manage of periods of approaching growing the source that's the problem is people leave and then analyze workshop myself but I don't want atomic orbitals do their work so someone we use knife and no forget to go deaf Jeffries & like in that case actually that that actually stomp on all version cookbook but because we use version locks and staging and production that same number but inspector looking up only at home most guys things would come on let's give 1 more of the plasma shown
Umsetzung <Informatik>
Prozess <Physik>
Gemeinsamer Speicher
Minimierung
Applet
Gruppenkeim
Kartesische Koordinaten
Fortsetzung <Mathematik>
Gesetz <Physik>
Template
Übergang
Videokonferenz
Streaming <Kommunikationstechnik>
Datenmanagement
Gruppe <Mathematik>
Total <Mathematik>
Minimum
Notepad-Computer
Figurierte Zahl
Gerade
Verschiebungsoperator
App <Programm>
Nichtlinearer Operator
ATM
Softwareentwickler
Datenhaltung
Template
Gebäude <Mathematik>
No-Free-Lunch-Theorem
Systemaufruf
Programmierumgebung
Quellcode
p-Block
Biprodukt
Ereignishorizont
Konfiguration <Informatik>
Computerschach
Dienst <Informatik>
Server
Projektive Ebene
Information
Programmierumgebung
Prozessautomation
Faserbündel
Aggregatzustand
Server
Web Site
Subtraktion
Quader
Selbst organisierendes System
Mathematisierung
Dienst <Informatik>
Kombinatorische Gruppentheorie
Framework <Informatik>
Loop
Benutzerbeteiligung
Knotenmenge
Multiplikation
Informationsmodellierung
Kugel
Spieltheorie
Perspektive
Software
Fächer <Mathematik>
Cluster <Rechnernetz>
Softwareentwickler
Konfigurationsraum
Schreib-Lese-Kopf
Elektronische Publikation
Protokoll <Datenverarbeitungssystem>
Division
Stochastische Abhängigkeit
Konfigurationsraum
Einfache Genauigkeit
Schlussregel
Elektronische Publikation
Sichtenkonzept
Kombinatorische Gruppentheorie
Summengleichung
Quelle <Physik>
Umsetzung <Informatik>
Service provider
Code
Gruppe <Mathematik>
Mustersprache
Auswahlaxiom
Gerade
Metropolitan area network
CLI
App <Programm>
Schlüsselverwaltung
Kategorie <Mathematik>
Gebäude <Mathematik>
Güte der Anpassung
Gleitendes Mittel
Biprodukt
Ereignishorizont
Web log
Entscheidungstheorie
Zugriffskontrolle
Computerschach
Dienst <Informatik>
Menge
Rechter Winkel
Server
Ordnung <Mathematik>
Programmierumgebung
Instantiierung
Schnittstelle
Subtraktion
Kontrollstruktur
Mathematisierung
Dienst <Informatik>
Analytische Menge
Repository <Informatik>
CLI
Knotenmenge
Informationsmodellierung
Perspektive
Programmbibliothek
Konfigurationsraum
Soundverarbeitung
Verzweigendes Programm
Plug in
Schlussregel
Elektronische Publikation
Patch <Software>
Debugging
Gamecontroller
Bit
Abstimmung <Frequenz>
Punkt
Natürliche Zahl
Applet
Gruppenkeim
Versionsverwaltung
Binärcode
Login
Template
Übergang
Datenmanagement
Prozess <Informatik>
Klon <Mathematik>
Wurzel <Mathematik>
Default
Analogieschluss
Bildauflösung
Nichtlinearer Operator
Zentrische Streckung
ATM
Softwareentwickler
Physikalischer Effekt
Applet
Programmierumgebung
Konfiguration <Informatik>
Arithmetisches Mittel
Keilförmige Anordnung
Framework <Informatik>
Dateiformat
Projektive Ebene
Information
URL
Schlüsselverwaltung
Standardabweichung
Web Site
Server
Quader
Existenzaussage
Stab
Term
Code
Framework <Informatik>
Lastteilung
Multi-Tier-Architektur
Kugel
Mini-Disc
Wrapper <Programmierung>
Passwort
Zusammenhängender Graph
Softwareentwickler
Schreib-Lese-Kopf
Kugel
Elektronische Publikation
Mathematisierung
Physikalisches System
Quick-Sort
Integral
Minimalgrad
Injektivität
Mereologie
Mini-Disc
Quelle <Physik>
Umsetzung <Informatik>
Komponententest
Schreiben <Datenverarbeitung>
Freeware
Code
Mustersprache
Skript <Programm>
Kontrollstruktur
Spielkonsole
E-Mail
Schnittstelle
Verschiebungsoperator
Softwaretest
App <Programm>
Oval
Güte der Anpassung
Gebäude <Mathematik>
Profil <Aerodynamik>
Instantiierung
Rechnen
Biprodukt
Web log
Quelle <Physik>
Randwert
Dienst <Informatik>
Menge
Wurzel <Mathematik>
Rechter Winkel
Login
Festspeicher
Server
Programmierumgebung
Repository <Informatik>
Instantiierung
Schnittstelle
Subtraktion
Wellenpaket
Mathematisierung
Unrundheit
Dienst <Informatik>
Open Source
Repository <Informatik>
Knotenmenge
Variable
Weg <Topologie>
Bereichsschätzung
Spieltheorie
Datentyp
Endogene Variable
Hash-Algorithmus
Vererbungshierarchie
Skript <Programm>
Diffusor
Installation <Informatik>
Konfigurationsraum
Normalvektor
Attributierte Grammatik
Soundverarbeitung
Videospiel
Booten
Default
Rechenzeit
Schlussregel
Elektronische Publikation
Modul
Datenfluss
Menge
Chipkarte
Chirurgie <Mathematik>
Schnelltaste
Chatten <Kommunikation>
Caching
Attributierte Grammatik
Wort <Informatik>
Textbaustein
Bit
Formale Sprache
Gruppenkeim
Versionsverwaltung
Kartesische Koordinaten
Computer
Login
Template
Übergang
Datenmanagement
Prozess <Informatik>
Default
Parametersystem
Schnelltaste
ATM
Softwareentwickler
Installation <Informatik>
Physikalischer Effekt
Template
Datenhaltung
Reihe
Übergang
Programmierumgebung
Quellcode
Variable
Konfiguration <Informatik>
Arithmetisches Mittel
Datenfeld
Twitter <Softwareplattform>
ATM
Garbentheorie
URL
Information
Overhead <Kommunikationstechnik>
Schlüsselverwaltung
Prozessautomation
Aggregatzustand
Standardabweichung
Nebenbedingung
Proxy Server
Server
Quader
App <Programm>
Zellularer Automat
Interaktives Fernsehen
Zahlenbereich
Transformation <Mathematik>
ROM <Informatik>
Term
Kontextbezogenes System
Code
Framework <Informatik>
Lastteilung
Multi-Tier-Architektur
Mini-Disc
Wrapper <Programmierung>
Booten
Softwareentwickler
Speicher <Informatik>
Drei
Assoziativgesetz
Benutzeroberfläche
Transformation <Mathematik>
Diskretes System
Konfigurationsraum
Mathematisierung
Mailing-Liste
Kopula <Mathematik>
Physikalisches System
Quick-Sort
Schlussregel
Modallogik
Minimalgrad
Last
Verbandstheorie
Speicherabzug
Umsetzung <Informatik>
Subtraktion
ROM <Informatik>
Code
Kontinuierliche Integration
Übergang
Komponente <Software>
Reelle Zahl
Minimum
Kepler-Vermutung
Softwareentwickler
Peer-to-Peer-Netz
Touchscreen
Softwaretest
Fehlermeldung
Konfigurationsraum
Cookie <Internet>
Konfiguration <Informatik>
Kugelkappe
Flächeninhalt
Rechter Winkel
Attributierte Grammatik
Versionsverwaltung
Bitrate
Prozessautomation
Umsetzung <Informatik>
Punkt
Versionsverwaltung
Komplex <Algebra>
Synchronisierung
Gerichteter Graph
Videokonferenz
Übergang
Datenmanagement
Prozess <Informatik>
Hook <Programmierung>
Skript <Programm>
Kontrast <Statistik>
Einflussgröße
Verschiebungsoperator
Softwaretest
Parametersystem
Nichtlinearer Operator
Filter <Stochastik>
Datennetz
Güte der Anpassung
Reihe
Quellcode
Biprodukt
Frequenz
Twitter <Softwareplattform>
Menge
Chatten <Kommunikation>
Server
Projektive Ebene
Information
Programmierumgebung
Fehlermeldung
Standardabweichung
Quader
Wasserdampftafel
Mathematisierung
Zahlenbereich
Code
Kugel
Notebook-Computer
Programmbibliothek
Softwareentwickler
Touchscreen
Fehlermeldung
Digitales Zertifikat
Open Source
Eindeutigkeit
Softwarewerkzeug
Plug in
Peer-to-Peer-Netz
Quick-Sort
Last
Mereologie
Gamecontroller
Faktor <Algebra>
Kantenfärbung
Unternehmensarchitektur
Lie-Gruppe

Metadaten

Formale Metadaten

Titel Breaking Technology Silos with Chef
Serientitel ChefConf 2016
Autor Walberg, Sean
Lizenz CC-Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen und nicht-kommerziellen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen und das Werk bzw. diesen Inhalt auch in veränderter Form nur unter den Bedingungen dieser Lizenz weitergeben.
DOI 10.5446/34616
Herausgeber Confreaks, LLC
Erscheinungsjahr 2016
Sprache Englisch

Inhaltliche Metadaten

Fachgebiet Informatik
Abstract Chef is an amazing tool but to really unlock its potential you need to look at how it integrates with the rest of your technology. This presentation is the story of how the NFL used Chef to transform its siloed infrastructure and practices into something more agile, automated, and reliable. This presentation will talk about the last 2 years of Chef at the NFL, including how we integrated it with our virtualization infrastructure, load balancers, storage, and application performance monitoring. We'll talk about some things that Chef taught us about infrastructure as code that we were able to apply to other areas, and things we learned to make our cookbooks easier to manage across groups.

Ähnliche Filme

Loading...
Feedback