This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
services:paddles [2021/10/05 13:53] djgalloway |
services:paddles [2023/08/21 22:20] (current) zmc [Updating/Fixing Zombie Jobs] |
||
---|---|---|---|
Line 3: | Line 3: | ||
paddles is a very simple JSON-based API used to report teuthology test results. See https://github.com/ceph/paddles | paddles is a very simple JSON-based API used to report teuthology test results. See https://github.com/ceph/paddles | ||
- | The service runs on a baremetal host, [[hardware:infrastructure#pulpitofrontsepiacephcom|pulpito.front.sepia.ceph.com]] from ''/home/ubuntu''. | + | The service runs on a baremetal host, [[hardware:infrastructure#pulpitofrontsepiacephcom|pulpito.front.sepia.ceph.com]], deployed via the ceph-cm-ansible role: https://github.com/ceph/ceph-cm-ansible/tree/main/roles/paddles |
+ | It is operated by ''docker service'': https://docs.docker.com/engine/reference/commandline/service/, utilizing replication, health checks, and automatic rollbacks. | ||
===== Backups ===== | ===== Backups ===== | ||
The 'paddles' db is backed up daily by the [[services:backups#backupsh|backup.sh]] script on gitbuilder-archive. | The 'paddles' db is backed up daily by the [[services:backups#backupsh|backup.sh]] script on gitbuilder-archive. | ||
Line 11: | Line 12: | ||
===== Admin Tasks ===== | ===== Admin Tasks ===== | ||
- | ==== Starting/Restarting service ==== | + | ==== Stopping/Starting the service ==== |
<code> | <code> | ||
- | ssh ubuntu@paddles.front.sepia.ceph.com | + | ssh paddles.front.sepia.ceph.com |
- | sudo supervisorctl stop|stop|restart paddles | + | # Stopping |
+ | sudo docker service scale paddles=0 | ||
+ | # Starting | ||
+ | sudo docker service scale paddles=10 | ||
</code> | </code> | ||
Line 24: | Line 28: | ||
<code> | <code> | ||
ssh paddles.front.sepia.ceph.com | ssh paddles.front.sepia.ceph.com | ||
- | sudo docker exec -it $(docker ps | grep paddles | head -n 1 | awk '{ print $1 }') sh -c "pecan expire_jobs config.py -q 14 -r 30" | + | sudo docker exec -it $(sudo docker ps --filter "health=healthy" --filter "name=paddles" --format "{{.ID}}" | head -n1) sh -c "pecan expire_jobs config.py -q 14 -r 30" |
</code> | </code> | ||
Line 44: | Line 48: | ||
<code> | <code> | ||
ssh pulpito.front.sepia.ceph.com | ssh pulpito.front.sepia.ceph.com | ||
- | sudo su - ubuntu | + | sudo docker service update --image quay.io/ceph-infra/paddles:main paddles --force |
- | sudo supervisorctl stop paddles | + | |
- | cp -r paddles paddles.$(date -u +%F).backup | + | |
- | cd paddles | + | |
- | git pull | + | |
- | source virtualenv/bin/activate | + | |
- | python setup.py develop | + | |
- | deactivate | + | |
- | sudo supervisorctl start paddles | + | |
</code> | </code> |