Terraform: Up and Running

Writing Infrastructure as Code

Terraform: Up and Running

Terraform has emerged as 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, and Azure. This hands-on book is the fastest way to get up and running with Terraform. Gruntwork co-founder Yevgeniy (Jim) Brikman walks you through dozens of code examples that demonstrate how to use Terraform’s simple, declarative programming language to deploy and manage infrastructure with just a few commands. Whether you’re a novice developer, aspiring DevOps engineer, or veteran sysadmin, this book will take you from Terraform basics to running a full tech stack capable of supporting a massive amount of traffic and a large team of developers. Compare Terraform to other IAC tools, such as Chef, Puppet, Ansible, and Salt Stack Use Terraform to deploy server clusters, load balancers, and databases Learn how Terraform manages the state of your infrastructure and how it impacts file layout, isolation, and locking Create reusable infrastructure with Terraform modules Try out advanced Terraform syntax to implement loops, if-statements, and zero-downtime deployment Use Terraform as a team, including best practices for writing, testing, and versioning Terraform code

Terraform: Up & Running

Writing Infrastructure as Code

Terraform: Up & Running

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

Achieving DevOps

A Novel About Delivering the Best of Agile, DevOps, and Microservices

Achieving DevOps

Ben is stuck. A development lead with a strong vision for how the intersection of development and operations at his office can be improved, he can’t help but feel overwhelmed and discouraged by common problems such as slow turnaround time, rushed and ineffective handover documentation, mounting technical debt, and a lagging QA process. What steps should Ben take to build the momentum needed to create positive changes within his company? In this unique business novel by Dave Harrison and Knox Lively, two DevOps professionals with years of diverse experience in the industry, you follow Ben as he solves work frustrations in order to adopt Agile, DevOps, and microservices architectures for his organization. Achieving DevOps addresses the “Now what?” moment many DevOps professionals face on their journey. The story provides you with the knowledge you need to navigate the internal political waters, build management support, show measurable results, and bring DevOps successfully into your organization. Come away with practical lessons and timeless business concepts. You’ll know how to effect change in a company from the bottom up, gain support, and instill a pattern of progressively building on success. Experience Ben’s progress vicariously in Achieving DevOps and bridge the gap between inspiration and the implementation of your own DevOps practices. Who This Book Is For Those serving as change agents who are working to influence and move their organizations toward a DevOps approach to software development and deployment: those working to effect change from the bottom up such as development leads, QA leads, project managers, and individual developers; and IT directors, CTOs, and others at the top of an organization who are being asked to lend their support toward DevOps implementation efforts

The Terraform Book

The Terraform Book

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!

Getting Started with Terraform

Getting Started with Terraform

Build, combine, and launch infrastructure in a fast, secure, and effective manner 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 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 production infrastructure. It can manage 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 complete management of infrastructure with Terraform, starting with the basics of using providers and resources. This book 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. It finishes with the complete workflow of managing a production infrastructure as code – this is achieved with the help of version control and continuous integration. At the end of this book, you will be familiar with advanced techniques such as multi-provider support and multiple remote modules. Style and approach This book focuses on providing the practical skills required to make full use of Terraform. It will take the readers slowly from very small infrastructure templates to the managing complex systems, all by using concrete examples, evolving over the course of the book.

Effective DevOps with AWS

Implement continuous delivery and integration in the AWS environment, 2nd Edition

Effective DevOps with AWS

Scale and maintain outstanding performance in your AWS-based infrastructure using DevOps principles Key Features Implement continuous integration and continuous deployment pipelines on AWS Gain insight from an expert who has worked with Silicon Valley's most high-profile companies Implement DevOps principles to take full advantage of the AWS stack and services Book Description The DevOps movement has transformed the way modern tech companies work. Amazon Web Services (AWS), which has been at the forefront of the cloud computing revolution, has also been a key contributor to the DevOps movement, creating a huge range of managed services that help you implement DevOps principles. Effective DevOps with AWS, Second Edition will help you to understand how the most successful tech start-ups launch and scale their services on AWS, and will teach you how you can do the same. This book explains how to treat infrastructure as code, meaning you can bring resources online and offline as easily as you control your software. You will also build a continuous integration and continuous deployment pipeline to keep your app up to date. Once you have gotten to grips will all this, we'll move on to how to scale your applications to offer maximum performance to users even when traffic spikes, by using the latest technologies, such as containers. In addition to this, you'll get insights into monitoring and alerting, so you can make sure your users have the best experience when using your service. In the concluding chapters, we'll cover inbuilt AWS tools such as CodeDeploy and CloudFormation, which are used by many AWS administrators to perform DevOps. By the end of this book, you'll have learned how to ensure the security of your platform and data, using the latest and most prominent AWS tools. What you will learn Implement automatic AWS instance provisioning using CloudFormation Deploy your application on a provisioned infrastructure with Ansible Manage infrastructure using Terraform Build and deploy a CI/CD pipeline with Automated Testing on AWS Understand the container journey for a CI/CD pipeline using AWS ECS Monitor and secure your AWS environment Who this book is for Effective DevOps with AWS is for you if you are a developer, DevOps engineer, or you work in a team which wants to build and use AWS for software infrastructure. Basic computer science knowledge is required to get the most out of this book.

Implementing Modern DevOps

Enabling IT organizations to deliver faster and smarter

Implementing Modern DevOps

Help your organization join the DevOps revolution About This Book Helps you skill up your DevOps knowledge without a strong set of prerequisites Deliver continuously improved software by showcasing the most advanced tools and techniques Acquire a deeper insight into implementing DevOps in your organization and deliver results from day 1 Who This Book Is For This book is written for engineers and companies that want to learn the minimum set of required technologies and processes to be successful in the DevOps world. This book also targets system administrators, developers, and IT professionals who would like to employ DevOps techniques and best practices to manage IT infrastructures or would like to acquire the necessary skills needed to work in DevOps teams. What You Will Learn Master development best practices. Understand how the Agile Delivery Methodology helps you ensure accuracy and quality. Analyze branching strategies such as branch creation, merging, and synchronization. Learn to automate builds to deploy and deliver code faster and more often Explore testing frameworks and how to automate testing Learn to put specific metrics in place to measure ROI of DevOps and monitor logs and events in a system In Detail This book follows a unique approach to modern DevOps using cutting-edge tools and technologies such as Ansible, Kubernetes, and Google Cloud Platform. This book starts by explaining the organizational alignment that has to happen in every company that wants to implement DevOps in order to be effective, and the use of cloud datacenters in combination with the most advanced DevOps tools to get the best out of a small team of skilled engineers. It also delves into how to use Kubernetes to run your applications in Google Cloud Platform, minimizing the friction and hassle of maintaining a cluster but ensuring its high availability. By the end of this book, you will be able to realign teams in your company and create a Continuous Delivery pipeline with Kubernetes and Docker. With strong monitoring in place, you will also be able to react to adverse events in your system, minimizing downtime and improving the overall up-time and stability of your system. Style and approach This book takes a step-by-step practical approach to the implementation of DevOps. This book will teach you how to enable IT organizations to deliver faster and smarter through a unique approach using Code-Build-Test-Release-Configure-Monitor (CBTRCM).

Linux Administration Cookbook

Insightful recipes to work with system administration tasks on Linux

Linux Administration Cookbook

Over 100 recipes to get up and running with the modern Linux administration ecosystem Key Features Understand and implement the core system administration tasks in Linux Discover tools and techniques to troubleshoot your Linux system Maintain a healthy system with good security and backup practices Book Description Linux is one of the most widely used operating systems among system administrators,and even modern application and server development is heavily reliant on the Linux platform. The Linux Administration Cookbook is your go-to guide to get started on your Linux journey. It will help you understand what that strange little server is doing in the corner of your office, what the mysterious virtual machine languishing in Azure is crunching through, what that circuit-board-like thing is doing under your office TV, and why the LEDs on it are blinking rapidly. This book will get you started with administering Linux, giving you the knowledge and tools you need to troubleshoot day-to-day problems, ranging from a Raspberry Pi to a server in Azure, while giving you a good understanding of the fundamentals of how GNU/Linux works. Through the course of the book, you’ll install and configure a system, while the author regales you with errors and anecdotes from his vast experience as a data center hardware engineer, systems administrator, and DevOps consultant. By the end of the book, you will have gained practical knowledge of Linux, which will serve as a bedrock for learning Linux administration and aid you in your Linux journey. What you will learn Install and manage a Linux server, both locally and in the cloud Understand how to perform administration across all Linux distros Work through evolving concepts such as IaaS versus PaaS, containers, and automation Explore security and configuration best practices Troubleshoot your system if something goes wrong Discover and mitigate hardware issues, such as faulty memory and failing drives Who this book is for If you are a system engineer or system administrator with basic experience of working with Linux, this book is for you.