.. _clixon_backend: .. sectnum:: :start: 7 :depth: 3 ******* Backend ******* .. image:: backend1.jpg :width: 100% The backend daemon is the central component in the Clixon architecture. It consists of a main module and a number of dynamically loaded plugins. The backend has four APIs: *configuration* An XML file read at startup, possibly amended with `-o` options. *Internal interface / IPC* A NETCONF socket to frontend clients. This is by default a UNIX domain socket but can also be an IPv4 or IPv6 TCP socket but with limited functionality. *Datastores* XML (or JSON) files storing configuration. The three main datastores are `candidate`, `running` and `startup`. A user edits the candidate datastore, commits the changes to running which triggers callbacks in plugins. *Application* Backend plugins configure the base system with application-specific APIs. These API:s depend on how the underlying system is configured, examples include configuration files or a socket. Note that a user typically does not access the datastores directly, it is possible to read, but write operations should not be done, since the backend daemon in most cases uses a datastore cache. Command-line options ==================== The backend have the following command-line options: -h Help -D Debug level -f Clixon config file -E Extra configuration directory -l