Uptime-Kuma 一個(gè)花哨的開源監(jiān)控工具
簡(jiǎn)介
uptime-kuma[1]是一個(gè)花里胡哨的自托管的網(wǎng)站監(jiān)控工具,支持的功能也相對(duì)較為豐富:
- 監(jiān)控HTTP(s)/TCP/HTTP(s)關(guān)鍵字/Ping/DNS記錄/推送/Steam Game Server等的正常運(yùn)行時(shí)間。
- 支持豐富的通知渠道,如通過Telegram、Discord、Gotify、Slack、Pushover、電子郵件 (SMTP) 和70 多種通知服務(wù)發(fā)送通知,請(qǐng)單擊此處查看完整列表[2]。
- 20 second intervals.
- [支持多種語言](https://github.com/louislam/uptime-kuma/tree/master/src/languages “l(fā)anguages”)
- 簡(jiǎn)潔的狀態(tài)頁(yè)面
- Ping圖
- 監(jiān)控證書信息
安裝
監(jiān)控服務(wù)與被監(jiān)控的服務(wù)不要放在同一個(gè)服務(wù)器上,并且監(jiān)控服務(wù)重要等級(jí)應(yīng)該為level 1.
- 通過docker安裝
mkdir -pv /data/uptimekuma && cd /data
docker run -d --restart=always -p 3001:3001 -v `pwd`/uptimekuma:/app/data --name uptime-kuma louislam/uptime-kuma:1.11.4
- 通過docker-compose安裝
version: "3"
services:
uptime-kuma:
image: louislam/uptime-kuma:1.11.4
container_name: "uptime-kuma"
restart: "always"
volumes:
- "/etc/localtime:/etc/localtime"
- "/data/uptimekuma:/app/data"
ports:
- "3001:3001"
配置nginx(可選)
server {
server_name status.devopsman.cn;
listen 443 ssl http2;
ssl_certificate /www/server/panel/vhost/nginx/ssl/status.devopsman.cn_bundle.pem;
ssl_certificate_key /www/server/panel/vhost/nginx/ssl/status.devopsman.cn.key;
location / {
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
access_log /www/wwwlogs/uptimestatus.log main;
error_log /www/wwwlogs/uptimestatus.error.log;
}
相比blackbox_exporter去監(jiān)控url和證書,這個(gè)就顯示很高大上了,花里胡哨的監(jiān)控面板,有時(shí)候更適合給領(lǐng)導(dǎo)和客戶欣賞;
告警
安全性
API
最后值得提的就是,這個(gè)作品的作者目前還沒有支持通過API進(jìn)行監(jiān)控項(xiàng)等信息的意向,通過在github上issue中得知,估計(jì)就是貢獻(xiàn)代碼,也不會(huì)采用,如果支持了API,那么就可以通過自動(dòng)化的方式進(jìn)行便捷式管理了。不過自己可以實(shí)現(xiàn)哦
參考資料
[1]uptime-kuma: https://github.com/louislam/uptime-kuma
[2]notifications: https://github.com/louislam/uptime-kuma/tree/master/src/components/notifications
[3]uptimerobot: https://uptimerobot.com/