ATLAS JEDI instances
Operating systems and python versions
We are currently running ALMA9 instances with python3.11
Our JEDI nodes have the aliases atlas-jedi-<2 digit number>.cern.ch, running from 00 to 08.
Full installation guide can be found under: https://panda-wms.readthedocs.io/en/latest/installation/jedi.html. The objective of this wiki is just to give an overview of the ATLAS production instances.
Python virtual environment
System env variable: VIRTUAL_ENV
The PanDA code will be under: /opt/panda/lib/python3.11/site-packages/pandajedi
Installing and updating the code
The first time you install the code, you will want to bring in all atlasprod dependencies to install e.g. cx_oracle and the Rucio client:
/opt/panda/bin/pip install panda-jedi[atlasprod]
In order to install just the latest JEDI code from github:
/opt/panda/bin/pip install --no-deps --force-reinstall git+https://github.com/PanDAWMS/panda-jedi.git
The environment for systemd services has to be passed in a new format. The environment file is /etc/sysconfig/panda_jedi_env.
The systemd service unit file is /etc/systemd/system/panda_jedi.service
The very first time after setting up a machine, you need to enable the services.
systemctl enable panda_jedi.service
You can also start/stop/restart the service like:
systemctl start panda_jedi.service
systemctl stop panda_jedi.service
systemctl restart panda_jedi.service
Systemd will not print anything out to the console during a start. Instead you need to query the output by running:
systemctl status panda_jedi.service
Here you will find information, for example if the DB Schema check was passed.
If there are issues starting the service, you can get additional information using journalctl.
journalctl -xeu panda_jedi.service
Logs and log rotation
Logs are under /var/log/panda.
Log rotate running times are now handled by systemd timers. You can see the time using this command:
systemctl list-timers logrotate
NEXT LEFT LAST PASSED UNIT ACTIVATES
Tue 2023-06-27 09:14:58 CEST 16h left Mon 2023-06-26 16:12:08 CEST 4min 52s ago logrotate.timer logrotate.service
1 timers listed.
Pass --all to see loaded but inactive timers, too.