Rucio Operations and WebUI Development
Project Summary:
Dates
September 2022 - March 2023
Participant
George Matthews
Objectives
Get Graduate to perform Rucio maintenance, check metrics, on board users
Improve Rucio - Work towards replacing the VM Rucio with K8S deployed Rucio
Ensure new WebUI is Multi-VO capable
Work Done
Knowledge of User creation
With this knowledge and use in M-VO Rucio found an issue
Used monitoring to keep Rucio running at a high percentage of the time
Onboarded self to a VO
Installed and configured ArgoCD for GitOps K8S workflows
Installed and configured Vault for cluster secret management
Wrote documentation for using vault with applications to ensure secrets are injected correctly
Converted functional test script to a K8S deployable cronjob
Investigated using Rucio daemons to automate the cronjob (possible but require Rucio 1.30 or later)
Got OLD webUI (mostly) working
Made WebUI 2.0 from the GSoC student Multi-VO capable
Found bug that caused DDoS attack from Rucio WebUI on Server, and put in a fix
Investigating and working on getting Multi-VO FTS delegation script
Learned new architecture for WebUI that meant a whole re-write
Deployed Multi-VO fix for new architecture WebUI
Original Project Proposal
Group | Data Services |
Project name | Rucio Operation and WebUI development |
Project LM | Timothy Noble |
Project code/Task | STAK00024 02.03 (maybe specific EGI code to be set up) |
Other resources | Rucio Developers at CERN, Data Services group. Potential for travel to: CERN and/or Rucio-related workshops funding is available through the project. |
Project Summary | Rucio is a distributed data management service that is utilised by ATLAS and CMS experiments at CERN to manage the huge volumes of data. At RAL we have a Rucio instance that is designed to facilitate data management for many smaller experiments. This Multi-Experiment Rucio requires additional development on top of the baseline development work so that features that are designed for Rucio (usually deployed for a single experiment) can function correctly for the Multi-Experiment Rucio deployment. This project is to work on a newly developed WebUI for the Rucio software that will complement the current CLI, which will lower the barrier for entry to use Rucio. The ‘WebUI 2.0’ is currently being reworked by the Rucio developers at CERN, and RAL will ensure it is Multi-Experiment optimised. As well as the development work on the WebUI, routine Rucio Service management jobs will also be undertaken, which will include ensuring the service is running normally, processing tickets, interacting with users, troubleshooting any operational issues, and updating the Rucio instance. |
Project Outputs | · Multi-Experiment capable Rucio WebUI (committed to project github) · Documentation on the code, setup and deployment of the Multi-Experiment Rucio WebUI · Deployment of the Multi-Experiment capable Rucio WebUI on the RAL instance of Rucio. |
Skills and Expertise graduate will gain | · Python and WebUI development work
· Experience testing and deploying their code onto a production service.
· Experience working as part of a large international collaboration.
· Knowledge of the use and management of Rucio, as well as the software that integrates with Rucio (e.g. FTS)
· Operational experience in maintaining a service
· Development of WebUI elements
· Knowledge of PostgreSQL databases.
|
Exit plan when Graduate moves to different project | Documentation, plans and details of any unfinished development are to be passed on to the Rucio Service manager. The WebUI element is an existing feature therefore there is no additional work beyond the current Rucio service management. |