Chef and HP cook up partnership for infrastructure as code – even on Windows
Infrastructure automation goes mainstream?
HP Discover HP Technology Services has announced a partnership with Chef to include infrastructure automation as part of its Datacenter Care offering, at the HP Discover event today in Barcelona.
Chef is open source software (under the Apache 2.0 license) for script-driven configuration of servers. The Seattle-based company of the same name sells an enterprise version and offers consultancy services.
“This is the first major reseller agreement that we’ve done,” Chef marketing VP Jay Wampold told The Reg. “HP Technology Services is used by over 2000 global enterprises. From our perspective, Chef becomes the platform that’s put in front of these organisations for DevOps.”
DevOps (Development and Operations) is about integrating the software development process with its deployment. Another buzzword, Continuous Delivery, describes the automation of software testing and deployment, so that a developer can modify the code and have the change quickly deployed to production. These approaches are popular because of the pressure on businesses to respond quickly to changing software requirements.
What Chef’s product does (along with its competitor Puppet) is to allow the setup of a server (or virtual machine) to be specified in a Ruby script, including what services are installed and the content of configuration files. A Chef agent on each server checks whether it complies with the latest script and updates itself if it is not. Since the code in the script determines the server setup, this is called “infrastructure as code.”
According to EMEA VP (and chief Enterprise Architect) Justin Arbuckle, something like Chef is essential to do Continuous Delivery right.
“Imagine a large enterprise. What they will be dealing with is delivering code continuously within a broad ecosystem of perhaps different hypervisors, different containers, API layers, configuration management systems, service management platforms, a variety of monitoring tools, all of this stuff has to be dealt with. Continuous delivery without dynamic automated infrastructure as code typically creates a gap, as the organisation has to wait for the specification for the tuning of the infrastructure. Unless you make infrastructure agile, the benefits you get through the continuous delivery of software are reduced.”
Arbuckle says the approach is gaining traction in banks and other highly regulated industries because it assists rapid software iteration while maintaining compliance. “People are turning to software like Chef to translate some of those compliance issues into well-defined explicit policies, the implementation of which can then be automated consistently. Chef provides a single common language for the specification, for the description and implementation of policy across the enterprise.”
In order to use Chef, a cloud-like infrastructure is essential, but although Chef works well with providers like Amazon Web Services or Microsoft Azure, it does not need to be public cloud.
“Cloud is a method, not a location,” says Arbuckle. When we use the term cloud, what we are talking about is programmatic access to elastic compute resources. You may want to throw in some network resources, storage, things like that. Abstracting away from the physical resources is critical. But it doesn’t have to be a public cloud.”
Unix-like operating systems are more amenable to automated configuration than Windows, since configuration is in plain text rather than in a typical Windows mixture of text files and registry entries. Microsoft has been trying to address this via its PowerShell scripting automation platform, including a feature called Desired State Configuration (DSC), which lets you define how a feature is configured in code and then apply it to a server. DSC is not yet comprehensive, but is intended to be used by systems like Chef; it is not in competition.
Running Chef on Windows
“We have many customers who are using Windows with Chef. In this space, Chef is the only game in town. Our Windows story is stronger,” claims Arbuckle. “Microsoft’s Jeffrey Snover, the inventor of PowerShell and the father of Desired State Configuration says that the Chef approach to managing how we think about integration with Windows is the right way to go.”
What about Docker, the trendy container technology that lets you bundle applications into standard packages without worrying about server configuration, does that reduce the need for Chef?
“Docker happens to be the thing today, tomorrow there will be other mechanisms for providing levels of abstraction. Docker abstracts a certain amount of the orchestration detail as well as the configuration detail. But any large enterprise has legacy applications to deal with, legacy infrastructure. They will always be heterogeneous with multiple containers and hypervisor technology stacks. We enable organisations to manage change and transition in a heterogeneous world,” says Arbuckle.®