Uptime-Kuma 一個花哨的開源監(jiān)控工具
簡介
uptime-kuma[1]是一個花里胡哨的自托管的網(wǎng)站監(jiān)控工具,支持的功能也相對較為豐富:
- 監(jiān)控HTTP(s)/TCP/HTTP(s)關(guān)鍵字/Ping/DNS記錄/推送/Steam Game Server等的正常運(yùn)行時間。
- 支持豐富的通知渠道,如通過Telegram、Discord、Gotify、Slack、Pushover、電子郵件 (SMTP) 和70 多種通知服務(wù)發(fā)送通知,請單擊此處查看完整列表[2]。
- 20 second intervals.
- [支持多種語言](https://github.com/louislam/uptime-kuma/tree/master/src/languages “l(fā)anguages”)
- 簡潔的狀態(tài)頁面
- Ping圖
- 監(jiān)控證書信息
安裝
監(jiān)控服務(wù)與被監(jiān)控的服務(wù)不要放在同一個服務(wù)器上,并且監(jiān)控服務(wù)重要等級應(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和證書,這個就顯示很高大上了,花里胡哨的監(jiān)控面板,有時候更適合給領(lǐng)導(dǎo)和客戶欣賞;
告警
安全性
API
最后值得提的就是,這個作品的作者目前還沒有支持通過API進(jìn)行監(jiān)控項(xiàng)等信息的意向,通過在github上issue中得知,估計就是貢獻(xiàn)代碼,也不會采用,如果支持了API,那么就可以通過自動化的方式進(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/