Although I am more generally asking why an agent is needed at all.
Why not
simply pull from the remote EAP node using a user that is setup for
monitoring? That would reduce the software installation and maintenance
overhead to just a configuration overhead.
Can you clarify? Are you asking, "Why not have a single agent running
"somewhere" and have it pull from a collection of remote EAP nodes?"
In fact, this Hawkular Agent does support this kind of deployment (the Agent can be told
to monitor N remote servers whether or not those remote servers are running on the same
machine or somewhere else on the network).
One issue with something like that is - most customers do not want to expose their remote
management endpoints past the localhost boundary. In that case, this means the agent must
be at least installed on the same machine as the EAP node itself even if it isn't
running in the same JVM. But now they have to install two things - the agent and the
WildFly - albeit on the same machine. If that is the case, why not just bundle the agent
together with WildFly so you have a single distribution we can call "instrumented
WildFly" that a user has to worry about installing? You run your instrumented Wildfly
server normally but now you automatically get inventory/metrics uploaded and stored to
CloudForms which can then immediately begin to manage it. No need to install and run a
separate agent process.
I would like to ask Thomas Heute to reply to this thread as he has more details about why
we want it this way - he's dealt alot more with user requirements and the like.
Thomas?