Best Docker Container Monitoring Tools - Free and open source

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
monitoring your Docker containers in your home lab or even a production environment is extremely important allowing you to gather performance related information key performance indicators that allow you to easily diagnose performance issues go about troubleshooting and ensure that business critical applications or self-hosted applications in your home lab are performing as you would expect today we're going to look at five Docker Monitoring Solutions that allow you to effectively monitor your Docker container Solutions and Docker workloads that you have running in your environment [Music] the First Tool in our list of Docker Monitoring Solutions is actually a solution that is built right into the docker command line and that is the docker stats command maybe this is a command that you either have not heard about before or you simply have just not used it from a Docker command line as mentioned we can issue the docker stats command and get quick and easy statistics and performance information regarding our Docker containers as you can see here what we have is a list of information reminds us of the Linux top command we're getting streaming information about our running containers including the container ID the name CPU percentage memory usage memory percentage net IO as well as block i o and the pids for our running containers so really useful information at a high level that gives us quick and easy access to that container performance information now if we exit back out and we go to dockerstats dash dash help we can see that we've got just a few options that we can use we can use dash dash all to pull not just the running containers information but it shows all of your containers you can also do a format string option to feed this into go templates to do some pretty interesting things as far as how we're presenting that information making it look good also if you notice when we issued the docker stats command our screen was blinking the terminal was blinking and that indicates that the docker stats command is continuously polling the container information if you only want it to retrieve a single snapshot just a one and done type thing you can just issue the no stream command and that just literally goes out at fetches the information and boom it presents it one time and that's it so that may be useful if you don't want to see the screen blinking you want to just get a snapshot of the performance information also we can do a dash dash no dash trunk keeps it from truncating the container ID so if you want to see this entire container ID you can issue the no trunk command so all in all Docker stats is a great tool to learn and to know for quick and easy Docker performance monitoring the next Docker monitoring Solution on the list is a solution called glances glances is an awesome command line tool that also provides a phenomenal web interface to get a lot more information than even what we can see with our Docker stats command the glances application is written in Python and it's actually deployed as a Docker container itself on on your Docker host once you deploy that Docker container you can easily navigate to the web Port that's exposed as part of the docker provisioning process and you can see streaming real-time information about all of the docker containers that you have running on your Docker host so let's take a look and see all of the information that glances is able to provide to get glances up and running it is a simple process of pulling down the container so I'm going to paste in the command that we need to run to set up the container and pull the image that is needed the container begins pulling down and just a moment we should have a running container as we can see we've got the glances container up and running so we're going to connect to this particular Port now we have the glances solution up and running and as you can see we already have a wealth of information one thing I really like about glances is that in a single location you have a dashboard of all of your information one thing I really like about glances is it allows you to see everything in one location so I can see information about my Docker container host such as the uptime of the container if I'm troubleshooting stability information I can take a quick glance at this information and I can see other information about my container host CPU overall CPU usage memory swap file usage Network disk IO and then as we can see here we've got even more information detailed information regarding the CPU memory Swap and load on our container hosts then as we drop down we see information about the containers themselves we can see which containers we have running their status their uptime CPU memory max memory IO Network information transmit receive and the entry point command that we are running with those various containers we also see the task information sorted by CPU consumption so we get an overall view of all of the tasks kind of like a Linux top command and this information is clickable so if I click I can actually sort by the column that I want to view so I can click CPU memory anything with the underline basically with the hyperlink there and that's the same up here with our container information I can click around around various information in my container view so glances is a really awesome dashboard of information that gives you a quick and easy way to in one place see all of the information regarding your container host as well as those containers that you have running in the environment the third Solution on our list of Docker Monitoring Solutions is one that I feel needs no introduction I've made a lot of other video content and blog posts about the solution and that is portaner pertainer is one of those solutions that is a no-brainer it allows you to quickly have time to Value when you are learning and getting up to speed with Docker containers but also with the advanced Docker administrator it allows you to do more than just monitor your Docker containers it allows you to interact with Docker configuration Administration role-based access control as well as other really nice security benefits pertainer gives you an incredible dashboard experience to manage configure and monitor your Docker environment pertainer gives you a wealth of information about your Docker containers as well as your container hosts as we can see the portainer dashboard is extremely fully featured with information about your environment at every turn we get an overview of the stacks the images the networks the containers volumes and gpus if we click into containers we immediately are presented with fully featured Rich statistics and information regarding the containers that are running in the environment we can see the state of the containers the image they are created from the date they were created the IP addresses that may be assigned the published ports as well as ownership of the container as you can see when we look at each container we have a set of quick actions if we hover over the quick actions we can click each of those and dive into further detail and information and this is great when we're looking at monitoring or troubleshooting a particular issue in the environment we can easily get a wealth of information from pertainer so we see logs we've got the inspect functionality we've got Docker stats that retainer also queries we can exec to the console of the container as well as attach console to The Container also if we look in the logs we we see we've got rich information from the log perspective we can download the logs we can view the logs from the ortainer dashboard directly when we inspect a container we have a really nice view that's collapsible by default in the pertainer dashboard we can click and expand any of these nodes inside the inspect view if we go back out to the containers view we can click these stats quick action button we are seeing the stats from Docker presented in pertainer as it queries in real time the performance data from the individual container that we are focused in on so this is really cool we can set the refresh rate as well how often we want pertainer to query the information if I navigate to another container that has more processes running we can see that we also get a wealth of information around the processes running inside the container and these are searchable as well so we can search for particular processes running in that specific container so this is really awesome from a monitoring perspective when we are taking a look at various things in the environment also I want to make mention that pertainer allows you to add additional Docker hosts so through the pertainer agent we can have a single installation of the pertainer dashboard then the Aging gets loaded on the other Docker container hosts in the environment so from a single dashboard you can troubleshoot monitor configure and administer your Docker container hosts from that single pane of glass pertainer dashboard the next monitoring solution that we want to mention is one that is extremely popular in the world of free and open source Monitoring Solutions and that is xavix xavix is well known as a powerful open source monitoring solution that extends far beyond just Docker environments in fact zabx can monitor kubernetes it can monitor Linux hosts Windows hosts Network performance application performance Cloud all of those things and many many others it's kind of a Swiss army knife as far as Monitoring Solutions are concerned zabix provides a wealth of information for your Docker container host as well as your Docker containers themselves and I have a Docker container host added to the environment we can click the dashboards and quickly get a good General overview of our Docker environment we've got a Docker containers graph that shows us which Docker containers are running which are pause stopped and the total number of containers we've also got a size graph so we can visually see the larger Docker containers smaller Docker containers we've got a memory graph we've got go routines and we've got images if I go back out though really we can start getting into the meat of the information that we want to pull in the grass view if I click the graphs view I have the ability to click an individual container that I have running in the environment so if I click one of the containers that I have running it will filter The View down to that particular container and we get a wealth of information from zavix so as you can see I've got a CPU usage I've got memory usage Network traffic one of the other things I really like about this is the ability to see historic data so not only can I filter down to just the last few minutes I can also go back and say I want to take a look at the past 12 hours or even longer I can look at the entire year if I want to so you you've got a lot of options there to really build some Trends on various containers perhaps if you're troubleshooting an issue and you want to go back historically and take a look and see what is going on with certain containers at certain times of day so this is a really great tool one of the things I like about xavix as well is it can monitor the host itself so if you suspect there's a global issue not just an issue with an individual container you can back out to looking at the container hosts itself and we can see things like Global CPU usage utilization and Docker itself you can take a look at the health of Docker including the images the memory the size Network traffic over the various interfaces that are configured on your Docker host total memory usage memory utilization looking at the processes running disk average wait time disk read and write rates even further information about disk utilization queue swap usage system load which this is a fantastic graph that you can Trend certain things or if you're troubleshooting various issues in the environment so Xanax is a great tool for monitoring Docker containers and your Docker container hosts the Final Solution on our list of monitoring Docker container Solutions is a solution known as check MK I recently covered check MK on a video talking about the best free and open source monitoring solution and application it provides a quick and easy way to get up to speed with Docker container monitoring and you can easily add a Docker container host and start streaming monitoring information from that container host about your individual Docker containers that you have running on that host and how it allows us to effectively monitor Docker container Solutions Tech MK is a great solution to monitor your Docker host as well as your Docker containers you have running in the environment one thing I like about checking K is how it classifies both the docker container hosts where you can easily see the metrics for your container host itself as well as another area that we can look and see individual container performance metric if I click on the docker container host you can see a wealth of information right off the bat all of the performance metrics that you would imagine would be key to understanding the current performance of your Docker container host Tech MK provides us in a really nice condensed View which I really like you can just easily you don't have to scroll and look flip between various Pages you've got everything in one View and they've got something called the purple meter that takes this information and places it in an easy to read bar graph that graphically displays this information so your eye can easily go to problem metric that you can key in on very quickly so that's that's very nice so you can see all of those things it does also in this view have General Docker information as you would expect running containers total containers running pause stopped as well as disk usage node info so you can get quick and easy alerting and monitoring on your Docker Daemon if that goes into a stop stake if we go back to monitoring and go to our Docker containers I've got one container added to monitoring I can click on this individual container and then we can drill into the Container metrics themselves for specific docker container you can see CPU utilization disk i o container status memory and the uptime of the container we can drill into these individually as well and get more detailed information regarding this individual metric and if I had more history would be able to see that as we scroll along we check in case a great solution that allows you to easily monitor your Docker environment keeping a check and an eye on those key performance indicators both of the docker hosts as well as those individual Docker containers so what do you guys think about my list of Docker Monitoring Solutions are there Solutions on this list that you currently use are there solutions that you would highly recommend in place of ones that I have mentioned after all this is just a list that I have put together I am by no means saying that there are no other Solutions out there that could even be better than some I've listed so please let us know in the comments what you are using well well I'm Brandon Lee I hope you've enjoyed this video hope you've learned something I hope it's given you guys some ideas about Monitoring Solutions that maybe you want to play around with in your lab environment please do like the video subscribe to the channel you guys stay safe out there keep on home labbing and I will see you guys soon [Music] thank you
Info
Channel: VirtualizationHowto
Views: 63,817
Rating: undefined out of 5
Keywords:
Id: zxAmqY63eJE
Channel Id: undefined
Length: 17min 45sec (1065 seconds)
Published: Thu Dec 29 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.