Enterprise flight into DevOps space for DevOps Linz 2016

  • Published on
    22-Jan-2017

  • View
    147

  • Download
    0

Embed Size (px)

Transcript

<ul><li><p>01</p></li><li><p>Aboutme02</p></li><li><p>AndreyAdamovichJava/Groovydeveloper,cleancoder</p><p>DevOpsguy,automationjunkie</p><p>Coorganizerof@latcraftand@devternity</p><p>Coachat@devchampions</p><p>Twitter:@codingandrey</p><p>03</p></li><li><p>Enterprise!04</p></li><li><p>...orEnterprisey?</p><p>05</p></li><li><p>Thestory06</p></li><li><p>Onceuponatime...</p><p>07</p></li><li><p>Anemailarrives...</p><p>08</p></li><li><p>...let'sgettowork</p><p>09</p></li><li><p>...twodayslater...</p><p>10</p></li><li><p>...fivedayslater...</p><p>11</p></li><li><p>AnotheremailHiJack,IgotacallfromSandy,thesecretproject'sPM,shesaysthat</p><p>theDEVserversarenotreadyyet,Ireallywantyoutounderstandhow</p><p>criticalisthisprojectfortheorganization,please,don'tletmedown...</p><p>Francis,VP</p><p>12</p></li><li><p>Jack'sbossHiJack,Iunderstandyouhavebeenworkingonthesecretproject</p><p>serverssetuprecently,don'tforgetthatweneedtokeepthe</p><p>documentationuptodateyeah?</p><p>13</p></li><li><p>Noproblem!Weknowhowtowritedocs.</p><p>14</p></li><li><p>...inthemeanwhile...</p><p>15</p></li><li><p>ThedreadedCRHeyJack,wecan'tdeployanymoretoourDEVservers.Whatthehell</p><p>isgoingon?</p><p>16</p></li><li><p>Fixing</p><p>17</p></li><li><p>...thingsgetworse...</p><p>18</p></li><li><p>Worsethandown...</p><p>19</p></li><li><p>UNKNOWNSTATE</p><p>20</p></li><li><p>Chaos(r)21</p></li><li><p>The"secret"projectmovesintoQA</p><p>22</p></li><li><p>TheGOLIVE!</p><p>23</p></li><li><p>Let'sthrowmorepeopleatit</p><p>24</p></li><li><p>...it'sgoingtowork,right?</p><p>25</p></li><li><p>Whataboutmonitoring?</p><p>26</p></li><li><p>Dowehaveit?</p><p>27</p></li><li><p>YES!28</p></li><li><p>But...</p><p>29</p></li><li><p>Well...30</p></li><li><p>Sorry!31</p></li><li><p>Nohappyending?</p><p>32</p></li><li><p>Whereistheproblem?</p><p>33</p></li><li><p>CommunicationproblemsI</p><p>34</p></li><li><p>CommunicationproblemsII</p><p>35</p></li><li><p>Stabilityvs.agility</p><p>36</p></li><li><p>Stagnationvs.stability?</p><p>37</p></li><li><p>Unplannedwork</p><p>38</p></li><li><p>GeneKim</p><p>39</p></li><li><p>Unplannedworkcankill</p><p>yourcompany!40</p></li><li><p>Unplannedvs.failed</p><p>41</p></li><li><p>Unplannedvs.unique</p><p>42</p></li><li><p>DevOps!43</p></li><li><p>Fixcommunication</p><p>44</p></li><li><p>Sharingresponsibility</p><p>45</p></li><li><p>Reducefailedchanges</p><p>46</p></li><li><p>Reducenumberofuniqueconfigs</p><p>47</p></li><li><p>Great!48</p></li><li><p>Nowwe'veheardaboutDevOps!</p><p>49</p></li><li><p>Let'sdoit!50</p></li><li><p>Itwillsaveus!51</p></li><li><p>Butbeprepared...52</p></li><li><p>DevOpsishighlymisunderstoodYourbosshaveheardofDevOps!</p><p>Recruitershavegonecrazy!</p><p>AllwantDevOpsengineersnow?!?</p><p>Doesitmeanthatdevelopershavetodoeverything?</p><p>Naturalreactionistorejectthat!</p><p>53</p></li><li><p>DevOpsTopologies54</p></li><li><p>MathewSkelton</p><p>55</p></li><li><p>AntiTypes56</p></li><li><p>AntiTypeA:DevandOpsSilos</p><p>57</p></li><li><p>AntiTypeB:DevOpsTeamSilo</p><p>58</p></li><li><p>AntiTypeC:DevDon'tNeedOps</p><p>59</p></li><li><p>AntiTypeD:DevOpsasToolsTeam</p><p>60</p></li><li><p>AntiTypeE:RebrandedSysAdmin</p><p>61</p></li><li><p>Types62</p></li><li><p>Type1:DevandOpsCollaboration</p><p>63</p></li><li><p>Type2:FullySharedOpsReponsibilities</p><p>64</p></li><li><p>Type3:OpsasInfrastructureasaService</p><p>65</p></li><li><p>Type4:DevOpsasanExternalService</p><p>66</p></li><li><p>Type5:DevOpsTeamwithanExpiryDate</p><p>67</p></li><li><p>Anyquickhints?</p><p>68</p></li><li><p>TALK!69</p></li><li><p>TALKMORE!70</p></li><li><p>SHARE!71</p></li><li><p>SHAREEVERYTHING!</p><p>72</p></li><li><p>HintsforDevs73</p></li><li><p>Don'tignoreoperations!74</p></li><li><p>LoggingWheneveryouaddnewloggingstatementtoyourcode,remember</p><p>thattheguyontheothersidecanactuallyreadit!</p><p>Logginglevel,messageandfrequencyofloggingcanhelpordisturb</p><p>75</p></li><li><p>Badloggingmessages</p><p>76</p></li><li><p>ConfigurationStructureapplicationconfiguration</p><p>Backwardscompatible,gooddefaults,goodnaming</p><p>Donotmixtechnicalandbusinessconfiguration</p><p>77</p></li><li><p>Badparameternaming</p><p>78</p></li><li><p>MonitoringEmbedmonitoringcapabilitiesintoyourcode</p><p>Knowmonitoringchannelsthatyouroperationsuse:JMX,SNMP,</p><p>HTTP</p><p>79</p></li><li><p>MonitoringvitalsTechnicalmetrics:</p><p>CPU,Memory,Disk</p><p>Resourcepools</p><p>NetworkI/O</p><p>Transactions/requests/operationspersecond/minute/hour</p><p>Databaseperformance</p><p>Businessmetrics</p><p>80</p></li><li><p>Createdashboards!</p><p>81</p></li><li><p>Alignearly!82</p></li><li><p>Latealignmentissues</p><p>83</p></li><li><p>LearnhowtouseprovisioningsoftwarePuppet</p><p>Chef</p><p>Ansible</p><p>Salt</p><p>84</p></li><li><p>BuildacloneSameOSversion,</p><p>samecomponents,</p><p>sameconfiguration</p><p>asinproductionenvironemnt,</p><p>butrunninginvirtualmachineonyourlaptoporatsomecloudprovider</p><p>85</p></li><li><p>PackagemanagersSystemadministratorsknowhowtoinstallstandardOSpackages</p><p>Justmakeoneforthem!</p><p>RPM,DEB,MSI...it'snotthathardtomaster!</p><p>86</p></li><li><p>Artifactrepositories</p><p>87</p></li><li><p>Automationoverdocumentation</p><p>88</p></li><li><p>Automateeverythingrepeatablebuild</p><p>release</p><p>deploy</p><p>test</p><p>backup</p><p>migration</p><p>restarts</p><p>89</p></li><li><p>HintsforOps90</p></li><li><p>ProblemsolvingGetdeveloperstosolveproductionproblems</p><p>Lookathowtheydidit</p><p>Postmortemanalysis</p><p>91</p></li><li><p>MonitoringCreatedashboards!Many,butmeaningfuldashboards!</p><p>Analyzeyourdata!</p><p>Createalerts!</p><p>92</p></li><li><p>LoggingAggregatelogs</p><p>Analyzelogs</p><p>Rotatelogs</p><p>Cleanlogs</p><p>93</p></li><li><p>LearnhowtouseprovisioningsoftwarePuppet</p><p>Chef</p><p>Ansible</p><p>Salt</p><p>94</p></li><li><p>Infrastructureascode</p><p>95</p></li><li><p>Keepitinversioncontrol</p><p>96</p></li><li><p>PortchangesbacktoDEV!</p><p>97</p></li><li><p>Preparefordisaster!Backups!</p><p>Testyourbackups.Seriously!</p><p>Capacityplanning.</p><p>98</p></li><li><p>Readingmaterial</p><p>99</p></li><li><p>ThePhoenixProject</p><p>100</p></li><li><p>ContinuousDelivery</p><p>101</p></li><li><p>ReleaseIt</p><p>102</p></li><li><p>InvitingDisaster</p><p>103</p></li><li><p>DevOpsblogshttp://enterprisedevops.com/</p><p>http://itrevolution.com/devopsblog/</p><p>104</p><p>http://enterprisedevops.com/http://itrevolution.com/devops-blog/</p></li><li><p>Questions?105</p></li><li><p>Thankyou!106</p></li><li><p>Haveaniceflight!</p><p>107</p></li><li><p>108</p></li></ul>