SYSREPO is a datastore for configuration and state data of Unix/Linux applications, which provides the following features:
- centralized repository of YANG-modeled configuration files and state data,
- simple (XPath -based) API for accessing the configuration from applications,
- startup, running and candidate datastores support,
- full transaction and concurrency support, conforming all ACID properties,
- automatic data consistency and constraints enforcement according to the YANG models,
- no single point of failure – applications do not need any other process to be running to access their configuration.
SYSREPO it is integrated with Netopeer 2 NETCONF server and can be easilly integrated into any other management agents (e.g. RESTCONF). This means that just by using sysrepo as the configuration storage, applications become remotely manageable via NETCONF out of the box.
Sysrepo consists of several components:
- sysrepo library - shared library, provides API for accessing the data in applications (northbound + southbound),
- sysrepo daemon - if running, can handle requests from applications and save some resources and processing time,
- sysrepo plugins daemon - for integration with services, that do not run as userspace daemons,
- sysrepoctl tool - for installing / uninstalling of YANG modules to sysrepo, enabling YANG features,
- sysrepocfg tool - for accessing / altering the configuration by local system administrators.