Hands-Free Agent Deployments using Kubernetes
Air-Date January 17, 2019
Run time: 60 minutes
You’ll walk away with:
-An overview of the Kubernetes operator framework
-A guided tour through an automated agent instrumentation using the Kubernetes operator framework
-Best practices and insightful advice based on AppDynamics customers’ experience
Also, tune in to hear more about our new cluster monitoring capabilities based on this technology.
Resources - coming soon
There will be a GitHub repo available in the next few weeks, please be sure to check back.
A: We'll be making it available in a few weeks via our Official GitHub site with full instructions and source code. One of the reasons for this is that it's extensible and there are likely additional features and tweaks that people want to make.
Q: When referring to "Hands-Free Agent Deployments using Kubernetes", is this referring to the hands-free installation of the Machine and App Agent on Linux machines using the Kubernetes framework or just on Kubernetes machines and deployed applications?
A: It’s on Linux machines. When we roll out dynamic instrumentation for .NET workloads, it will still only be on Linux for now. This particular session was about App Agents but we can also deploy Machine Agents through the Cluster Agent. However, there is no dynamic instrumentation of the Machine Agent because it is our image.
A: No - If you switch to the cluster agent, you do not need the extension.
A: Yes, the agent will supercede the MA extension.
A: The agent always runs in a single namespace, but it can be configured to monitor the entire cluster or 1-n namespaces.
A: Yes, the agent can monitor all or selected namespaces.
A: Assuming you are referring to a Controller, right now, an instance of the Cluster Agent is tied to a Controller but this is where the operator comes in. If you send a custom resource spec to the operator with another Controller, it will create a new instance of the Cluster Agent that will talk to the other Controller. That's one of the things that the operator makes transparent.
A: No, we're not looking into Sidecar because our agents are instrumented in the actual JVM of the application. That being said, there are customers who use Init containers as a way of staging agents appropriately so they can be pulled into containers dynamically. We've talked about that approach in other webinars.
A: We are planning to do some ingestion of Prometheus metrics, but Horizontal Pod Autoscaler is something that would be part of the scope of the Cluster Agent. It's on the list of specialized workers that track metrics. We do have plans and we’ll talk more about that shortly.
A: The current implementation of the Cluster Agent does not affect the presentation of tiers on flowmaps, etc. The metrics are collected for active containers and it is possible to go back in time to see non-running containers. In the next iteration of the agent, when it is integrated into the product, the UI will show only active nodes for the selected timeframe.
A: Yes. This instance of the Cluster Agent is configured to look for Linux Java processes, find the ID, and attach. This session is about Java but we’re looking at a similar approach for .NET and Node.js
A: Currently, one cluster reports to one Controller.
A: Yes. Reach out to let us know if you’re interested.
A: We want to develop this together WITH you so we can open up opportunities for how people instrument and monitor applications.