Infrastructure as Code (IAC) Cookbook
eBook - ePub

Infrastructure as Code (IAC) Cookbook

  1. 440 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Infrastructure as Code (IAC) Cookbook

About this book

Over 90 practical, actionable recipes to automate, test, and manage your infrastructure quickly and effectivelyAbout This Book• Bring down your delivery timeline from days to hours by treating your server configurations and VMs as code, just like you would with software code.• Take your existing knowledge and skill set with your existing tools (Puppet, Chef, or Docker) to the next level and solve IT infrastructure challenges.• Use practical recipes to use code to provision and deploy servers and applications and have greater control of your infrastructure.Who This Book Is ForThis book is for DevOps engineers and developers working in cross-functional teams or operations and would now switch to IAC to manage complex infrastructures.What You Will Learn• Provision local and remote development environments with Vagrant• Automate production infrastructures with Terraform, Ansible and Cloud-init on AWS, OpenStack, Google Cloud, Digital Ocean, and more• Manage and test automated systems using Chef and Puppet• Build, ship, and debug optimized Docker containers• Explore the best practices to automate and test everything from cloud infrastructures to operating system configurationIn DetailInfrastructure as Code (IAC) is a key aspect of the DevOps movement, and this book will show you how to transform the way you work with your infrastructure—by treating it as software.This book is dedicated to helping you discover the essentials of infrastructure automation and its related practices; the over 90 organized practical solutions will demonstrate how to work with some of the very best tools and cloud solutions.You will learn how to deploy repeatable infrastructures and services on AWS, OpenStack, Google Cloud, and Digital Ocean. You will see both Ansible and Terraform in action, manipulate the best bits from cloud-init to easily bootstrap instances, and simulate consistent environments locally or remotely using Vagrant. You will discover how to automate and test a range of system tasks using Chef or Puppet. You will also build, test, and debug various Docker containers having developers' interests in mind.This book will help you to use the right tools, techniques, and approaches to deliver working solutions for today's modern infrastructure challenges.Style and approachThis is a recipe-based book that allows you to venture into some of the most cutting-edge practices and techniques about IAC and solve immediate problems when trying to implement them.

Tools to learn more effectively

Saving Books

Saving Books

Keyword Search

Keyword Search

Annotating Text

Annotating Text

Listen to it instead

Listen to it instead

Infrastructure as Code (IAC) Cookbook


Table of Contents

Infrastructure as Code (IAC) Cookbook
Credits
About the Authors
About the Reviewer
www.PacktPub.com
eBooks, discount offers, and more
Why Subscribe?
Customer Feedback
Preface
What this book covers
What you need for this book
Who this book is for
Sections
Getting ready
How to do it…
How it works…
There's more…
See also
Conventions
Reader feedback
Customer support
Downloading the example code
Downloading the color images of this book
Errata
Piracy
Questions
1. Vagrant Development Environments
Introduction
Adding an Ubuntu Xenial (16.04 LTS) Vagrant box
Getting ready
How to do it…
How it works…
There's more…
Using a disposable Ubuntu Xenial (16.04) in seconds
Getting ready
How to do it…
How it works…
Enabling VirtualBox Guest Additions in Vagrant
Getting ready
How to do it…
How it works…
There's more…
Using a disposable CentOS 7.x with VMware in seconds
Getting ready
How to do it…
How it works…
There's more…
See also
Extending the VMware VM capabilities
Getting ready
How to do it…
How it works…
There's more…
Enabling multiprovider Vagrant environments
Getting ready
How to do it…
How it works…
Customizing a Vagrant VM
Getting ready
How to do it…
Set the hostname
Disable new box version check at startup
Use a specific box version
Display an informational message to the user
Specify a minimum Vagrant version
Using Docker with Vagrant
Getting ready
How to do it…
Using NGINX Docker container through Vagrant
Exposing Docker ports in Vagrant
Sharing folders with Docker through Vagrant
There's more…
Using Docker in Vagrant for a Ghost blog behind NGINX
Getting ready
How to do it…
There's more…
A Docker Compose equivalent
Using Vagrant remotely with AWS EC2 and Docker
Getting ready
How to do it…
Simulating dynamic multiple host networking
Getting ready
How to do it…
There's more…
Speed up deployments with linked clones
Using named NAT networks
Simulating a networked three-tier architecture app with Vagrant
Getting ready
How to do it…
Tier 3 – the database
Tier 2: the application servers
The Node.js application
Tier 1: the NGINX reverse proxy
Showing your work on the LAN while working with Laravel
Getting ready
How to do it…
A sample NGINX configuration for Laravel
Simple shell provisioning
Enable provisioning
Shared folder
Public LAN Networking
There's more…
Sharing access to your Vagrant environment with the world
Getting ready
How to do it…
Provisioning
Starting Ghost engine
Sharing access
HTTP
SSH
Simulating Chef upgrades using Vagrant
Getting ready
How to do it…
Vagrant Omnibus Chef plugin
A sample Chef recipe
Vagrant and Chef integration
Testing the Chef version update
There's more…
Controlling default Vagrant VMs
Berkshelf and Vagrant
Testing with Test Kitchen
Using Ansible with Vagrant to create a Docker host
Getting ready
How to do it…
A simple Ansible Docker playbook for Vagrant
Apply Ansible from Vagrant
There's more…
Using Docker containers on CoreOS with Vagrant
Getting ready
How to do it…
There's more…
2. Provisioning IaaS with Terraform
Introduction
Configuring the Terraform AWS provider
Getting ready
How to do it…
How it works…
There's more…
Creating and using an SSH key pair to use on AWS
Getting ready
How to do it…
How it works…
There's more…
Using AWS security groups with Terraform
Getting ready
How to do it…
There's more…
Creating an Ubuntu EC2 instance with Terraform
Getting ready
How to do it…
Scaling the number of instances
There's more…
Generating meaningful outputs with Terraform
Getting ready
How to do it…
There's more…
Using contextual defaults with Terraform
Getting ready
How to do it…
There's more…
Managing S3 storage with Terraform
Getting ready
How to do it…
There's more…
Creating private Docker repositories with Terraform
Getting ready
How to do it…
Creating a PostgreSQL RDS database with Terraform
Getting ready
How to do it…
There's more…
Enabling CloudWatch Logs for Docker with Terraform
Getting ready
How to do it…
Amazon CloudWatch Logs Docker logging driver
Managing IAM users with Terraform
Getting ready
How to do it…
An IAM user for S3 access
Testing the restrictions
An IAM user for EC2 in read-only
An application user IAM – CloudWatch Logs
There's more…
3. Going Further with Terraform
Introduction
Handling different environments with Terraform
Getting ready
How to do it…
Keeping the tfstate isolated
Setting the production flag
Provisioning a CentOS 7 EC2 instance with Chef using Terraform
Getting ready
How to do it…
Creating the EC2 inst...

Table of contents

  1. Infrastructure as Code (IAC) Cookbook

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription
No, books cannot be downloaded as external files, such as PDFs, for use outside of Perlego. However, you can download books within the Perlego app for offline reading on mobile or tablet. Learn how to download books offline
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 990+ topics, we’ve got you covered! Learn about our mission
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more about Read Aloud
Yes! You can use the Perlego app on both iOS and Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app
Yes, you can access Infrastructure as Code (IAC) Cookbook by Stephane Jourdan, Pierre Pomes in PDF and/or ePUB format, as well as other popular books in Ciencia de la computación & Administración de sistemas. We have over one million books available in our catalogue for you to explore.