A chef is a configuration management tool for managing machine setup on physical servers, virtual machines and in the cloud, for example, Amazon EC2, Google Cloud Platform, OpenStack, SoftLayer, Microsoft Azure. A chef is open source tool that streamlines the task of configuration and maintaining an organization’s servers. It is written in Ruby and Erlang languages, it can easily integrate with cloud platforms to automatically provision and configure new servers.
1. Puppet vs. Chef vs. Ansible vs. SaltStack
2. How to Install the Chef Server on CentOS/RHEL 5/6/7
3. Install and Configure a Chef Workstation on CentOS/RHEL 7/6
4. How to connect Chef Server with Nodes on Linux
What is Chef?
A tool for automating and managing the configuration of infrastructure. Written in Ruby.
Types of thing are managing by Chef, for example, Files, Users, Services, Packages, Mounts, and much more.
Facilitates infrastructure as code, giving the computing environment attributes similar to any software project:
1) It is versionable
2) It is repeatable
3) It is testable
Why You Need a Configuration Management Tool:
There are many reasons why configuration management tools play a virtual role in complex infrastructure. Few of them as below:
Servers that are maintained by hand tend to become fragile environments that are hard to understand and modify.
Manage change at scale
Increase change velocity
Create an organization where change is embraced, not feared
Easy to configure the server in a consistent manner.
Make life easier for your system administrators by automating repeated tasks with a configuration management tool.
Humans are bad at doing the same task rep to the quality or completeness of documen
Automation reduces opportunity for error.
Easy to rebuild the server from scratch
With the help of configuration management tool you can quickly restore services.
When rebuilds are easy, system administrators gain confidence to make changes to infrastructure more rapidly.
Infrastructure configuration is kept in the source configuration management tool.
Feautres Of Chef:
You can easily manage thousands of servers using only a handful of employees.
Chef is written in Ruby language, so you can customize Chef.
You are not locked into one way of using Chef. A chef can operate in a distributed stand-alone mode or in a centralized mode requiring a server.
Chef is open source and supported by a vibrant community of system administrators and developers.
Chef has evolved to have a powerful set of features that make it unique among configuration management tools: