Book Image

Docker High Performance

By : Allan Espinosa
Book Image

Docker High Performance

By: Allan Espinosa

Overview of this book

<p>Docker is a portable container format that allows you to run code anywhere from your desktop to the cloud. The workflow around Docker makes development, testing, and deployment much easier and much faster. However, it’s essential that you know the best practices most techniques for optimization so Docker can help you deploy your application most effectively.</p> <p>This comprehensive guide will improve your Docker workflows and will ensure your application’s production environment runs smoothly. It starts with a short refresher on working with Docker, then you will learn how to take this basic knowledge to the next level by optimizing your Docker infrastructure and applications at scale. At the end of the book, we will put the concepts and everything you have learned about Docker’s features into practice by rolling out supplementary monitoring and troubleshooting instrumentation to your infrastructure. All of these things will ensure your application succeeds using Docker.</p>
Table of Contents (15 chapters)
Docker High Performance
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Collecting metrics to Graphite


To begin monitoring our Docker deployments, we must first set up an endpoint to send our monitored values to. Graphite is a popular stack for collecting various metrics. Its plaintext protocol is very popular because of its simplicity. Many third-party tools understand this simple protocol. Later, we will show you how easy it is to send data to Graphite after we finish setting it up.

Another feature of graphite is that it can render the data it gathers into graphs. We can then consolidate these graphs to build a dashboard. The dashboard we crafted in the end will show the various kinds of information that we need to monitor our Docker application.

In this section, we will set up the following components of Graphite to create a minimal stack:

  • carbon-cache: This is the Graphite component that receives metrics over the network. This implements the simple plaintext protocol described earlier. It can also listen to a binary-based protocol called the pickle protocol...