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)

Examining the recipe


Now that you have the source for the umbraco cookbook downloaded to your local machine, let's take a look at what it's doing. Umbraco is a very easy-to-install ASP.net CMS application that will give you a good feeling for how to install and configure an IIS application using Chef. Umbraco was chosen for this example cookbook because it does not require a database, although it supports one, and its single ZIP file installation makes it easy to follow along.

Let's take an in-depth look at the default.rb recipe that is contained within the umbraco cookbook. The code snippets in the upcoming section are contained within umbraco/recipes/default.rb.

Installing the prerequisites

Before we can set up the IIS application, our recipe will need to ensure that the IIS web server Windows role is installed on the host. As we have seen in the previous chapter, Chef has a resource, windows_feature, that allows us to ensure that it is either already available or gets installed as part of...