From: Tom Hughes Date: Tue, 26 Jan 2021 18:30:43 +0000 (+0000) Subject: Add backup script for prometheus X-Git-Url: https://git.openstreetmap.org/chef.git/commitdiff_plain/5f4e541fce6e3ece45edcf8b391edd3fc330ce38 Add backup script for prometheus --- diff --git a/cookbooks/backup/templates/default/expire.cron.erb b/cookbooks/backup/templates/default/expire.cron.erb index a635d3358..dc4f7e15e 100644 --- a/cookbooks/backup/templates/default/expire.cron.erb +++ b/cookbooks/backup/templates/default/expire.cron.erb @@ -2,7 +2,7 @@ # DO NOT EDIT - This file is being maintained by Chef -for prefix in chef-server chef-repository chef-git forum git lists munin osm-blog osm-donate osmf-crm osmf-ledgersmb wiki-wiki.osmfoundation.org osqa otrs sotm svn switch2osm trac wiki-board.osmfoundation.org wiki-dwg.osmfoundation.org wiki-mwg.osmfoundation.org wiki-wiki.openstreetmap.org +for prefix in chef-server chef-repository chef-git forum git lists munin osm-blog osm-donate osmf-crm osmf-ledgersmb wiki-wiki.osmfoundation.org osqa otrs prometheus sotm svn switch2osm trac wiki-board.osmfoundation.org wiki-dwg.osmfoundation.org wiki-mwg.osmfoundation.org wiki-wiki.openstreetmap.org do /usr/local/bin/expire-backups --days=3 --weeks=3 --months=3 /store/backup $prefix done diff --git a/cookbooks/prometheus/recipes/server.rb b/cookbooks/prometheus/recipes/server.rb index e4689dbf1..7e4f4b2bf 100644 --- a/cookbooks/prometheus/recipes/server.rb +++ b/cookbooks/prometheus/recipes/server.rb @@ -257,3 +257,10 @@ end apache_site "prometheus.openstreetmap.org" do template "apache.erb" end + +template "/etc/cron.daily/prometheus-backup" do + source "backup.cron.erb" + owner "root" + group "root" + mode "750" +end diff --git a/cookbooks/prometheus/templates/default/backup.cron.erb b/cookbooks/prometheus/templates/default/backup.cron.erb new file mode 100644 index 000000000..3273aac61 --- /dev/null +++ b/cookbooks/prometheus/templates/default/backup.cron.erb @@ -0,0 +1,19 @@ +#!/bin/sh + +# DO NOT EDIT - This file is being maintained by Chef + +T=$(mktemp -d -t -p /var/tmp prometheus.XXXXXXXXXX) +D=$(date +%Y-%m-%d) +B=prometheus-$D.tar.gz + +mkdir $T/prometheus-$D + +ln -s /var/lib/prometheus/alertmanager $T/prometheus-$D/alertmanager +ln -s /var/lib/grafana $T/prometheus-$D/grafana + +export RSYNC_RSH="ssh -ax" + +nice tar --create --dereference --directory=$T prometheus-$D | nice gzip --rsyncable -9 > $T/$B +nice rsync --preallocate --fuzzy $T/$B backup::backup + +rm -rf $T