The following is a transcript of the audio you can listen to in the player above.
Welcome to Briefings In Brief, an audio digest of IT news and information from the Packet Pushers, including vendor briefings, industry research, and commentary.
I’m Ethan Banks, it’s March 8, 2019, and here’s what’s happening. I had a briefing with Instana a few weeks ago.
Old School APM
The Instana folks reached out to me, because as a guest on the CloudCast earlier this year, I lamented that there are no application performance monitoring tools that correlate infrastructure with app performance in the cloud native era. Instana thought that wasn’t quite fair, and wanted to walk me through what they could do.
What is Instana, then? Maybe it’s key to look at what Instana is not. Instana is not old-school application performance management or APM. Many of the Instana folks came from that world, but traditional APM tools function most effectively with infrastructure that’s static. That is, you build out a network and servers and storage, and it’s likely to sit there for years. Applications aren’t likely to change much, either, with only occasional releases.
In that sort of environment, you can set up monitoring, and it works fine for a long time. You can build dependency trees, knowing they aren’t going to change much. And, you can keep up with the tweaks needed to the monitoring as infrastructure slowly evolves or new apps are rolled out.
Cloud Native Monitoring Challenges
Cloud native applications are not like this. Instead of a few large apps, you have many small apps (microservices) talking to each other to deliver a larger app to the business. These microservices are built programmatically, probably spun up by an orchestrator, and there’s a decent chance that orchestrator is Kubernetes.
And why is all of this happening? Because instead of quarterly or even annual software releases, application updates are being released all the time. Small changes are deployed to minimize risk, and done in a way that can be rolled back if there are problems. Therefore, new app instances are being spun up constantly. That means there’s new infrastructure to be monitored…constantly. No human can keep up with this infrastructure consumption model.
This is why old-school APM products don’t work effectively in a cloud-native environment.
Enter Instana. Instana is modern, automated application performance management. How do they do this? An agent sits on a host or in a container, and performs continuous real-time discovery and monitoring of all components. “But wait,” you say. “I have to install an agent? That doesn’t sound very automatic.” Right. Agent installation can be automated, too–when Kubernetes spins up a new instance, the Instana agent installs along with it.
What does this agent do? It monitors over 100 different technologies such as Docker, Java, Tomcat, Kafka, Cassandra, MongoDB, nodeJS, RabbitMQ, Lambda functions, and much more. The focus is on modern application stacks, and there’s a support matrix on Instana’s website.
One the agent is running, it starts discovery and data collection automatically. In the briefing, Instana showed me an agent installation. The agent then discovered Kubernetes and started monitoring a pod. That led to the discovery of Docker containers. Container monitoring led to discovery of processes. Monitoring processes led to discovery of JVM. That led to monitoring of Spring Boot App. And no human had to do anything to make all of that happen.
The data that is gathered by the agent is sent to a centralized spot for analysis, which is where the Instana magic happens. You get…
- Automatic distributed tracing. A user makes a request to an app, and the entire path that request takes is followed through the host, container, and process.
- Log event correlation. That is, log events being correlated with anomalies.
- Root cause analysis. RCA is presented as an incident of related events, all rolled up into a single actionable item. In the briefing, Instana showed me an example where 21 events were rolled up into a “container out of memory” incident.
There’s more you can do with Instana. For example, use EC2 tags to define an application, giving Instana the metadata it needs to automatically create an application performance dashboard. You can extend the built-in knowledge management rule set with your own rules. You can monitor your app delivery stack from different perspectives, including infrastructure, application, and website or user.
What Instana doesn’t do is monitor beyond the host. While it could tell you that the local NIC is dropping packets, Instana isn’t capable of monitoring a data center fabric, so don’t throw out your NPM just yet. And I’ll keep waiting for my super ultimate titanium-plated all-in-one monitoring tool with chrome tailpipes and flames on the side.
For More Information
If you think Instana could help with some monitoring challenges you’ve got, visit instana.com. The website has a lot more information, including pricing details.
That was Briefings in Brief from the Packet Pushers. For more IT podcasts, blogs and news created for engineers, visit packetpushers.net where you can subscribe for free. And for even more great information and to support us directly, become a member at ignition.packetpushers.net.