When talking about the management of complex systems, orchestration is always a hot topic. This is because orchestration is often seen as the easiest way to represent and model complex systems, as well as provide a path to delivering complex systems.
Most often orchestration is represented through a topology model. What is a topology model you ask? A description of the order-of-operations across a group of machines. A common example is provisioning a database, cache layer, multiple application servers, web servers, and load balancer(s). This model will include distinct technology components that must interact, are interdependent, and more often than not the provisioning is accomplished through a very specific order.
Although orchestration solutions have been around for a long time, very rarely have they fit the bill. This is one of the reasons why Chef has opted to take a different approach, which we see proving more functional in the real world. In other words, we’ve worked hard to create a solution that actually solves the problem consistently in a wide range of complex, real world implementations.
At the core of ensuring a robust orchestration mechanism is following the principles that have made our core product Chef great: scale, idempotency, flexibility, and test-driven automation.
In this post we’re going to take a look at how Chef can make orchestrating complex systems easier, faster, and more reliable.
For those that might be relatively new to Chef let’s do a quick recap of some of the core principles.
Here’s how this diagram breaks down:
So how do we achieve orchestration with Chef? An extension to Chef known as chef-metal allows you to use the core Chef principles to manage other aspects of your infrastructure. In this example we will use AWS as a platform, however, we are continually expanding our overarching orchestration concepts across different platforms.
As you’ll see chef-metal allows us to manage core AWS components such as ELBs, SQS queues, compute resources, and more. Chef-metal makes it extremely simple to provision these core AWS components, as well as ensure that they stay within compliance to the policy you define with Chef.
As always, everything starts from a recipe (policy).
This is just one example of how chef-metal can enable you to orchestrate complex systems. At the core of ensuring a robust orchestration mechanism is following the principles that have made our core product Chef great: scale, idempotency, flexibility and test driven automation.
Reach out directly to our partner team for feedback and questions at bizdev@getchef.com and don’t be afraid to test and collaborate on the development, which you can find here
If you are in the Bay Area, Chef is partnering with AWS in the Pop-up Loft in downtown San Francisco. Join us for free technical training courses and one-on-one technical appointments where we’d be happy to discuss Chef-metal in more detail.