配置prometheus
docke-compsoe.yml prometheus 增加配置
command:
- ‘–config.file=/etc/prometheus/prometheus.yml’
- ‘–storage.tsdb.path=/prometheus’
- ‘–web.console.libraries=/usr/share/prometheus/console_libraries’
- ‘–web.console.templates=/usr/share/prometheus/consoles’
- ‘–web.external-url=prometheus’
重启docker-compose
docker-compose restart prometheus
nginx配置
location /prometheus{
proxy_pass http://localhost:9090;
}
拷贝grafana配置文件
docker cp grafana:/etc/grafana/grafana.ini ./grafana/grafana.ini
配置 grafana
注:打开docket-compose.yml 找到grafana节点
volumes:
- grafana_data:/var/lib/grafana
- ./grafana/provisioning/:/etc/grafana/provisioning/
- /root/prometheus/grafana/grafana.ini:/etc/grafana/grafana.ini
打开grafana.ini,修改
root_url = %(protocol)s://%(domain)s:%(http_port)s/grafana
重启grafana
docker-compose restart grafana
配置nginx
location /grafana {
rewrite ^/grafana/(.*) /$1 break;
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
}
修改grafana密码
docker exec -it grafana bash
cd /usr/share/grafana/bin
./grafana-cli admin reset-admin-password admin123
exit
遇到的坑
但如果你仅仅修改了某个job_name(而没有修改ip),比如把orderreorder改为orderreorder-bak,那么grafana界面中的singlestat panel将不能正确显示,显示“Only queries that return single…”
解决方案
首先停止prometheus服务,传入–web.enable-admin-api参数手动运行
curl -X POST -g 'http://localhost:9090/prometheus/api/v1/admin/tsdb/delete_series?match[]={job=orderreorder-bak"}'