Book Image

Managing Windows Servers with Chef

By : John Ewart
Book Image

Managing Windows Servers with Chef

By: John Ewart

Overview of this book

<p>This book begins with an introduction to the functionality and benefits of using Chef to manage Windows systems. From there, you are shown an overview of the Chef architecture and how to prepare a Windows host so that it can be managed by Chef, followed by an example of writing code to install a popular .NET application with Chef.<br /><br />This book looks at how Windows system administrators can effectively leverage Chef as an automated system management tool to simplify their lives through managed infrastructure. Included are practical examples that will help you to understand how to take advantage of Chef when managing your infrastructure.<br /><br />By the end of the book, you will be able to deploy software, provision hosts (including cloud servers), develop and test recipes for multiple platforms, and manage Windows hosts using the powerful tools that Chef provides.</p>
Table of Contents (13 chapters)

An overview of Chef's architecture


Chef has three main players in its overall architecture: the nodes that are being managed (servers, desktop clients, routers, and so on), the workstation that a system administrator uses to run the knife command, and the Chef service that is responsible for storing and managing all of the roles, recipes, and configuration data to be applied to the end hosts. The following diagram represents the Chef architecture:

The nodes communicate with the Chef service over HTTP (preferably HTTPS) using the chef-client script provided as part of the Chef client installation. This is a Ruby script that is responsible for connecting to the configured Chef service (self-hosted or using hosted Chef) and downloading the run list that is configured for that node along with any cookbooks and configuration data it needs. Once it has done that, chef-client will evaluate the run list in order to execute the recipes in the order in which they were specified.

The workstation also...