10 traps to avoid during a devops transition@AlainDELAFOSSEEric MATTERN
2DevOps beginsDevOps OperationsAgileMethodologiesBusiness DevelopersDevOps started on interaction between developers and operationsRelease Analysis Dev & Bugﬁxing Tests DeploymentChangesMonitoringIncidentdetectionAnalysisProblem Management
3ProcessesCultureToolingTrap 1- Thinks it’s only about tooling
4Trap 2- Start with the wrong tooling strategy(1/2)• Manage anddeploy OS &Software images• Less flexibility• Infrastructureand DeploymentCoverage• Automatedeployment usinga market solution• Stick onrequirements• Numerous bricksavailable• RequiresIntegration work-A-Build ownsolution-B-DeploymentTool-C-ApplianceImages-D-Adopt PAASApproachDependencyManagement:Middleware and OS
5Trap 2- Start with the wrong tooling strategy(2/2)Clone Configure Develop Package Configure DeployInfrastructure / OS Software-A- Build ownsolution-B- Deploymenttool-C- Applianceimages-D- PAAS
6Trap 3- Think only server deployment (1/2)OS & SoftwareConfiguration itemsSoftwarecomponentsand middlewaredependenciesOS & SoftwareConfiguration itemsSoftwarecomponentsand middlewaredependenciesInfrastructureconfigurationand provisioningDeploymentorchestrationOS & SoftwareConfiguration itemsConfigurationManagementSoftwareDeploymentPlatformDeployment
7Trap 3- Think only server deployment (2/2)CFEnginePuppetChefFabricAnsibleCapistranoControl TierSaltRunDeckFunc mCollective
8Trap 4– Trying to fully automate data anddatabase upgradesDatabases and Data aretricky to automate• Upgrades/changesmixing data, DDL, DML,scripts updates, duration• Rarely an infrastructuresize challenge• Config challenge:failover, replication, logs,crons, backups.Try to uncoupledatabase changes fromsoftware upgrades• Defer database structurechanges• New database schemes ?• NoSQL databases wheredata structure updatesare easier
9Trap 5- Rebranding teams/persons as DevOpsRe-name teamsSetting DevOps astitle or functionCreate a newteamForget the nameEmpower yourteams to fosterthe transition!Don’t Do
10Trap 6- Underevaluate the cultural shiftCollaborationLong and difficultjourneyDevops culturalaspects• Sense of continuousimprovement• Collaboration level• TransparencyRe-use AGILEtransitionspractices
11Trap 7- If you don’t measure it, you can’t value itDefine goals Find metrics Expose KPI’s• Deployment metrics examples :• Deployment rate and delay• Releases quality: number of rollbacks• Rollback delay• Effort and delay for configuration update• Dev/ops releases ratio against number of servers/components/releases• …Contextualizemetrics toyour goal andcontextEvaluate progression & share the success
12Trap 8- Forget continuous improvement loopsCapture Feedbacks• Regular internaluser meetings• Pair deployingFormalize and categorizeProcess evolution/Toolsbugfixes or improvementsBacklog• Milestones andprioritizationImprove• Implement anddeploy Devops is a endless journey Setup a continuous improvement loop : tools and processesDon’t specialize resources onmaintenance, think transversal andcollaborative: virtual team.
13Trap 9- Focus only on deployment processMonitoringSucks• Common dashboards usingOPS,DEV and BIZ metrics• Stop servercentric• Logs management• Monitoring==test (cucumber)Performancemanagement• Continuous integration withautomatic stress tests andperformance analysis plugins• Scalability and Capacitymanagement• AutomaticScalingIncident/Problemmanagement• Bring dev into ops roomwhen incidents are popping.• Capture production logs andexpose to dev.BCP/DRP design• Collaborative design of thebusiness continuity anddisaster recovery plans• Cloud BCP hot deploymentSecurity management• Continuous integration withflaw detections plugins• There are other processes /areas where collaboration between devand ops make sense.
14Trap 10– Conflict with Some production environments do require strong service management Devops doesn’t enforce a specific organization or processes Devops will seed the ITIL processes by bringing new tools and newpracticesITIL Process New tool New practicesChange management Configuration updates automationthrough Chef,PuppetAutomatic change logging andauditRelease and DeploymentmanagementSoftware deployment tools Continuous deploymentBlue/Green deploymentCapacity management Platform deployment tool(Coupling IAAS+ Softwaredeployment)Live scalingService ContinuitymanagementPlatform deployment tool(Coupling IAAS+ Softwaredeployment)Cold BCP deployment throughplatform deploymentautomation