The following terms are used throughout this site and refer to RHQ specific features or architecture.
A resource is anything that is inventoried into RHQ. Resources represent actual running entities in the environment. Examples include the operating system running on a machine, a web server (each application deployed into the server would also be their own resources), hardware devices running on the machine (such as a network adapter or CPU), and individual pieces of another resource (such as a table or user in a database).
A resource may be referred to as "inventoried" or an "inventoried resource" once it has been discovered and imported into RHQ.
A resource type provides information to RHQ on the capabilities of an inventoried resource. More generally, it indicates "what the resource is". A resource type is defined by a plugin; this is the means through which they are introduced into the RHQ platform. The resource type contains information on what can be done to resources of its type, such as configuration properties that may be specified, operations that may be invoked, or package types that may be discovered as belonging to the resource.
Resource types are hierarchical in nature. In other words, a resource type may be defined as a child of another resource type. For example, the resource type that corresponds to a database table would be defined as a child of the database resource type itself.
The RHQ platform is another name for the RHQ server and all agents running against it.
The RHQ server is the central point of the RHQ platform. The web-based user interface and database store are both used by the server to provide the bulk of the platform's user accessible features.
The RHQ agent is a small application that runs on each machine that should be connected to the RHQ server. The agent itself provides the communication mechanisms for talking back with the server as well as the plugin container in which plugins are loaded and run. More importantly, the agent runs the plugins that provide the details on what resources will be discovered on that particular machine as well as managing the connection to them.
RHQ itself is strictly a platform; it does not contain specific handling of any particular resource types. All of the specific usage of RHQ is done through the use of plugins. There are a number of core plugins provided by RHQ and open APIs allow custom plugins to be developed based on the specific needs at hand.