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 World As a reformed sysadmin who has worked in a lot of large-scale and 2 complex environments, and now as Walmart DevOps Profile the CIO of Labs, I’ve been around , 8 IT 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 Labs, we’ve been investigating the state of DevOps traditional enterprise businesses. This 14 practices for the last four years as part adoption is only accelerating, and we are Case Study: Infusionsoft of our general approach to helping IT increasingly seeing large enterprises make organizations transform and achieve significant strides in terms of automation 17 higher levels of efficiency. We’ve learned maturity. About Puppet Labs a lot about the impact of these practices 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 general these myths coalesce around beliefs A few things have become apparent that these practices are not applicable to over the years: 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 Labs hear how he has helped his company cross-team automation tools such as

Walmart DevOps Profile

How does IT fit into Walmart’s corporate What excited you about automation? vision? In a large IT organization like ours, Walmart’s corporate motto is, “Save there are a lot of projects that never money. Live better.” And as an IT quite see the light of day. They get associate, I help Walmart achieve that worked on … eventually the project goal by always working on ways to do gets shut down, kind of put out of its things better, faster, more consistently, misery … one of our server engineers more transparently. We’ve achieved named Wade turned to one of our some level of success by focusing on Puppet coders and said, “So, how’s customer service. And for us, Puppet that Puppet thing going?” There was Recently we got that chance to talk helps enable our customer service an implied challenge: “Are you ever to Martin Jackson of Walmart to hear functions because Puppet enables us to going to get into production?” Because how he has helped his company adopt do more with less, to be more efficient, we’d been working on it for a few DevOps-like practices across nearly to be more consistent, and to be more months already. 50,000 servers. Here’s what he had transparent in the delivery of our IT One of our Pupper coders looked to say about how Puppet Enterprise’s services. him right in the eye and said, “We’re continuous configuration capabilities going to change lives.” We all realized help IT at Walmart deliver value to Why is Walmart using Puppet? that it was true. The work that we their business. We adopted Puppet for the particular were doing was going to change the purpose of controlling drift in a large way that people interact with the legacy brownfield environment, and it’s Thanks for talking with us. Can you tell us server build process forever, no matter a little about yourself? doing that job fantastically well across what else happens. My name is Martin Jackson. I’ve multiple OS platforms, across huge been a Walmart Associate for over 16 geographic distances. Stores thousands years. I’ve spent all of that time working of miles away are using the same in the information systems division. infrastructure and it’s all working – and it’s working well.

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

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

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

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

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 Labs 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 Labs • 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 Labs

Puppet Labs is the leader in IT automation. Our software helps sysadmins automate configuration and management of machines and the software running on them. With our software, businesses can make rapid, repeatable changes and automatically enforce the consistency of systems and devices, across physical and virtual machines, on prem or in the cloud.

We help tens of thousands of the world’s leading companies manage millions of machines and devices. Companies like Bank of America, Cisco, NYSE, and salesforce.com rely on our software to deploy their own software faster, be more productive, and gain insight into infrastructure configurations and operation.

Based in Portland, Oregon, Puppet Labs employs more than 400 people. We’ve raised $86 million from our investors: Cisco, Google Ventures, Kleiner Perkins Caufield & Byers, Radar Partners, Triangle Peak Partners, True Ventures and VMware.

The Value of IT Automation is published by Puppet Labs. Editorial content supplied by Puppet Labs 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 Labs’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