| Apache ACE > Index > Documentation > User Documentation > Overview of ACE components |
Apache ACE consists of a number of components, which can be deployed more-or-less independently.

ACE consists of several components, distributed over a number of nodes in the network. The image above shows the most elaborate situation, consisting of five nodes, each running their part of some functionality of ACE.
The system has the following nodes,
The nodes together have the following components,
Given this information, it might also be useful to compare this with the Software Architecture.
TODO create more professional looking images
The three topologies below are just examples; you can take (almost) any component, and drop it somewhere in your network, all components are intended to be distributed.
Unable to render embedded object: File (topology-singleserver.jpg) not found.
In the case of a single server, the OBR and the required server components are deployed on one system, and all target nodes connect to that one. This is the scenario that Getting Started with the File Based Server uses.
Unable to render embedded object: File (topology-offline.jpg) not found.
This scenario can be used in the case of a service engineer who takes his laptop to a machine to be serviced. Assuming that these devices do not have internet connectivity (for cost- or security reasons), the engineer loads up his laptop with the most recent situation from the server (this will happen automatically), and later connect it to the machine. The machine will get its new software, and upload its logs to the service laptop; the logs will later be synced back to the server.
Unable to render embedded object: File (topology-firewalled.jpg) not found.
In this scenario, the administration is done on the 'big bad internet', but the server on the internet only contains metadata. The actual code is located in the OBR's behind the firewall; here, we also see the distribution possiblities.
Software provisioning is the main task of ACE. The provisioning components are responsible for determining the set of bundles to be deployed to a given target, creating a deployment package, and feeding the deployment package to the Deployment Admin.
TODO show the components of the provisioning mechanism, and where they operate. Remember to point out that the gateway contains separate bundles, but there is also an integrated management agent.
TODO create a child page that describes the provisioning part in more detail
ACE contains a logging and reporting facility. This mechanism allows a target to send back logging information to the server, and allows the storing of arbitrary key-value pairs.
The logging mechanism is extensible with extra logging information. The basic implementation will log framework events (e.g., starting and stopping of bundles), and deployment events.

TODO create a child page that shows what the logging is about, and how to add your own logging to the mechanism.