Infrastructure as Code (IAC) Cookbook

Infrastructure as Code (IAC) Cookbook
Author: Stephane Jourdan
Publisher: Packt Publishing Ltd
Total Pages: 440
Release: 2017-02-17
Genre: Computers
ISBN: 1786461293

Over 90 practical, actionable recipes to automate, test, and manage your infrastructure quickly and effectively About 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 For This 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 configuration In Detail Infrastructure 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 approach This 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.

Terraform Cookbook

Terraform Cookbook
Author: Mikael Krief
Publisher: Packt Publishing Ltd
Total Pages: 360
Release: 2020-10-15
Genre: Computers
ISBN: 1800209622

Discover how to manage and scale your infrastructure using Infrastructure as Code (IaC) with Terraform Key Features Get up and running with the latest version of Terraform, v0.13 Design and manage infrastructure that can be shared, tested, modified, provisioned, and deployed Work through practical recipes to achieve zero-downtime deployment and scale your infrastructure effectively Book DescriptionHashiCorp Configuration Language (HCL) has changed how we define and provision a data center infrastructure with the launch of Terraform—one of the most popular and powerful products for building Infrastructure as Code. This practical guide will show you how to leverage HashiCorp's Terraform tool to manage a complex infrastructure with ease. Starting with recipes for setting up the environment, this book will gradually guide you in configuring, provisioning, collaborating, and building a multi-environment architecture. Unlike other books, you’ll also be able to explore recipes with real-world examples to provision your Azure infrastructure with Terraform. Once you’ve covered topics such as Azure Template, Azure CLI, Terraform configuration, and Terragrunt, you’ll delve into manual and automated testing with Terraform configurations. The next set of chapters will show you how to manage a balanced and efficient infrastructure and create reusable infrastructure with Terraform modules. Finally, you’ll explore the latest DevOps trends such as continuous integration and continuous delivery (CI/CD) and zero-downtime deployments. By the end of this book, you’ll have developed the skills you need to get the most value out of Terraform and manage your infrastructure effectively.What you will learn Understand how to install Terraform for local development Get to grips with writing Terraform configuration for infrastructure provisioning Use Terraform for advanced infrastructure use cases Understand how to write and use Terraform modules Discover how to use Terraform for Azure infrastructure provisioning Become well-versed in testing Terraform configuration Execute Terraform configuration in CI/CD pipelines Explore how to use Terraform Cloud Who this book is for This book is for developers, operators, and DevOps engineers looking to improve their workflow and use Infrastructure as Code. Experience with Microsoft Azure, Jenkins, shell scripting, and DevOps practices is required to get the most out of this Terraform book.

Terraform: Up & Running

Terraform: Up & Running
Author: Yevgeniy Brikman
Publisher: "O'Reilly Media, Inc."
Total Pages: 417
Release: 2019-09-06
Genre: Computers
ISBN: 149204685X

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

Getting Started with Bicep

Getting Started with Bicep
Author: Freek Berson
Publisher: Independently Published
Total Pages: 196
Release: 2021-07-07
Genre:
ISBN:

This book is your guide to mastering Bicep! It contains practical solutions and examples to help you jump start your journey towards Infrastructure as Code for Azure! Book Description Infrastructure as Code is crucial to becoming successful in the Azure Cloud. Azure Resource Manager allows you to create resources in Azure in a declarative way. For many years we have been using ARM Templates to declare resources in a JSON format. Although ARM Templates are very powerful, the implementation of the JSON language is hard to read, maintain and debug. Bicep, a Domain Specific Language, overcomes these issues by providing a transparent abstraction layer on top of ARM and ARM Templates. This significantly improves the authoring experience. Bicep is easy to understand at a glance and straightforward to learn regardless of your experience with other programming languages. The book starts with some history and background in Infrastructure as Code and ARM Templates. It continues by explaining Bicep and providing guidance on how to get started. After the introduction, you will start your journey by understanding the syntax of Bicep. You will start by learning the basics first and you will gradually dive deeper in the more advanced scenarios. The book also contains a dedicated chapter on a big real-world example which provides you with great insights on how to leverage Bicep for production usage. Part of this book is also the Bicep playground, visualizer and a PowerShell module for Bicep provided by the community. Sample code used in this book is available on a dedicated GitHub repository. What you will learn How to get started with the Bicep CLI and VSCode Extension Deploying Bicep files to Azure, including template specs Understanding the Bicep file structure How to use the basic concepts of variables, parameters, tags, decorators, expressions, and symbolic names Getting familiar with more advanced topics like dependencies, loops, conditions, target scopes, modules, and nesting Leveraging features like snippets, scaffolding, and linter that support you while authoring Bicep templates. Who this book is intended for DevOps engineers, developers, consultants, and Azure architects with or without experience in ARM Templates and infrastructure as code looking to get started with Bicep. Table of Contents 1 Why this book 2 What is project bicep 3 Getting started 4 Bicep file structure explained 5 Deploying bicep files to azure 6 Bicep syntax 7 Bicep playground and example code 8 Bicep visualizer 9 Template specs 10 Guest Chapter: Bicep PowerShell module 11 A real-world example 12 Alternatives to Bicep 13 Closing Notes 14 About the author

HashiCorp Infrastructure Automation Certification Guide

HashiCorp Infrastructure Automation Certification Guide
Author: Ravi Mishra
Publisher: Packt Publishing Ltd
Total Pages: 350
Release: 2021-07-15
Genre: Computers
ISBN: 1800560885

Leverage Terraform's capabilities to reuse code, write modules, automate deployments, and manage infrastructure state Key FeaturesPerform complex enterprise-grade infrastructure deployments using Terraform v1.0, the latest version of TerraformLearn to scale your infrastructure without introducing added deployment complexitiesUnderstand how to overcome infrastructure deployment challengesBook Description Terraform is a highly sought-after technology for orchestrating infrastructure provisioning. This book is a complete reference guide to enhancing your infrastructure automation skills, offering up-to-date coverage of the HashiCorp infrastructure automation certification exam. This book is written in a clear and practical way with self-assessment questions and mock exams that will help you from a HashiCorp infrastructure automation certification exam perspective. This book covers end-to-end activities with Terraform, such as installation, writing its configuration file, Terraform modules, backend configurations, data sources, and infrastructure provisioning. You'll also get to grips with complex enterprise infrastructures and discover how to create thousands of resources with a single click. As you advance, you'll get a clear understanding of maintaining infrastructure as code (IaC) in Repo/GitHub, along with learning how to create, modify, and remove infrastructure resources as and when needed. Finally, you'll learn about Terraform Cloud and Enterprise and their enhanced features. By the end of this book, you'll have a handy, up-to-date desktop reference guide along with everything you need to pass the HashiCorp Certified: Terraform Associate exam with confidence. What you will learnEffectively maintain the life cycle of your infrastructure using Terraform 1.0Reuse Terraform code to provision any cloud infrastructureWrite Terraform modules on multiple cloud providersUse Terraform workflows with the Azure DevOps pipelineWrite Terraform configuration files for AWS, Azure, and Google CloudDiscover ways to securely store Terraform state filesUnderstand Policy as Code using Terraform SentinelGain an overview of Terraform Cloud and Terraform EnterpriseWho this book is for This book is for experienced cloud engineers, DevOps engineers, system administrators, and solution architects interested in developing industry-grade skills with Terraform. You will also find this book useful if you want to pass the HashiCorp Certified: Terraform Associate exam. Basic command-line skills and prior knowledge of cloud environments and their services are required before getting started with this book.

Terraform in Action

Terraform in Action
Author: Scott Winkler
Publisher: Simon and Schuster
Total Pages: 604
Release: 2021-08-24
Genre: Computers
ISBN: 1638350310

"An outstanding source of knowledge for Terraform enthusiasts of all levels." - Anton Babenko, Betajob Terraform in Action shows you how to automate and scale infrastructure programmatically using the Terraform toolkit. Summary In Terraform in Action you will learn: Cloud architecture with Terraform Terraform module sharing and the private module registry Terraform security in a multitenant environment Strategies for performing blue/green deployments Refactoring for code maintenance and reusability Running Terraform at scale Creating your own Terraform provider Using Terraform as a continuous development/continuous delivery platform Terraform in Action introduces the infrastructure-as-code (IaC) model that lets you instantaneously create new components and respond efficiently to changes in demand. You’ll use the Terraform automation tool to design and manage servers that can be provisioned, shared, changed, tested, and deployed with a single command. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Provision, deploy, scale, and clone your entire stack to the cloud at the touch of a button. In Terraform, you create a collection of simple declarative scripts that define and manage application infrastructure. This powerful infrastructure-as-code approach automates key tasks like versioning and testing for everything from low-level networking to cloud services. About the book Terraform in Action shows you how to automate and scale infrastructure programmatically using the Terraform toolkit. Using practical, relevant examples, you’ll use Terraform to provision a Kubernetes cluster, deploy a multiplayer game, and configure other hands-on projects. As you progress to advanced techniques like zero-downtime deployments, you’ll discover how to think in Terraform rather than just copying and pasting scripts. What's inside Cloud architecture with Terraform Terraform module sharing and the private module registry Terraform security in a multitenant environment Strategies for performing blue/green deployments About the reader For readers experienced with a major cloud platform such as AWS. Examples in JavaScript and Golang. About the author Scott Winkler is a DevOps engineer and a distinguished Terraform expert. He has spoken multiple times at HashiTalks and HashiConf, and was selected as a HashiCorp Ambassador and Core Contributor in 2020. Table of Contents PART 1 TERRAFORM BOOTCAMP 1 Getting started with Terraform 2 Life cycle of a Terraform resource 3 Functional programming 4 Deploying a multi-tiered web application in AWS PART 2 TERRAFORM IN THE WILD 5 Serverless made easy 6 Terraform with friends 7 CI/CD pipelines as code 8 A multi-cloud MMORPG PART 3 MASTERING TERRAFORM 9 Zero-downtime deployments 10 Testing and refactoring 11 Extending Terraform by writing a custom provider 12 Automating Terraform 13 Security and secrets management

Getting Started with Terraform

Getting Started with Terraform
Author: Kirill Shirinkin
Publisher: Packt Publishing Ltd
Total Pages: 201
Release: 2017-07-31
Genre: Computers
ISBN: 1788628357

Build, Manage and Improve your infrastructure effortlessly. About This Book An up-to-date and comprehensive resource on Terraform that lets you quickly and efficiently launch your infrastructure Learn how to implement your infrastructure as code and make secure, effective changes to your infrastructure Learn to build multi-cloud fault-tolerant systems and simplify the management and orchestration of even the largest scale and most complex cloud infrastructures Who This Book Is For This book is for developers and operators who already have some exposure to working with infrastructure but want to improve their workflow and introduce infrastructure as a code practice. Knowledge of essential Amazon Web Services components (EC2, VPC, IAM) would help contextualize the examples provided. Basic understanding of Jenkins and Shell scripts will be helpful for the chapters on the production usage of Terraform. What You Will Learn Understand what Infrastructure as Code (IaC) means and why it matters Install, configure, and deploy Terraform Take full control of your infrastructure in the form of code Manage complete infrastructure, starting with a single server and scaling beyond any limits Discover a great set of production-ready practices to manage infrastructure Set up CI/CD pipelines to test and deliver Terraform stacks Construct templates to simplify more complex provisioning tasks In Detail Terraform is a tool used to efficiently build, configure, and improve the production infrastructure. It can manage the existing infrastructure as well as create custom in-house solutions. This book shows you when and how to implement infrastructure as a code practices with Terraform. It covers everything necessary to set up the complete management of infrastructure with Terraform, starting with the basics of using providers and resources. It is a comprehensive guide that begins with very small infrastructure templates and takes you all the way to managing complex systems, all using concrete examples that evolve over the course of the book. The book ends with the complete workflow of managing a production infrastructure as code—this is achieved with the help of version control and continuous integration. The readers will also learn how to combine multiple providers in a single template and manage different code bases with many complex modules. It focuses on how to set up continuous integration for the infrastructure code. The readers will be able to use Terraform to build, change, and combine infrastructure safely and efficiently. Style and approach This book will help and guide you to implement Terraform in your infrastructure. The readers will start by working on very small infrastructure templates and then slowly move on to manage complex systems, all by using concrete examples that will evolve during the course of the book.

AWS Automation Cookbook

AWS Automation Cookbook
Author: Nikit Swaraj
Publisher: Packt Publishing Ltd
Total Pages: 379
Release: 2017-11-24
Genre: Computers
ISBN: 1788392116

Automate release processes, deployment, and continuous integration of your application as well as infrastructure automation with the powerful services offered by AWS About This Book Accelerate your infrastructure's productivity by implementing a continuous delivery pipeline within your environment Leverage AWS services and Jenkins 2.0 to perform complete application deployments on Linux servers This recipe-based guide that will help you minimize application deployment downtime Who This Book Is For This book is for developers and system administrators who are responsible for hosting their application and managing instances in AWS. It's also ideal for DevOps engineers looking to provide continuous integration, deployment, and delivery. A basic understanding of AWS, Jenkins, and some scripting knowledge is needed. What You Will Learn Build a sample Maven and NodeJS Application using CodeBuild Deploy the application in EC2/Auto Scaling and see how CodePipeline helps you integrate AWS services Build a highly scalable and fault tolerant CI/CD pipeline Achieve the CI/CD of a microservice architecture application in AWS ECS using CodePipeline, CodeBuild, ECR, and CloudFormation Automate the provisioning of your infrastructure using CloudFormation and Ansible Automate daily tasks and audit compliance using AWS Lambda Deploy microservices applications on Kubernetes using Jenkins Pipeline 2.0 In Detail AWS CodeDeploy, AWS CodeBuild, and CodePipeline are scalable services offered by AWS that automate an application's build and deployment pipeline. In order to deliver tremendous speed and agility, every organization is moving toward automating an entire application pipeline. This book will cover all the AWS services required to automate your deployment to your instances. You'll begin by setting up and using one of the AWS services for automation – CodeCommit. Next, you'll learn how to build a sample Maven and NodeJS Application using CodeBuild. After you've built the application, you'll see how to use CodeDeploy to deploy the application in EC2/Autoscaling. You'll also build a highly scalable and fault tolerant continuous integration (CI)/continuous deployment (CD) pipeline using some easy-to-follow recipes. Following this, you'll achieve CI/CD for Microservices application and reduce the risk within your software development lifecycle. You'll also learn to set up an infrastructure using CloudFormation Template and Ansible, and see how to automate AWS resources using AWS Lambda. Finally, you'll learn to automate instances in AWS and automate the deployment lifecycle of applications.By the end of this book, you'll be able to minimize application downtime and implement CI/CD, gaining total control over your software development lifecycle. Style and approach This book takes a "How to do it" approach, providing with easy solutions to automate common maintenance and deployment tasks.

The Terraform Book

The Terraform Book
Author: James Turnbull
Publisher: James Turnbull
Total Pages: 332
Release: 2016-12-31
Genre: Computers
ISBN: 0988820250

A hands-on, introductory book about managing infrastructure with Terraform. Start small and then build on what you learn to scale up to complex infrastructure. Written for both developers and sysadmins. Focuses on how to build infrastructure and applications with Terraform. The book contains: Chapter 1: An Introduction to Terraform Chapter 2: Installing Terraform Chapter 3: Building our first application Chapter 4: Provisioning and Terraform Chapter 5: Collaborating with Terraform Chapter 6: Building a multi-environment architecture Chapter 7: Infrastructure testing Updated for Terraform 0.12!

Learning DevOps

Learning DevOps
Author: Mikael Krief
Publisher: Packt Publishing Ltd
Total Pages: 489
Release: 2019-10-25
Genre: Computers
ISBN: 1838648534

Simplify your DevOps roles with DevOps tools and techniques Key FeaturesLearn to utilize business resources effectively to increase productivity and collaborationLeverage the ultimate open source DevOps tools to achieve continuous integration and continuous delivery (CI/CD)Ensure faster time-to-market by reducing overall lead time and deployment downtimeBook Description The implementation of DevOps processes requires the efficient use of various tools, and the choice of these tools is crucial for the sustainability of projects and collaboration between development (Dev) and operations (Ops). This book presents the different patterns and tools that you can use to provision and configure an infrastructure in the cloud. You'll begin by understanding DevOps culture, the application of DevOps in cloud infrastructure, provisioning with Terraform, configuration with Ansible, and image building with Packer. You'll then be taken through source code versioning with Git and the construction of a DevOps CI/CD pipeline using Jenkins, GitLab CI, and Azure Pipelines. This DevOps handbook will also guide you in containerizing and deploying your applications with Docker and Kubernetes. You'll learn how to reduce deployment downtime with blue-green deployment and the feature flags technique, and study DevOps practices for open source projects. Finally, you'll grasp some best practices for reducing the overall application lead time to ensure faster time to market. By the end of this book, you'll have built a solid foundation in DevOps, and developed the skills necessary to enhance a traditional software delivery process using modern software delivery tools and techniques What you will learnBecome well versed with DevOps culture and its practicesUse Terraform and Packer for cloud infrastructure provisioningImplement Ansible for infrastructure configurationUse basic Git commands and understand the Git flow processBuild a DevOps pipeline with Jenkins, Azure Pipelines, and GitLab CIContainerize your applications with Docker and KubernetesCheck application quality with SonarQube and PostmanProtect DevOps processes and applications using DevSecOps toolsWho this book is for If you are a developer or a system administrator interested in understanding continuous integration, continuous delivery, and containerization with DevOps tools and techniques, this book is for you.