DevOps For The Desperate

Author: Bradley Smith
Publisher: No Starch
Pages: 176
ISBN: 978-1718502482
Print: 1718502486
Kindle: B09M82VY43
Audience: Developers working in DevOps
Rating: 4.5
Reviewer: Kay Ewbank

Subtitled 'A hands-on survival guide, this book aims to provide software engineers and developers with the basics necessary to thrive in a modern application stack.

The aim is that by the end of the book readers will know how to implement Infrastructure as code (IaC) and configuration management (CM), along with being familiar with containerization, continuous integration and delivery (CI/CD) pipelines, and the rest of the DevOps alphabet soup.



The book is split into three parts, starting with a look at infrastructure as code, configuration management, security and administration. This part starts with chapters on setting up a virtual machine, and using Ansible to manage passwords, users and groups. Bradley Smith then moves on to using Ansible to configure SSH and controlling user commands with sudo, and this part of the book ends with a chapter on automating and testing a host-based firewall. Throughout the book the descriptions are interspersed with the commands you actually need to use, and examples of the output you'll get back.


Part Two of the book covers 'containerization' and deploying modern applications. The first chapter looks at how to containerize an application with Docker, starting with what Docker is and why it's useful, and going on to how to install and configure it. The process of putting an application into Docker is the heart of the chapter, followed by a look at other Docker client commands, and ending with how to test the container.

Kubernetes gets its turn next, with a high-level overview followed by a good in-depth look at Kubernetes Workload Resources - pods, replica sets, stateful sets and so on. There's a detailed look at deploying the sample application you created in the Docker chapter, with instructions for how to review the Kubernetes manifests then creating a deployment and services. The chapter ends with a look at testing the deployment and services.

This part of the book ends with a chapter on deploying code that looks at the role of CI/CD in modern application stacks, and how to set up and manage your own pipeline.

Part Three of the book covers observability and troubleshooting. The chapter on observability looks at the monitoring options using the monitoring of the sample application to show how it works. The chapter then moves on to metrics and includes a short primer on PromQL, the query language built into Prometheus that can be used to query metric data.

The book ends with a good chapter on troubleshooting where Smith considers various problem scenarios - high memory usage, hostname resolution failure, connection refused and so on.

This is a very useful book. It looks at the most common elements of DevOps and how to make practical use of them. It can't take a novice and turn out a senior DevOps engineer, but it would give any competent developer a good grasp of how to use the tools commonly found in DevOps. Recommended.

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.


Grokking Machine Learning

Author: Luis G. Serrano
Publisher: Manning
Date: December 2021
Pages: 512
ISBN: 978-1617295911
Print: 1617295914
Kindle: B09LK7KBSL
Audience: Python developers interested in machine learning
Rating: 5
Reviewer: Mike James
Another book on machine learning - surely we have enough by now?

Assembly x64 Programming

Author: Mike McGrath
Publisher: Easy Steps
Date: November 2021
Pages: 192
ISBN: 978-1840789522
Print: 1840789522
Kindle: ‎B09FTNN4P5
Audience: Developers wanting to learn assembler
Rating: 5
Reviewer: Harry Fairhead
Assembler, why would you want to learn that!

More Reviews

Last Updated ( Tuesday, 17 January 2023 )