Application Performance Monitoring in a Docker World
Here comes the BOOM!
Everybody is talking about Docker. If they are not already using docker, chances are they are planning to start using it soon. Applications are moving to docker and cloud environments and introduce some interesting challenges when it comes to application performance monitoring. If you have some of the following challenges monitoring an application running on Docker or a Hybrid Cloud environment, SteelCentral AppInternals can help.
Number of objects
People and monitoring tools were used to thinking with servers as the base object, it made sense, there was a limited number of servers around. Even with virtualization there was still a limited number of hosts and guests. Switching to containers you have a LOT of objects which can be overwhelming to people and monitoring tools.
I used to love those diagrams showing an application chart or machines in the system. Now there are so many objects and they interact with other objects. Dependency diagrams became very complex, it’s like a spaghetti of dependencies. Monitoring complex application and understanding all these dependencies is quite challenging and in many cases these dependency maps are very difficult to understand or use.
Adding machines to support increased demand used to be a lengthier process which allowed for preparation. Infrastructure is now built to scale, increase or decrease the number of containers according to demand. Monitoring should start and stop automatically as containers get created/removed and start/stop on a regular basis. Just a small example—alerting on a server going down used to be important but does not make sense in an environment that is elastic.
Objects don’t stay on place, they move around. Object can move around to accommodate maintenance or a failure. Objects can also move around to better balance a load or move between data centers and geographies. In many cases it is done automatically without the need for human intervention. What do you do when you need to monitor application components that are a moving target?
Now you see it, now you don’t! Servers used to be there forever, virtual machines existed for a long period of time, containers have a much shorter lifetime. Keeping information about application components that are gone, and looking for that information when you troubleshoot a problem, is an interesting challenge.
You add all these challenges together what do you get?
Do you have one or many of these challenges? Try out SteelCentral AppInternals for free today!
Special thanks to Jon Hodgson for the inspiration and letting me use images from his fantastic presentation.