Adjusting services through dashboard metrics
Our services are not static. Swarm will reschedule them with each release, when a replica fails, when a node becomes unhealthy, or as a result of a myriad of other causes. We should do our best to provide Swarm as much information as we can. The better we describe our desired service state, the better will Swarm do its job.
We won't go into all the information we can provide through docker service create
and docker service update
commands. Instead, we'll concentrate on the --reserve-memory
argument. Later on, you can apply similar logic to --reserve-cpu
, --limit-cpu
, --limit-memory
, and other arguments.
We'll observe the memory metrics in Grafana and update our services accordingly.
Please click on the Memory Usage per Container (Stacked)
graph in Grafana and choose View
. You'll see a screen with a zoomed graph that displays the memory consumption of the top twenty containers. Let's filter the metrics by selecting prometheus
from the Service Name...