The Value of IT Automation

Issue 1 Introduction

1 IT Automation: The lynchpin for Introduction: IT Automation: organizational transformation in a The Lynchpin for Organizational DevOps world Transformation in a DevOps As a reformed sysadmin who has World worked in a lot of large-scale and 2 complex environments, and now as Walmart DevOps Profile the CIO of , I’ve been around , IT 8 automation and what is often now Case Study: Staples referred to as “DevOps”, for much of the last two decades. 12 Case Study: Ambit Energy Here at Puppet, we’ve been investigating the state of DevOps 14 practices for the last four years as part traditional enterprise businesses. This Case Study: Infusionsoft of our general approach to helping IT adoption is only accelerating, and we are organizations transform and achieve increasingly seeing large enterprises make 17 higher levels of efficiency. We’ve learned significant strides in terms of automation About Puppet a lot about the impact of these practices maturity. from tens of thousands of practitioners, 2. There are a host of myths surrounding and I’ve also been fortunate enough to DevOps applicability in enterprise spend much of my time meeting one-on- environments that block DevOps adoption one with many companies around the in many organizations. These are often views globe who are at varying stages of IT held by technical managers and executives automation maturity. rather than the grassroots practitioners. In A few things have become apparent general these myths coalesce around beliefs over the years: that these practices are not applicable to legacy environments, traditional enterprises, 1. DevOps practices have moved hierarchical organizations and highly from theory to implementation for more regulated environments. and more organizations, particularly 3. While it’s undeniably true continuous delivery and automated adopt DevOps practices across nearly that DevOps still refers to a loose testing; and underpinning it all, a 50,000 servers. Here’s what he had collection of technical and cultural robust IT automation platform that to say about how Puppet Enterprise’s practices, we’ve seen a common set enables an infrastructure-as-code continuous configuration capabilities of practices that lead to successful approach. help Walmart’s IT team deliver value DevOps transformations in enterprise to the business. Recently we got the chance to talk environments. These are the use of to Martin Jackson of Walmart to version control for code and artifacts; Source: Nigel Kersten, CIO, Puppet hear how he has helped his company cross-team automation tools such as

Walmart DevOps Profile

customer service. And for us, Puppet named Wade turned to one of our helps enable our customer service Puppet coders and said, “So, how’s functions because Puppet enables us to that Puppet thing going?” There was do more with less, to be more efficient, an implied challenge: “Are you ever to be more consistent, and to be more going to get into production?” Because transparent in the delivery of our IT we’d been working on it for a few services. months already.

One of our Puppet coders looked Why is Walmart using Puppet? him right in the eye and said, “We’re We adopted Puppet for the particular going to change lives.” We all realized purpose of controlling drift in a large Thanks for talking with us. Can you tell us that it was true. The work that we a little about yourself? legacy brownfield environment, and it’s were doing was going to change the doing that job fantastically well across My name is Martin Jackson. I’ve way that people interact with the multiple OS platforms, across huge been a Walmart Associate for over 16 server build process forever, no matter geographic distances. Stores thousands years. I’ve spent all of that time working what else happens. of miles away are using the same in the information systems division. infrastructure and it’s all working – and How has your work changed since it’s working well. automating your infrastructure? How does IT fit into Walmart’s corporate vision? Before Puppet, it would take us What excited you about automation? Walmart’s corporate motto is, “Save some time between four weeks to money. Live better.” And as an IT In a large IT organization like ours, never to achieve major changes across associate, I help Walmart achieve that there are a lot of projects that never our infrastructure organization and goal by always working on ways to do quite see the light of day. They get our legacy fleet … Now with Puppet things better, faster, more consistently, worked on … eventually the project we can do those changes in a week, more transparently. We’ve achieved gets shut down, kind of put out of its or a couple of days, or in the case of some level of success by focusing on misery … one of our server engineers straightforward changes, just a couple

2 The Value of IT Automation Issue 1 of hours. We are making change in our And the end result is that, generally, that no one else changes the NTP infrastructure environments a lot more everybody is really happy with the configuration file while they’re not rapidly and with a lot more confidence result. It leads to a single model and a looking? Are you worried about the than has been the case in the past. single deliverable, which is the server’s difference between the server that Jill desired configuration state. And that builds and the server that Bob builds? How does Puppet support Walmart’s server’s desired configuration state Because if you’re worried about any of DevOps initiative? is by definition what we said it was those things, you should really take a In many ways, Puppet enforces that going to be. look at what Puppet can do for you.” DevOps mentality that says, “This is the configuration that you’re going to What would you say to someone who isn’t What’s next for IT at Walmart? using IT automation? have on this system.” Puppet forces I want to be able to deliver you to get into the room and to have I would say, “What is it that your frictionless value to our partners. I that conversation with people and say, server engineers find themselves want our partners to be happy to come “This is what the kernel tunings are doing on a day-to-day basis? And to IT and say, “This is what I need,” going to look like. This is what the CIS really what is it that they’re actually and for us to be able to give it to them. controls are going to be. This is what spending their time on? Are they the ulimits are going to be set to.” spending their time delivering better, Source: Puppet You can’t set it this way and then set it more efficient, and more suitable this way somewhere else. You have to servers for the applications teams, or plan in advance and layer what your are they sitting there banging away at configuration is going to look like. NTP configuration files and hoping

Issue 1 The Value of IT Automation 3 Research from Gartner: Innovation Insight for Continuous Configuration Automation Tools

Continuous configuration Analysis of the “automation” minisuite of IT automation tools are foundational Embodying lean, agile and operations management tools (see support for DevOps initiatives, but collaborative concepts core to DevOps “Choose IT Operations Management also provide I&O leaders with an initiatives, CCA tools bring a newly Tools Based on Your Requirements”). opportunity to increase operational found level of precision, efficiency agility with low-cost tools across IT and flexibility to the challenges Description operations. of infrastructure and application Product architectures vary configuration management. They among vendors, but CCA tools Key Findings do so through a programmable generally consist of one or more • Continuous configuration framework on which configuration management servers (depending on automation (CCA) tools enable and provisioning tasks can be codified, scale requirements) that manage DevOps initiatives by providing a versioned and managed like any the execution of configuration tasks flexible, programmatic platform other piece of application code – distributed to agents or directly for deploying and managing the frequently known as “infrastructure to targeted resources. CCA tools configuration of infrastructure and as code.” This approach naturally provide a repository to store and application resources. appeals to application developers, but manage configuration content, but also to a growing number of system can be integrated with or use (code) • CCA tools’ ongoing value is as administrators who increasingly revision control systems in use by dependent on user community- rely on scripting skills to manage application development teams. Each contributed content and support constantly growing and changing CCA vendor has different names for as it is on the commercial maturity provisioning and configuration the artifacts it uses to describe and and performance of the automation requirements. In addition to use in package configuration tasks (modules/ tooling. DevOps and traditional IT operations manifests, recipes/cookbooks, for production control, CCA tools • CCA tools can be used to modules/playbooks, etc.), but the task are used in most Web-scale IT transform the way configuration content is generally equivalent across infrastructures for configuration management is performed across IT the tools. management. operations, but not without strategic The content artifacts contain code investments in skills. that describes desired configuration Definition variables, commands and references CCA tools enable infrastructure Recommendations to other resources and artifacts. (system, server and cloud) • Select and implement CCA tooling Although CCA tools have originated administrators and developers to support DevOps initiatives. as open-source projects, their value to automate the deployment and is equally, if not more, dependent • Use CCA tooling to supplement or configuration of settings and software on the engagement of its content- replace server automation tooling to for physical and virtual infrastructure generating, supporting community potentially lower licensing costs. in a programmatic way. They enable than on its automation prowess. This the description of configuration states, • Strategically invest in skills, support is in recognition that infrastructure customization of settings, software and an automation content strategy and application configuration diversity binaries deployment and configuration to ensure maximum value from continues to accelerate, a trend data reporting. These tools are part CCA tool investments. better served by more contributors

4 The Value of IT Automation Issue 1 (the community) than fewer (just relationship benefits (enhanced • Risk mitigation – via the consistent vendors). The content generated by the support, enterprise features, access use of standardized, documented community can range from support to training, etc.) with the benefit processes and configurations across for specific platforms to prebuilt of potential rapid evolution and physical and virtual infrastructure, combinations of tasks to support a enhancement due to community resulting in fewer issues due to specific use case or workflow. CCA involvement. This is often done human error. tool vendors also contribute content at a lower cost than traditional, CCA tools can drive efficiencies back to the community and provide closed-source commercial server into existing operational configuration quality guidelines, and in some cases automation products (see Continuous management, as well as provide a tools, for content certification. This Configuration Automation flexible framework for managing the certification process then enables the Alternatives section). infrastructure of DevOps initiatives, by tool vendor to provide support for These tools originally focused natively integrating with other DevOps both vendor-sourced and community- on Unix/ platforms; however, toolchain components – notably sourced content. Windows capabilities have recently continuous integration and application CCA tools vary in their use of pull improved because Microsoft is release automation in support of versus push (i.e., how much activity is providing the enabling technologies continuous delivery. literally performed by the management needed in Windows Server. CCA application versus the target node tools are also used, in some Adoption Rate either via agent or directly) approaches cases, to manage Mac OSX client Adoption of CCA tools remains to monitoring configuration states configurations. This is common closely connected to growing DevOps and task execution. Client experience when incumbent management tools projects, infrastructure-as-code use does not yet indicate a meaningful have insufficient OSX capabilities in production environments and difference in performance because of and purpose-built OSX management Web-scale IT investment patterns, approach; however, when used as an tools are too expensive or otherwise with similar factors hindering and auditing data source for configuration impractical. accelerating adoption. policy compliance or in supporting By enabling infrastructure extreme scale, consider further Adoption of these tools is hindered administrators and developers evaluation and comparison. by: to automate the deployment and configuration of settings and software • A dearth of needed scripting skills Benefits and Uses for physical and virtual infrastructure among system administrators and IT CCA tools (see Representative in a programmatic way, organizations generalists Providers section) are the commercial across all vertical markets stand to evolution of open-source configuration realize: • A historical lack of functional parity tools that emerged in the mid-1990s. between commercially supported New entrants continue to arrive • Agility and productivity gains – via content and the larger pool of as specific investments in DevOps faster deployment and configuration community-generated automation initiatives grow. Enterprises that have of infrastructure in response to content long used the license-free, community changing market demands • An evolving go-to-market, pricing versions of these open-source tools in • Cost reduction – via a significant and packaging models pockets of their environments look to reduction of required manual take advantage of paid support and/ interactions by high-skills and high- • A historical lack of enabling or commercial versions and products cost staff. Licensing cost reductions technology provided in Windows as they scale their implementations. may also be achieved through the server OS (PowerShell and DSC) These paid options provide vendor use of free, community versions of product and content.

Issue 1 The Value of IT Automation 5 By contrast, adoption of these tools Without a concerted and Alternatively, enterprises that is growing in line with investment in coordinated effort to strategically do not invest in CCA tooling DevOps and Web-scale IT initiatives invest in the skills (in particular run the risk of overpaying for due to: scripting), automation content core infrastructure configuration management and support to take full management capabilities. As a result, • Programmatic appeal to application advantage of the tools, enterprises it will indirectly impede the delivery developers at best run the risk of suboptimally of new applications and features, and • Ease of experimentation, performing tooling. At worst, challenge recruiting talent looking to extensibility and access to active enterprises run the risk of putting work with the latest technology. communities themselves in a position where they have tools that no one can use. Evaluation Factors • Potentially lower total cost of ownership for significant CCA tools can be incorrectly When strategically evaluating configuration management perceived as tools best-suited to solve CCA tools and vendors, pay specific capability due to lower licensing all configuration management needs attention to: including patch and auditing, across costs • Skills and training required not all platforms, infrastructure types and just to implement, but to maintain • Windows server OS refresh efforts devices. In fact, CCA tools are best- and enhance, the tool. Assess to versions including PowerShell suited for (and clearly positioned) the existing skills base of system and DSC to manage primarily data center and administrators and DevOps teams cloud-based infrastructure – most because languages and semantics Risks recently being associated with software can vary significantly from tool to defined networking (see “Mainstream Due in large part to their extremely tool, requiring similarly variable Organizations Should Prepare for low barrier to entry, CCA tool expertise. investments are often numerous SDN Now” and “Target Networking and scattered across enterprise for Successful Cloud Deployments”). • Platform and Infrastructure content organizations. In larger organizations Even within the infrastructure sphere and support. Evaluate all platform multiple CCA tools are often used on platform (OS) and infrastructure type content for required scenarios a project-by-project basis. This creates (server, storage, networking) support as this can vary significantly – an organic skills base, but limits their varies widely among vendors. especially for Windows where content and capability are still strategic potential because redundant CCA tool vendors are acquisition emerging. and disparate automation content is targets for vendors operating in likely to result in equally disparate and adjacent IT operations management • Delivery method and licensing diverse configuration states across the (ITOM) spaces. An acquisition could flexibility. Pricing may be similar infrastructure. Inherent in this struggle reduce community support and result for per-node use, but multiyear and is the challenge of maintaining the in CCA capabilities that are oriented enterprise pricing will vary greatly pace of innovation while still driving to the acquiring vendor’s ITOM by vendor. for consistency. strategy.

6 The Value of IT Automation Issue 1 • Method for interacting with Continuous Configuration Automation Recommendations Alternatives managed systems (agent-based/ • Select and implement CCA tooling agentless, push/pull). Define and Server (life cycle) automation to support DevOps initiatives. evaluate requirements beyond basic (SA) tools (e.g., BMC BladeLogic configuration tasks (e.g., audit/ Server Automation and HP Server • Use CCA tooling to supplement or compliance) to determine which Automation) also offer configuration replace server automation tooling to approach provides necessary capability and are often used for potentially lower licensing costs. capability and visibility. operational production control. • Strategically invest in skills, support However, SA tools provide mature • Current and historical community and an automation content strategy capability for other automation size and engagement, in particular to ensure maximum value from requirements (e.g., patch management contribution rates. Ensure that CCA tool investments. and templated configuration content matches your platform and assessment). These tools often application environments. Representative Providers support multiplatform environments • Support and training availability with a mature GUI for consolidated • and costs. This is often overlooked reporting across multiple functions. • CFEngine beyond initial purchases and SA tooling can be used in place of implementations. Include and or in conjunction with CCA tools • evaluate support and training to provide provisioning and other • Puppet requirements on an ongoing basis, configuration management functions, taking into account future use-case but do so in a less structured way and • SaltStack support and adoption by new users. without the benefit of community content. CCA tools provide more Evidence granular configuration capability. Some I&O organizations have Data for this research was drawn implemented both SA and CCA tools, from approximately 300 client but the burden of integration and inquiries taken over the past 18 coordination (using SA to push CCA months. agents and manage CCA policies) falls Gartner Research, G00279903, Colin Fletcher, to the . Terrence Cosgrove, 26 August 2015

Issue 1 The Value of IT Automation 7 Case Study Staples: Enabling DevOps & Self-Service Cloud Provisioning with Puppet Enterprise

About Staples application development teams to focus on developing business value. Staples Inc. is the world’s largest free up IT Operations from having to Automation helps realize this value, as office products company and one provision developer environments so Staples has found. of the biggest internet retailers. The they can focus on activities that add “Staples had just a limited number company opened its first store in 1986, more value to the business. of people with a set of very specialized began offering its stock publicly in “Puppet is a key enabler in helping skills who could automate,” said 1989, began selling online in 1998, us realize the vision that all things Jeff. “We had a lot of development and has grown to $22.5 billion in will and must be automated to deliver teams just chomping at the bit to start annual revenue. at the velocity of our business,” expanding the number of tools that said Scott Johnson, vice president of they used in house. They wanted that Top outcomes of using Puppet Enterprise technical operations and architecture automated.” • Fast provisioning of cloud resources at Staples. The answer was to find a for internal application development configuration management system that teams. Cloud Automation would be accessible for developers, • Automated systems management Managing and making optimal platform engineers and others – not makes IT ops teams faster & more use of Staples’ private cloud was the just sysadmins. “We needed to be efficient. primary motivation behind finding a able to say, ‘Here’s a configuration good configuration management tool, management tool; we don’t expect • Increased stability and reliability. said Tom Sabin, IT manager for cloud you be experts in it, but if you can and automation, and Jeff Quaintance, get started in your own sandbox Starting environment senior cloud and automation engineer or development environment, • A private cloud service for the at Staples. and contribute back to us, that would help us build and scale out company’s development teams The private cloud was set up as a our configuration management consisting of thousands of virtual service for Staples’ internal application capabilities,“ said Jeff. “That’s where machines in multiple data centers. development teams, to give them Puppet came in.” • Private cloud runs on the flexibility to quickly acquire the Enterprise Linux. development and test environments Today, with configuration managed they need. The private cloud runs on by Puppet Enterprise, Staples’ IT team • Additional technology includes Red Hat Enterprise Linux, and RHEL has created a user interface that allows Red Hat Satellite, Apache, Tomcat, environments are managed with Red colleagues on other teams to order NodeJS, MongoDB, Oracle and Hat Satellite. Other technologies new VMs equipped so they can start Redis. used within the private cloud include working right away. Apache, Tomcat, NodeJS, MongoDB, Why Puppet Enterprise? Redis and Oracle. “We’re not just handing out servers; we’re handing out servers Staples needed to automate its Companies turn to cloud to speed with middleware or database on top private cloud spanning multiple data up application delivery. The hope is of it, moving up the stack,” said Jeff. centers. The company also wanted to that cloud will deliver VMs quickly “Puppet has really helped us get to enable self-service provisioning for and efficiently, so developers can that point.”

8 The Value of IT Automation Issue 1 Choosing the Right Configuration Management Platform “Puppet is a key enabler in helping us realize the When Jeff and other Staples teams vision that all things will and must be automated to started analyzing several open source deliver at the velocity of our business.” configuration management tools, they found an application development Scott Johnson, vice president of technical operations and architecture at Staples team at Staples that had already deployed Open Source Puppet to engineers provisioned servers with Enterprise. A few Staples engineers manage application code, and that was Open Source Puppet and helped the were naturals, though, and picked a strong advocate for the technology. developers manage their configurations. up Puppet quickly. “I know the Learning VM on the Puppet website There were several factors that While Open Source Puppet was has been quite helpful for people as made Puppet highly attractive to the working out well for this particular well,” said Tom. “Some people used Staples IT team, including: application team, Jeff and Tom knew that [and other Puppet resources] to they would need to expand quickly to • Puppet has a strong community of learn Puppet on their own, and there other teams, and also from Linux-only users producing modules, patterns are quite a number who have been to both Linux and AIX. That made and ideas that the Staples team successful.” Puppet Enterprise the best choice. could learn from and build on. Plus, getting bootstrapping help from Jeff was one of those who dived in “Other tools really didn’t have Puppet professional services engineers, and learned Puppet independently, but that,” Jeff said. and knowing there would be ongoing he advocates for training. “One thing • It was easier for people to quickly professional support, made the choice to watch out for with self-training are get to at least an intermediate level easy. gaps where you skipped some core with Puppet. “In the past, other things while learning on your own,” “It was the knowledge transfer automation tools ended up being so he observed. [from professional services engineers] complex that other groups couldn’t that really set us on the right track, and consume them without a dedicated Building Credibility for the IT Ops Team got us up and going a lot faster than if person, and staffing for those skill we’d been doing it on our own,” Jeff Staples’ IT team is now using sets is a significant challenge,” said. Puppet Enterprise to manage the Jeff said. “We needed to identify a VMs in its private cloud, which runs configuration management tool that The new private cloud service was a on Linux. While system engineers other people in the organization big priority, so getting it launched with are certainly saving a lot of time on who aren’t necessarily advanced good processes and practices mattered, routine tasks, the biggest benefit is experts could consume, use and and as quickly as possible. Puppet the vastly increased speed of getting a become part of the automation professional services engineers showed package developed and installed. community at Staples.” the Staples engineers how to write Puppet code that was portable and “If we have the package already • The Puppet skill set was not difficult reusable across applications, to make developed, what took days before to hire for, particularly people who it faster and easier to scale beyond the now takes literally minutes,” Jeff said. had experience with Open Source original application development team’s “For a new capability – say a new Puppet. specific needs. application server container we need to install – what took several weeks is The application team used Open now down to a week.” Source Puppet on a couple of different Puppet Training application stacks, hosted both Puppet’ public and onsite private That huge change has made a internally and with a public cloud training helped get Staples engineers big change in the perception of IT service. The application engineers quickly comfortable with Puppet Operations and its role within Staples. opened requests, and platform

Issue 1 The Value of IT Automation 9 “We can turn this stuff around really, This shared responsibility for “What we’ve pushed on is, if really fast, because we’ve done a good delivering code that moves the business you have something net new, where job with building the configurations forward is, of course, what DevOps there was no standard beforehand, within Puppet,” Jeff said. “People is about. “I look at it as bringing and we’re doing it for the first time are amazed at how quickly we’re operations and development closer in Puppet, let’s push to get as much turning things around. We’re doing together to solve business problems, managed by Puppet as we possibly can. a good job of keeping pace with our regardless of whether that’s a software Now there are a couple of examples development teams as they try to release or you have a priority incident out there, where it’s almost just click roll out new functionality for our to address,” Tom said. and go – they can build out an entire business, and that’s helped me and cluster with some piece of middleware Puppet has helped Staples improve my team build credibility within the on it, and Puppet is literally managing its flow of code through each stage, global technology organization here at all aspects of that configuration. As they from development through to Staples.” add new servers to the cluster, Puppet production. The team uses r10k to is automatically picking that up and manage distribution of Puppet code DevOps and making everyone else in the cluster across all Puppet masters in Staples’ aware of that.” Engineers have always automated multiple data centers. Code is stored with scripts, but everyone does it in a repository, and then after code Once people see a few of these differently. Where sysadmins might review and approval, it’s merged. “shining examples,” as Tom calls them, favor shell scripts or Perl, developers Here’s where r10k comes into play “people see that and say, ‘Okay, I get might write scripts in Python. The again, pushing approved, merged code it.’” problems in delivering quality to development and QA environments. automation arises not just from these Once testing is complete, a separate Self-Service Provisioning for Application technical differences, but also from process is used to push code that’s Developers differences between people’s individual passed tests into production. When people talk about scripting styles, even when using the implementing DevOps, one same language. “I really do see Puppet as a DevOps improvement they’re often looking tool, because it helps bridge that gap for is self-service provisioning for Puppet has brought consistency between development and operations, developers. “At the end of the day, to how Staples engineers in different and it really level-sets,” Tom said. we want to get something like a PaaS departments automate. It’s made it “Anybody can contribute Puppet code, [Platform as a Service] offering,” Tom possible for more people with different whereas in a legacy environment, you said. “I don’t necessarily mean an skill sets and jobs – application might actually need to have root access actual PaaS offering, just complete developers, system engineers, testing to be able to do certain configurations infrastructure as code, so that when engineers – to automate work, or install certain software packages. developers deploy, they don’t have spreading the responsibility to a much Puppet allows you to abstract that to think about [infrastructure]; they larger group. away, and provides enablement for our don’t have to worry about what’s development teams to do some work Just as important, it’s now possible being configured. They can literally that otherwise they’d be restricted to put automation code, whether just deploy their code,” and the from, from an access standpoint.” for applications or the systems that infrastructure needed to support support it, into a source control tool. Staples development teams have it will be deployed correctly and “With a centralized center of excellence become interested in Puppet. “We’ve automatically. around Puppet, it allows us to put that had some adoption; recently, we’ve Full automation of application code governance in place, allows us to put a had some teams going out and trying and infrastructure code together is not process in place, so we have the right to do some things in Puppet on their far off. “We’re working on getting to level of review prior to anything going own, and we’re working with them,” the point where the development team out to production,” Tom said. Tom said.

10 The Value of IT Automation Issue 1 important one, because Puppet is The Future of Puppet Enterprise at Industry Retail a great way to check the box back Staples Challenge to management and say, ‘Yes, that Eventually, Tom would like to configuration is up and running on expand Puppet to all systems at • Automate private cloud used by application development teams all of our servers,’” Tom said. Staples, whether they’re running Linux, AIX or Windows. “The private While launching new processes • Create self-service provisioning for cloud was a greenfield project, and developers with Puppet Enterprise has been could be carefully planned from fairly straightforward, retrofitting • Speed deployment cycles. scratch but it’s a whole different Puppet Enterprise to servers with ballgame when you’re applying Puppet existing middleware has been a to existing running systems that have Solution challenge, yet has yielded significant been built under a different set of • Puppet Enterprise to automate cloud savings in time and bother. management & create a PaaS-like standards,” Tom said. “We’re working provisioning service. “Take the example of on trying to retrofit and build up as installing an agent,” Jeff said. much momentum behind the rest of • Automation of common IT operations our enterprise as we have with our tasks to provide consistency. “Before Puppet, you could look at 50 servers, and somehow [the private cloud.” • Free IT team to innovate. sysadmins] figured out how to The team is eager to roll out install the agent probably 29 several time-sensitive tools across Results different ways. We puppetized the the enterprise. Puppet Enterprise is • Deployment cycles went from weeks to agent install, and now for all of our installed, and nearly ready to automate hours, from days to minutes. cloud systems it’s very consistent – rollout of one of these tools. Others just an email, and an hour later it’s • Developers can provision their own will be rolled out in the same fashion done. You just classify the server environments as needed. once the process has been proven on and walk away, let the Puppet agent the first tool. run. This is a big improvement over the inevitable delays coordinating Adopting Red Hat’s Satellite across multiple teams with various management system is another project can literally just inject a Hiera file,” tickets.” now in the planning stage, and this said Jeff. “It will completely configure too will rely on Puppet Enterprise. that stack for them, so they can just Another great outcome for “The PuppetDB backend and exporter deploy that configuration right along the team is stability. “Everyone resources really enable us to have a lot with their application artifacts on new wants to have stability while still more power and granularity over the builds.” being fast; that’s one of the main configuration management,” Jeff said. objectives we have for configuration Infrastructure Automation for Consistency, management,” Tom said. “Puppet Beyond these projects, Jeff would Stability & Efficiency as an automation tool helps us to like to manage network devices with Achieving the faster deployments get to that point, so we can quickly Puppet Enterprise. “Puppet creates a enabled by DevOps is terrific. But build and configure systems that lot of automation opportunities that on a more basic level, most system are standardized – and when you we will look to leverage in the future,” administration teams adopt Puppet become standardized, you become he said. Enterprise simply to save time on more stable.” Tom Sabin is the IT manager for common IT operations tasks. cloud and automation at Staples. The Staples team uses Puppet for Jeff Quaintance is a senior cloud and automating configurations across automation engineer at the retailer. Linux servers. “That’s kind of an Source: Puppet

Issue 1 The Value of IT Automation 11 Case Study Ambit Energy’s Competitive Advantage? It’s Really a DevOps Software Company

About Ambit Energy Investing in IT yields fast growth to $1B – Ambit runs its infrastructure and and beyond Ambit Energy provides gas and applications primarily on Windows electric service to retail customers “I credit a lot of our growth to our and .NET. Before introducing Puppet in more than 50 U.S. markets. The investment in IT systems, which is as Enterprise in November 2013, the company has more than $1 billion much as a software company would IT team performed all software in annual revenue, and in 2010 was invest – and in some ways, that’s what deployments by hand, and was able named the fastest growing company we really are,” says Robert Rudduck, to manage about 30 application in the United States by Inc. Magazine Ambit Energy’s director of architecture servers (compared to more than 500 – and has been in the top 5,000 fastest and DevOps. The company’s IT staff in various environments since the team growing ever since. of more than 100 people write the has been managing app servers with software applications that run the Puppet). CIO John Burke felt it was business, using Puppet Enterprise to taking too long to develop and deploy Top outcomes of using Puppet Enterprise deploy that software and manage applications with one-off scripts and • The team deploys 30 to 40 Ambit’s IT infrastructure. manual deployment, and asked the applications to production per team to find a solution. day, up from monthly or quarterly Fast growth brings its own problems releases as the common practice. In order to continue growing Ambit Energy started up in 2006 rapidly and sustainably in a highly • Changes made to production as a direct selling company, using a regulated and competitive industry, environments so quickly that no network of consultants to sell gas and Ambit needed automation so the maintenance windows necessary. electric services to retail customers. company could respond quickly and Before Puppet Enterprise, multi- The company has grown to more with agility to ever-changing market hour maintenance windows were a than $1 billion in annual revenue, and conditions and its own business needs. regular necessity. serves more than 50 U.S. markets.

• The IT team is able to manage over Operating in so many markets, Automation gives you speed and quality 500 application servers in multiple Ambit needs to take account of varying “Our mantra is ‘automate environments, up from around 30 regulations and market rules in many everything,’” Robert says. That before Puppet, with the same size different competitive energy markets. includes automating the entire lifecycle team. The company also has to integrate with different incumbent utilities that • Puppet’s resource-oriented DSL own the power lines and generation lets Ambit’s IT staff think about plants; each of these has its own rules the state of their resources; they for managing customers. To compete don’t have to think like developers effectively, Ambit has to adapt to in order to make infrastructure frequent changes throughout its changes. markets, and maintain accurate billing to keep its retail customers satisfied.

12 The Value of IT Automation Issue 1 of virtual machines, from provisioning “Our DevOps guys are not to end-of-life, Ambit’s internally built developers who code in Ruby – that’s Industry Retail web services framework and messaging not how they solve problems,” Robert energy provider framework, and more. said. “With Chef you have to write Challenge a ton of Ruby code, and you have Most of Ambit’s tools are built to have the dev mindset. Because of Ambit Energy couldn’t deploy fast internally, other than Microsoft enough to support its rapidly growing Puppet’s resource-oriented DSL, you Team Foundation Server and Puppet business without considerable pain. don’t have to think like a developer; Enterprise. The integration of these you can just think about the state of tools has given Ambit a fast-moving Solution your resources. Puppet is great for continuous delivery platform that us; I can’t think of any other way we Puppet Enterprise automates everything now allows the company to release from infrastructure setup & management would have gone.” code continuously throughout the to application deployment. day, up from a handful of quarterly or Robert Rudduck is the director of monthly releases, all while achieving architecture and DevOps at Ambit Results ever-higher quality standards. Roll- Energy, a Dallas-based retail energy • Deployments up to1,200 times more forward is now a true option, and provider. Robert’s experience of frequent. deployment-related rework is near bringing innovative development • IT team can manage 500 servers, up zero. practices to healthcare, government from 30 before Puppet. services, and utilities has been • No maintenance windows needed. Enabling DevOps with tools the entire instrumental in Ambit’s transition team can use from running legacy IT systems to • IT team can be more strategic. In addition to delivering new running continuous delivery in a features and updates more frequently, highly scalable environment based on and with fewer bugs, Ambit’s IT micro-services. Source: Puppet team now benefits from the enhanced collaboration that DevOps practices and tools provide. Everyone can use Puppet, not just developers or admins.

Issue 1 The Value of IT Automation 13 Case Study Continuous Integration at Infusionsoft with Puppet Enterprise

About Infusionsoft Starting environment The operations team, charged Infusionsoft develops and sells • 125 Linux servers, mostly physical with providing development and CRM systems for small business. test environments for a number of different teams, It’s been named one of the fastest Why Puppet Enterprise? growing private companies in Arizona, built its own automation systems to • Easy for new people and colleagues employing more than 650 people. deploy and manage both physical outside ops to learn. The company has received more than and virtual servers. But homegrown $125 million in funding, including • Prebuilt modules and integrations automation presented new problems, $54 million in venture capital from for a wide range of technologies and and didn’t fully solve old ones. Server Goldman Sachs in early 2013. data center equipment. provisioning took hours; server deployments were highly manual and • As an integral component of often failed. And it was difficult to get Top outcomes of using Puppet Enterprise standard continuous integration new employees up and running on the • Able to implement continuous process, Puppet Enterprise provides homegrown automation system. integration workflow. ability to achieve continuous delivery of infrastructure. Infusionsoft began to look at • Ops team manages 250 servers, server automation solutions, and after double the prior number (mostly • Because Puppet is the industry considering Chef, landed on Puppet. VMs). standard for IT automation, it’s easy The operations team had some prior to hire people with Puppet skills and • Ops has time to upgrade and experience with Open Source Puppet, knowledge as the company grows. improve infrastructure, and plan for and chose to adopt Puppet Enterprise further scaling. because it was easier and more Scaling for today’s growth, planning for efficient, due to tested integration of • Improved insight into infrastructure, tomorrow’s growth important services. With Infusionsoft plus accurate auditing for PCI Infusionsoft has experienced the experiencing rapid growth, the ability compliance. pleasures of fast growth, along with to scale infrastructure management many of the typical pains. Rapid effectively with Puppet Enterprise • Automated monitoring and alerts. addition of new customers and new was key. The team would be able employees meant that infrastructure to automate provisioning and had to grow quickly, too. management of VMware virtual

Using PuppetDB, we can query, and provide information that helps with capacity planning – what we are running right now, how much we’ve grown recently, and what we’ll need to grow in the future. We can also push out any new security configurations we need to adhere to, and show what we’ve changed with the reporting.

Ben Hainline, Production Operations Engineer at Infusionsoft

14 The Value of IT Automation Issue 1 machines, enabled by Puppet’s tight Infusionsoft has been able to more Puppet Enterprise, of course, can be integration with VMware products than double its infrastructure and used to provision and make changes such as vSphere Enterprise. Puppet manage it effectively with the same seamlessly on both physical and virtual Enterprise also provides fully number of sysadmins. “One person machines. supported, pre-built modules for many can manage 200 servers with Puppet Ben’s team checks all its Puppet common system administration tasks, Enterprise,” Ben said. code into Git, putting it through test ending the need to write many in- Just as important, the ops team can and integration before pushing to house scripts. now make improvements it didn’t have production, and plans to implement “With Open Source Puppet, you time for before Puppet Enterprise. “We Jenkins for automated test and have to stick things together manually can make upgrades, push them out, integration. This is one of the most by yourself,” said Ben Hainline, a and go work on things that improve common continuous integration production operations engineer at and uplift the environment,” Ben workflows in IT today. The Infusionsoft. “With Puppet Enterprise, said. For example, the team has been Infusionsoft team looks forward to you can create a multi-node structure able to scale its user authentication using r10k, packaged with Puppet right out of the box. Having a scalable scheme to all servers, and is upgrading Enterprise, to automate promotion of structure right away was huge for database servers to newer technology. code from stage to stage. us.” The fact that Puppet Enterprise Puppet has also been useful for provides support for so many different upgrading and updating VMware Easier reporting, more insight types of hardware and software also environments more efficiently. Another major benefit of Puppet made it easy to extend automation Enterprise is the insight it provides further throughout Infusionsoft’s Building a continuous integration workflow into the state of infrastructure, and technical operations. Infusionsoft, like many other the ease of reporting. “You can see the It’s easier to hire and onboard companies, has been working to speed changes, count on them being made new employees when you’re using its software development cycles and fast, and you can audit any changes an industry-standard solution, Ben deliver code more frequently. Ben’s you put into the environment,” Ben said. “There are people out there with team provides the development and said. The team plans to integrate Puppet skills, sysadmins who have test servers for all the software teams Puppet with Splunk to get alerts with experience in DevOps.” at Infusionsoft, and is charged with Puppet-generated data. assuring that environments at each “Recently, leadership has asked stage of the software development Greater efficiency, plus time to make us questions about what’s in our things better cycle align with production. environments,” Ben said. “Using Since adopting Puppet Enterprise, a “We’re providing about half virtual PuppetDB, we can query, and provide number of things have changed for the machines, half physical,” Ben said. information that helps with capacity better. Where it used to take hours to “Our database machines are physical, planning – what we are running right provision a server, it now takes about but web services and noncritical now, how much we’ve grown recently, 20 minutes, and the process is almost services are virtualized. Virtualization and what we’ll need to grow in the entirely automated. “With Puppet lets us get more utilization out of future.” Enterprise, we basically just kick it off, our physical hardware, and it’s faster and can trust completely that it will and easier to automate virtualized complete,” Ben said. servers and make network changes.”

Issue 1 The Value of IT Automation 15 Infusionsoft must comply with PCI standards, and Puppet reporting is very helpful here, too. “We can use Puppet to control who has access to specific systems, and we can add and remove control quickly,” Ben said. “We can also push out any new security configurations we need to adhere to, and show what we’ve changed with the reporting.”

The future of Puppet at Infusionsoft It’s so much easier to make changes with Puppet, and it’s so easy to write modules for new capabilities, that management can now count on being able to scale the business economically. Infusionsoft is making good progress with its continuous delivery initiative, and can count on delivering changes more quickly, enabling the company to Industry introduce innovative new services to its small business clientele. Business software Challenge • Manual server provisioning was slow & failure-prone. Ben Hainline is a production operations engineer at Infusionsoft, • Homegrown automation was inefficient. where he’s responsible for general • Continuous integration impossible with manual process. day-to-day infrastructure tasks and end-to-end systems automation. Ben • Needed to prove PCI compliance. is an avid Linux enthusiast and enjoys working with all things open source. Solution • Infrastructure automation for fast change, reliability, visibility. Source: Puppet • Dashboard for visibility into infrastructure + reporting.

• Integration with VMware

• Enable continuous integration & continuous delivery.

Results • Sysadmin team is efficient & productive.

• Infusionsoft positioned to scale quickly for growth.

• Continuous integration established & replicable.

• Easy reporting to management & auditors.

16 The Value of IT Automation Issue 1 About Puppet

Puppet is driving the movement to a world of unconstrained software change. Its revolutionary platform is the industry standard for automating the delivery and operation of the software that powers everything around us. More than 30,000 companies – including more than two thirds of the Fortune 100 – use Puppet’s open-source and commercial solutions to adopt DevOps practices, achieve situational awareness and drive software change with confidence. Based in Portland, Oregon, Puppet is a privately held company with more than 400 employees around the world. Learn more at puppet.com.

The Value of IT Automation is published by Puppet. Editorial content supplied by Puppet is independent of Gartner analysis. All Gartner research is used with Gartner’s permission, and was originally published as part of Gartner’s syndicated research service available to all entitled Gartner clients. © 2016 Gartner, Inc. and/or its affiliates. All rights reserved. The use of Gartner research in this publication does not indicate Gartner’s endorsement of Puppet’s products and/or strategies. Reproduction or distribution of this publication in any form without Gartner’s prior written permission is forbidden. The information contained herein has been obtained from sources believed to be reliable. Gartner disclaims all warranties as to the accuracy, completeness or adequacy of such information. The opinions expressed herein are subject to change without notice. Although Gartner research may include a discussion of related legal issues, Gartner does not provide legal advice or services and its research should not be construed or used as such. Gartner is a public company, and its shareholders may include firms and funds that have financial interests in entities covered in Gartner research. Gartner’s Board of Directors may include senior managers of these firms or funds. Gartner research is produced independently by its research organization without input or influence from these firms, funds or their managers. For further information on the independence and integrity of Gartner research, see “Guiding Principles on Independence and Objectivity” on its website, http://www.gartner.com/technology/about/ombudsman/omb_guide2.jsp.

Issue 1 The Value of IT Automation 17