以下是在Ubuntu上为GitLab设置监控与告警的常见方法:
安装Prometheus
sudo apt-get update && sudo apt-get install prometheus
编辑配置文件 /etc/prometheus/prometheus.yml,添加GitLab监控目标:
scrape_configs:
- job_name: 'gitlab'
static_configs:
- targets: ['your_gitlab_server_address:9100'] # 确保GitLab已安装Node Exporter
启动服务并验证:
sudo systemctl restart prometheus
curl http://your_gitlab_server_address:9090/api/v1/targets # 检查连接状态
安装Grafana
sudo apt-get install grafana
访问 http://localhost:3000,添加Prometheus数据源,创建监控面板(如CPU、内存使用率)。
设置告警规则
在Prometheus中创建 alerts.yml 文件,定义规则(示例:CPU使用率>80%告警):
groups:
- name: gitlab_alerts
rules:
- alert: GitLabHighCPU
expr: node_cpu_seconds_total{job="gitlab"} > 0.8 for: 1m
labels:
severity: warning
annotations:
summary: "High CPU Usage on GitLab"
description: "CPU usage exceeds 80% for 1 minute"
加载规则并重启Prometheus:
sudo promtool reload alerts.yml
启用内置指标
编辑 /etc/gitlab/gitlab.rb,启用监控功能:
gitlab_rails['gitlab_metrics_enabled'] = true
gitlab_runner['metrics_enabled'] = true
global['monitoring_enabled'] = true
执行 sudo gitlab-ctl reconfigure 重启服务。
创建监控项目
在GitLab中新建“Monitoring”项目,通过“Settings → Metrics and profiling → Self monitoring”开启自监控,可查看基础资源使用图表。
alertmanager.yml 中配置接收方信息。prometheus-node-exporter以暴露监控指标:sudo apt-get install prometheus-node-exporter
以上方案可根据实际环境选择组合使用,Prometheus+Grafana适合需要可视化与灵活告警的场景,内置监控则适合快速搭建基础监控体系。