Test-Driven Infrastructure with Chef


Book Description

Since Test-Driven Infrastructure with Chef first appeared in mid-2011, infrastructure testing has begun to flourish in the web ops world. In this revised and expanded edition, author Stephen Nelson-Smith brings you up to date on this rapidly evolving discipline, including the philosophy driving it and a growing array of tools. You’ll get a hands-on introduction to the Chef framework, and a recommended toolchain and workflow for developing your own test-driven production infrastructure. Several exercises and examples throughout the book help you gain experience with Chef and the entire infrastructure-testing ecosystem. Learn how this test-first approach provides increased security, code quality, and peace of mind. Explore the underpinning philosophy that infrastructure can and should be treated as code Become familiar with the MASCOT approach to test-driven infrastructure Understand the basics of test-driven and behavior-driven development for managing change Dive into Chef fundamentals by building an infrastructure with real examples Discover how Chef works with tools such as Virtualbox and Vagrant Get a deeper understanding of Chef by learning Ruby language basics Learn the tools and workflow necessary to conduct unit, integration, and acceptance tests




Test-Driven Infrastructure with Chef


Book Description

Since Test-Driven Infrastructure with Chef first appeared in mid-2011, infrastructure testing has begun to flourish in the web ops world. In this revised and expanded edition, author Stephen Nelson-Smith brings you up to date on this rapidly evolving discipline, including the philosophy driving it and a growing array of tools. You’ll get a hands-on introduction to the Chef framework, and a recommended toolchain and workflow for developing your own test-driven production infrastructure. Several exercises and examples throughout the book help you gain experience with Chef and the entire infrastructure-testing ecosystem. Learn how this test-first approach provides increased security, code quality, and peace of mind. Explore the underpinning philosophy that infrastructure can and should be treated as code Become familiar with the MASCOT approach to test-driven infrastructure Understand the basics of test-driven and behavior-driven development for managing change Dive into Chef fundamentals by building an infrastructure with real examples Discover how Chef works with tools such as Virtualbox and Vagrant Get a deeper understanding of Chef by learning Ruby language basics Learn the tools and workflow necessary to conduct unit, integration, and acceptance tests




Test-Driven Infrastructure with Chef


Book Description

How do you apply test-driven development (TDD) principles to infrastructure as code when utilizing an automation framework like Chef? Join instructor Robin Beck in this training course to explore the infrastructure testing tools that ship with the Chef Development Kit (ChefDK). For integration testing, Robin introduces Test Kitchen, which allows you to verify your cookbook integrity by deploying code in isolation to a test environment, such as a virtual machine, Docker container, or cloud instance. He also reviews InSpec, the language for evaluating security and compliance issues. Finally, Robin demonstrates unit testing with ChefSpec, a fork of the popular RSpec framework that can verify the functionality of code in memory. With a focus on practical exercises, this course guides developers through a workflow that helps you reduce errors and produce production-ready infrastructure-before your cookbooks ever enter the pipeline.




Test-Driven Infrastructure with Chef


Book Description

Learn how to develop test-driven infrastructure with Chef. Learn how to perform integration testing and unit testing with ChefDK tools such as Test Kitchen, InSpec, and ChefSpec.




Chef Infrastructure Automation Cookbook - Second Edition


Book Description

This book is for system engineers and administrators who have a fundamental understanding of information management systems and infrastructure. It helps if you've already played around with Chef; however, this book covers all the important topics you will need to know. If you don't want to dig through a whole book before you can get started, this book is for you, as it features a set of independent recipes you can try out immediately.




Customizing Chef


Book Description

Take advantage of Chef’s highly customizable design to tackle specific automation issues that you can’t solve by simply using Chef’s tools, resources, and services out of the box. With this practical guide, you’ll examine the internal structure of this configuration management technology and learn where, how, and why to add custom code. Author Jon Cowie not only provides code snippets and practical advice for customizing Chef, but also helps you determine case by case whether it’s in your best interests to customize at all. If you have intermediate-to-advanced Chef experience, this book is indispensable. Explore Chef’s typical setups and why you’d want to customize them Learn the Ruby concepts needed to write customizations Customize the Chef run process and explore Chef’s internal classes Gain more insight into your Chef runs through handlers and Chef’s event stream Level up your Chef recipes by writing your own resources and providers Create and extend plugins for Knife—Chef’s command-line tool Interact with the Chef API to write scripts and reports Learn how to contribute customizations to the Chef community




Chef: Powerful Infrastructure Automation


Book Description

Learn Chef Provisioning like a boss and discover how to deploy software and manage hosts, along with engaging recipes to automate your cloud and server infrastructure with Chef. About This Book Leverage the power of Chef to transform your infrastructure into code to deploy new features in minutes Get step-by-step instructions to configure, deploy, and scale your applications Master specific Chef techniques to run an entire fleet of machines without breaking a sweat. Who This Book Is For If you are a system administrator, Linux administrator, a cloud developer, or someone who just wants to learn and apply Chef automation to your existing or new infrastructure, then this learning path will show you all you need to know. In order to get the most out of this learning path, some experience of programming or scripting languages would be useful. What You Will Learn Install Chef server on your own hosts Integrate Chef with cloud services Debug your cookbooks and Chef runs using the numerous inspection and logging facilities of Chef Extend Chef to meet your advanced needs by creating custom plugins for Knife and Ohai Create a perfect model system Use the best test-driven development methodologies In Detail Chef is a configuration management tool that turns IT infrastructure into code. Chef provides tools to manage systems at scale. This learning path takes you on a comprehensive tour of Chef's functionality, ranging from its core features to advanced development. You will be brought up to speed with what's new in Chef and how to set up your own Chef infrastructure for individuals, or small or large teams. You will learn to use the basic Chef command-line tools. We will also take you through the core concepts of managing users, applications, and your entire cloud infrastructure. You will learn the techniques of the pros by walking you through a host of step-by-step guides to solve real-world infrastructure automation challenges.You will learn to automate and document every aspect of your network, from the hardware to software, middleware, and all your containers. You will become familiar with the Chef'sProvisioning tool. By the end of this course, you will be confident in how to manage your infrastructure, scale using the cloud, and extend the built-in functionality of Chef itself.The books used in this Learning Path are: 1) Chef Essentials 2) Chef Infrastructure Automation Cookbook – Second Edition 3) Mastering Chef Provisioning Style and approach This fast-paced guide covers the many facets of Chef and will teach administrators to use Chef as a birds-eye lens for their entire system. This book takes you through a host of step-by-step guides to solve real-world infrastructure automation challenges and offers elegant, time-saving solutions for a perfectly described and automated network.




Terraform: Up & Running


Book Description

Terraform has become a key player in the DevOps world for defining, launching, and managing infrastructure as code (IaC) across a variety of cloud and virtualization platforms, including AWS, Google Cloud, Azure, and more. This hands-on second edition, expanded and thoroughly updated for Terraform version 0.12 and beyond, shows you the fastest way to get up and running. Gruntwork cofounder Yevgeniy (Jim) Brikman walks you through code examples that demonstrate Terraform’s simple, declarative programming language for deploying and managing infrastructure with a few commands. Veteran sysadmins, DevOps engineers, and novice developers will quickly go from Terraform basics to running a full stack that can support a massive amount of traffic and a large team of developers. Explore changes from Terraform 0.9 through 0.12, including backends, workspaces, and first-class expressions Learn how to write production-grade Terraform modules Dive into manual and automated testing for Terraform code Compare Terraform to Chef, Puppet, Ansible, CloudFormation, and Salt Stack Deploy server clusters, load balancers, and databases Use Terraform to manage the state of your infrastructure Create reusable infrastructure with Terraform modules Use advanced Terraform syntax to achieve zero-downtime deployment




Using Chef with Microsoft Azure


Book Description

This book is your hands-on guide to infrastructure provisioning and configuration management in the cloud using Chef’s open source, cross-platform toolset. With over 10,000 customers joining the Microsoft Azure cloud platform each week and steadily increasing usage, the need for automation approaches has never been greater. This book provides both practical examples and a much needed strategic overview of how these two technologies can be combined. Using Chef with Microsoft Azure takes you through the process of writing ‘recipes’ in Chef to describe your infrastructure as code, and simplify your configuration management processes. You’ll also meet the Chef tools that can be used to provision complete environments within Microsoft Azure. There are now a wide variety of tools and approaches that can be taken to provision resources such as virtual machines within Microsoft Azure. This book demonstrates them, discusses the benefits and weaknesses of each approach, and shows how a continuous provisioning pipeline can be established as part of a reliable, repeatable, and robust provisioning process. Each chapter has practical exercises that highlight the capabilities of both Chef and Microsoft Azure from an automation perspective and can be executed on Windows, Mac, or Linux platforms. In this book, you’ll learn: The purpose and principles behind automated provisioning Microsoft Azure concepts and management options How to deploy Chef Azure Virtual Machine Extensions using PowerShell, Azure command-line tools, and Chef Provisioning Chef Provisioning techniques, including provisioning PaaS resources such as KeyVault How to integrate quality tooling into the Chef development lifecycle, including Test Kitchen and InSpec with Azure compute resources How to set up a pipeline for continuous provisioning with Chef and Azure Who This Book Is For This book is for infrastructure platform and operations engineers and DevOps specialists/practitioners working with infrastructure and platform provisioning on Microsoft's public cloud, Azure. An understanding of programming in any language would be beneficial, but not necessary as the examples are designed to be easily readable by anyone with general IT experience. While it is expected most users picking up this book will be on the Windows platform, a good proportion of compute workload on the Azure platform is Linux based. As a result the book includes examples that are relevant to both Windows and Linux platforms.