What is the Controls Configuration Service?
The Controls Configuration Service is a key component in CERN’s data driven accelerator Control System. Based around a central database, the CCS stores configuration data covering all aspects of the Controls system, from hardware modules and their drivers, to the corresponding software devices and their relations, addressing and communication aspects, access control, exposure of operational interfaces and high-level configurations such as for logging and monitoring. The service also provides a range of user interfaces and APIs enabling a large and diverse user community to configure all of the different aspects of controls for CERN’s entire accelerator complex.
How is the Controls Configuration Service made?
At the core of the Controls Configuration Service is a relational database used to ensure a global coherency across the many different aspects of the Control system. This is complemented by various Java server processes based on the Spring framework, REST APIs based on the Spring Cloud stack, and an advanced Web application (using Angular) to visualise and edit the various data. DevOps plays an important role, with development pipelines based on GitLab, Docker, Jenkins and Ansible with MONIT.