When your infrastructure is described as code, you can test that code the same way as your application source code. Automated testing of infrastructure code is called test-driven infrastructure (TDI).
For example, do you have unit tests for your applications that are initiated automatically whenever there is a check-in to your version control system? You can now do the same with your configuration code.
With TDI, you’ll catch problems earlier, before they impact your release cycle. The earlier you catch a problem, the easier and less expensive it is to fix.
Chef is the only company that provides commercial support for a full suite of tools for TDI. Here’s an example of a TDI workflow.
Chef provides the tools you need for every stage.
Jeff Smith, Development Manager at Rally Software says, "The biggest win here (with Chef) is that all of this can be tested. If we make a change, we can make it with 100 percent confidence that it will work and can be rolled out successfully. We’re just pushing out code with a lot more confidence."
Do you have legacy applications you want to migrate to the cloud? Use Chef to make the move safely, securely and at a pace that suits your business needs. With Chef you gain control over your entire stack, from your developers’ laptops to your production servers. When you’ve standardized your operating environment, you’re in charge of how fast change happens.
For example, you might want to start with a project that moves one small piece of your operating environment to the cloud. Because Chef makes the move consistent and repeatable, you’ll be able to apply what you’ve learned to larger projects and quickly scale up to replace legacy environments.
"We’re looking at cloud architecture. We’re looking at public cloud, we’re looking at private cloud. We want to do some completely different things that we haven’t been able to do before. The only reason that I’m able to consider those is because of what we did with Chef. It’s now opened a completely new capability that I hadn’t foreseen. I view Chef as the tool that has had the single biggest impact in our transformation."
- John Esser, Director of Engineering Productivity and Agile Development at Ancestry.com
Web-scale IT is all about infrastructure on demand. You want to scale your apps according to immediate business needs. To do that you need infrastructure that’s fast, scalable and consistent. Chef gives you that.
Whether you’re operating in the cloud, on-premise or both, once you’ve automated with Chef, you have an elastic environment that provides the resources you need when you need them. Infrastructure as code means immediacy. When you’ve used Chef to define what a web server is, for example, you can spin up as many as you need with the click of a mouse. Listen to what Alex Munk, Product Manager at Splunk says:
"We can bring up a new database server with one command. We can bring up a whole Splunk environment with one command. The amazing story is that Splunk Storm would not be here today without Chef."
- Alex Munk, Product Manager at Splunk
Heard about DevOps? Web-scale IT depends on it. DevOps is a cultural movement where development and IT operations work together toward shared business goals. These teams focus on automation and operational efficiency and rely on clear communication and trust. Many organizations have siloes, where there’s little or no interaction between the two groups. DevOps breaks those siloes down.
Automation is one of the foundations of DevOps. When you take control of your entire stack, from developers’ workstations to the production servers, dev and ops must work together.
Chef encourages clear communication because it covers the entire stack and gives everyone a common language. Listen to what Rob Cummings, Infrastructure Engineer at Nordstrom, says.
"Code has … given us a single way to communicate. Before we had different groups operating with different tools, and different mindsets in how they approached things. By distilling it all down to code, we’re able to leverage the same practices among different groups. It allows us to be more agile, move faster and respond when the business needs us to respond."
- Rob Cummings, Infrastructure Engineer at Nordstrom
Learn Chef and expand your skill set. You’ll be able to use the leading automation platform for web-scale IT and manage any type of network, whether it uses Windows Server, Linux, containers, or all three. Listen to Rob Cummings, Infrastructure Engineer at Nordstrom.
By bringing in Chef, we were able to automate a very heterogeneous infrastructure that included both legacy and new applications and we were able to open up some interesting career paths for our engineers. We have hardcore UNIX engineers now happily automating Windows infrastructure because they can do it through code.
Unlike some configuration tools that use a limited domain-specific language, when you learn Chef, you learn Ruby. Ruby is a popular, full-featured programming language that you can use in many situations.
Ready to get started? Go to Learn Chef and work through the tutorials. We even provide a training lab if you need an environment to get started.