在CentOS上设置GitLab的监控与告警可以通过多种工具和方法实现,以下是一些常用的方法和步骤:
wget https://github.com/prometheus/prometheus/releases/download/v2.30.3/prometheus-2.30.3.linux-amd64.tar.gz
tar xvfz prometheus-2.30.3.linux-amd64.tar.gz
cd prometheus-2.30.3.linux-amd64
prometheus.yml
文件,添加以下内容:scrape_configs:
- job_name: 'gitlab'
static_configs:
- targets: ['gitlab.example.com:9090']
wget https://dl.grafana.com/oss/release/grafana-8.2.0.linux-amd64.tar.gz
tar xvfz grafana-8.2.0.linux-amd64.tar.gz
cd grafana-8.2.0
alerts.yml
,定义告警条件和通知方式,例如: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 Server"
description: "CPU usage on GitLab server is above 80%"
echo "[alertmanager]
name=Alertmanager
baseurl=http://repo.prometheus.io/yum/redhat/$releasever/alertmanager/
enabled=1
gpgcheck=1
gpgkey=https://repo.prometheus.io/RPM-GPG-KEY-prometheus" | sudo tee /etc/yum.repos.d/alertmanager.repo
sudo yum install alertmanager
alertmanager.yml
文件,设置接收报警的地址。gitlab.rb
中,启用指标端点:gitlab_rails['metrics_port'] = 9090
gitlab_rails['metrics_token'] = 'your_custom_token'
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
.gitlab-ci.yml
文件,添加监控任务。stages:
- monitor
monitor_job:
stage: monitor
script:
- curl -s http://gitlab.example.com/api/v4/projects/:project_id/metrics | jq .
npm install -g gitlab-ci-dashboard
gitlab-ci-dashboard --gitlab gitlab.example.com --token your_token --projectsFile ./file.json
top
、htop
、vmstat
、free
、netstat
、ss
、dstat
等命令实时监控系统资源使用情况。