Book Image

DevOps Automation Cookbook

By : Michael Duffy
Book Image

DevOps Automation Cookbook

By: Michael Duffy

Overview of this book

<p>There has been a recent explosion in tools that allow you to redefine the delivery of infrastructure and applications, using a combination of automation and testing to deliver continuous deployment. DevOps has garnered interest from every quarter, and is rapidly being recognized as a radical shift, as large as the Agile movement for the delivery of software.</p> <p>This book takes a collection of some of the coolest software available today and shows you how to use it to create impressive changes to the way you deliver applications and software. It tackles the plethora of tools that are now available to enable organizations to take advantage of the automation, monitoring, and configuration management techniques that define a DevOps-driven infrastructure.</p> <p>Starting off with the fundamental command-line tools that every DevOps enthusiast must know, this book will guide you through the implementation of the Ansible tool to help you facilitate automation and perform diverse tasks. You will explore how to build hosts automatically with the creation of Apt mirrors and interactive pre-seeds, which are of the utmost importance for Ubuntu automation. You will also delve into the concept of virtualization and creating and manipulating guests with ESXi. Following this, you will venture into the application of Docker; learn how to install, run, network, and restore Docker containers; and also learn how to build containers in Jenkins and deploy apps using a combination of Ansible, Docker, and Jenkins. You will also discover how to filter data with Grafana and the usage of InfluxDB along with unconventional log management. Finally, you will get acquainted with cloud infrastructure, employing the Heroku and Amazon AWS platforms.</p> <p>By tackling real-world issues, this book will guide you through a huge variety of tools, giving new users the ability to get up and running and offering advanced users some interesting recipes that may help with existing issues.</p>
Table of Contents (19 chapters)
DevOps Automation Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Viewing historical resource usage with SAR


The tools that we have looked at so far are fantastic to analyze problems that are present now; but what about when you need to look at issues that occurred in the past? For that you can use the System Activity Report (SAR) tool. Using the sar tool, you will be able to look back over a period of time and see how the server has been running.

This recipe will demonstrate how to install and use the sysstat tools; thus, allowing you to examine historical system statistics.

Getting ready

For this recipe, you will need either a Debian or Red Hat based server.

How to do it…

Let's take a look at how to install and use sysstat, also allowing you to examine historical SAR:

  1. Install the sysstat package using the following command for a Debian-based distribution:

    $ sudo apt-get install sysstat
    

    We can also use the following command for a RHEL-based distribution:

    $ sudo yum install sysstat
    
  2. Edit the /etc/default/sysstat file with your favorite text editor and change the following value from:

    ENABLED="false"
    

    To:

    ENABLED="true"
    
  3. Restart the sysstat service using the following command:

    $ sudo service sysstat restart
    
  4. By default, sar stats are collected every 10 minutes. The data is collected using a simple cron job configured within /etc/cron.d/sysstat. This job can be amended to collect the data as frequently as you require.

  5. Use the following command to view basic CPU statistics, including wait times:

    sar -u
    

    This should produce the following output:

    Tip

    Note that most sar commands can also produce output in real time by adding a duration and repetition, much the same as the vmstat and iostat commands. For instance, sar -u 1 30 will display the basic CPU statistics every second for 30 seconds.

  6. Use the following command to view the available memory statistics:

    sar -r
    

    This should produce an output that looks similar to the following screenshot:

  7. Seeing the IO stats for individual block devices can be helpful when tracking down performance issues. You can use the following command to view these statistics with sar:

    sar -b
    

    This will produce an output similar to the following screenshot: