|
|||||||
|
Hyperic HQ
The Hyperic HQ server is a distributed J2EE application that runs on top of the open source JBoss Application Server. It is written in Java and portable C code and it runs on Linux, Windows, Solaris, OSX, and HPUX.
The overall structure of the HQ server is shown below:

Internal to the HQ server, the responsibilities shown in the above diagram are subdivided among several subsystems. Each subsystems encapsulates a group of related HQ features. The current set of HQ subsystems is described below.
Provides the necessary functionality for storage and retrieval of all inventory items in the HQ system.
Authenticates HQ user logins via an LDAP repository, Microsoft Active Directory, any SQL data store, or its own data repository.
Processes incoming auto-discovery reports from HQ agents. Manages the approval process for merging auto-discovery data into HQ master inventory. Maintains the auto-discovery scan schedule.
Handles incoming measurement data from HQ agents. Provides routines to query collected data from the HQ repository and correlate it among resources. Responsible for firing events for inbound measurement reports which are used by the HQ alerting engine to determine if alert criteria have been met.
The HQ server can contact the agents to execute control actions on behalf of end-users.
Operates the HQ event bus which serves as the central messaging bus for all the monitoring, inventory, and control events that occur in the HQ environment. Manages the triggers and actions that HQ uses to implement its alerting and alert escalation functionality.
When the HQ server is clustered, the High Availability subsystem manages distributed object caches and ensures data consistency across the cluster using a lightweight broadcast messaging framework among all the members of the cluster.
Spanning across the subsystems, the HQ Server API aggregates all the subsystem-specific functionality under one umbrella, providing a simple programmatic interface to all HQ features. The HQ GUI and HQ Shell are built on top of the HQ Server API.
For more in-depth architectural information: