oc whoami -t
oc get route -n openshift-monitoring | grep -i prometheus
curl -ks -H 'Authorization: Bearer 0za4LjX9xPcqDjhWaufkgcQGo4grqA7ws4zvHrqgfY4' 'https://prometheus-k8s-openshift-monitoring.apps.ocp4.cp4d.com/api/v1/query?query=ALERTS' | python -m json.tool
curl -X 'POST' -ks -H 'Authorization: Bearer 0za4LjX9xPcqDjhWaufkgcQGo4grqA7ws4zvHrqgfY4' 'https://prometheus-k8s-openshift-monitoring.apps.ocp4.cp4d.com/api/v2/admin/tsdb/snapshot' | python -m json.tool
{
"error": "Admin APIs are disabled",
"message": "Admin APIs are disabled",
"code": 14
}
oc -n openshift-monitoring patch prometheus k8s \
--type merge --patch '{"spec":{"enableAdminAPI":true}}'
oc describe po prometheus-k8s-1 | grep -i admin
--web.enable-admin-api
curl -X 'POST' -ks -H 'Authorization: Bearer 0za4LjX9xPcqDjhWaufkgcQGo4grqA7ws4zvHrqgfY4' 'https://prometheus-k8s-openshift-monitoring.apps.ocp4.cp4d.com/api/v2/admin/tsdb/snapshot'
| python -m json.tool
{
"name": "20210512T162601Z-33415dbd315ae6af"
}
- The default folder is
/prometheus/snapshots/
but you can find the data folder by finding the --storage.tsdb.path config in your deployment.
curl -X 'POST' -ks -H 'Authorization: Bearer 0za4LjX9xPcqDjhWaufkgcQGo4grqA7ws4zvHrqgfY4' 'https://prometheus-k8s-openshift-monitoring.apps.ocp4.cp4d.com/api/v1/admin/tsdb/snapshot' | python -m json.tool
oc -n openshift-monitoring exec -it prometheus-k8s-0 -c prometheus -- /bin/sh -c "ls /prometheus/snapshots/20210512T162601Z-33415dbd315ae6af"
oc project openshift-monitoring
oc rsync prometheus-k8s-0:/prometheus/snapshots/ /home/prometheus