在Ubuntu 22.04上安装和配置Prometheus来监控GitLab服务的详细步骤如下:
1. 安装Prometheus
1.1 添加Prometheus用户
为了安全性,创建一个专门用于运行Prometheus的用户:
sh
sudo useradd --no-create-home --shell /bin/false prometheus
1.2 创建目录
创建Prometheus的相关目录:
sh
sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus
1.3 下载Prometheus
下载最新的Prometheus二进制文件并解压:
sh
cd /tmp
curl -LO https://github.com/prometheus/prometheus/releases/download/v2.35.0/prometheus-2.35.0.linux-amd64.tar.gz
tar -xvf prometheus-2.35.0.linux-amd64.tar.gz
cd prometheus-2.35.0.linux-amd64
将Prometheus的二进制文件移动到/usr/local/bin
目录:
sh
sudo mv prometheus /usr/local/bin/
sudo mv promtool /usr/local/bin/
1.4 配置文件和权限
将配置文件和控制脚本移动到适当的位置:
sh
sudo mv prometheus.yml /etc/prometheus/
sudo mv consoles /etc/prometheus/
sudo mv console_libraries /etc/prometheus/
设置文件和目录的权限:
sh
sudo chown -R prometheus:prometheus /etc/prometheus
sudo chown -R prometheus:prometheus /var/lib/prometheus
sudo chown prometheus:prometheus /usr/local/bin/prometheus
sudo chown prometheus:prometheus /usr/local/bin/promtool
1.5 创建Systemd服务文件
创建Prometheus的Systemd服务文件:
sh
sudo nano /etc/systemd/system/prometheus.service
添加以下内容:
ini
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target
[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \
--config.file /etc/prometheus/prometheus.yml \
--storage.tsdb.path /var/lib/prometheus/ \
--web.console.templates=/etc/prometheus/consoles \
--web.console.libraries=/etc/prometheus/console_libraries
[Install]
WantedBy=multi-user.target
保存并退出编辑器,然后重新加载Systemd:
sh
sudo systemctl daemon-reload
启动并启用Prometheus服务:
sh
sudo systemctl start prometheus
sudo systemctl enable prometheus
2. 安装并配置GitLab Exporter
2.1 下载并安装GitLab Exporter
下载GitLab Exporter并安装:
sh
cd /tmp
curl -LO https://github.com/prometheus/client_golang/releases/download/v1.11.0/prometheus-1.11.0.linux-amd64.tar.gz
tar -xvf prometheus-1.11.0.linux-amd64.tar.gz
cd prometheus-1.11.0.linux-amd64
sudo mv gitlab_exporter /usr/local/bin/
创建配置目录:
sh
sudo mkdir /etc/gitlab_exporter
2.2 配置GitLab Exporter
创建配置文件:
sh
sudo nano /etc/gitlab_exporter/config.yml
添加以下内容,替换为你自己的GitLab地址和访问令牌:
yaml
---
gitlab:
url: "https://gitlab.example.com"
token: "your_access_token"
设置权限:
sh
sudo chown -R prometheus:prometheus /etc/gitlab_exporter
2.3 创建Systemd服务文件
创建GitLab Exporter的Systemd服务文件:
sh
sudo nano /etc/systemd/system/gitlab_exporter.service
添加以下内容:
ini
[Unit]
Description=GitLab Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/gitlab_exporter \
--config.file /etc/gitlab_exporter/config.yml
[Install]
WantedBy=multi-user.target
保存并退出编辑器,然后重新加载Systemd:
sh
sudo systemctl daemon-reload
启动并启用GitLab Exporter服务:
sh
sudo systemctl start gitlab_exporter
sudo systemctl enable gitlab_exporter
3. 配置Prometheus
3.1 编辑Prometheus配置文件
编辑Prometheus的配置文件以添加GitLab Exporter作为数据源:
sh
sudo nano /etc/prometheus/prometheus.yml
在scrape_configs
部分添加以下内容:
yaml
scrape_configs:
- job_name: 'gitlab'
static_configs:
- targets: ['localhost:8080']
保存并退出编辑器,然后重新加载Prometheus配置:
sh
sudo systemctl restart prometheus
4. 安装Grafana并配置监控面板
4.1 安装Grafana
首先,添加Grafana的APT存储库:
sh
sudo apt-get install -y software-properties-common
sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
sudo apt-get install -y apt-transport-https
sudo apt-get update
sudo apt-get install -y grafana
启动并启用Grafana服务:
sh
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
4.2 配置Grafana数据源
- 打开浏览器并访问Grafana(默认端口为3000):
http://your_server_ip:3000
- 登录(默认用户名和密码均为
admin
,首次登录后会提示更改密码)。 - 添加Prometheus数据源:
- 在Grafana主页,点击左侧菜单的"Configuration" (齿轮图标) -> "Data Sources" -> "Add data source"。
- 选择"Prometheus"。
- 在"URL"字段中输入Prometheus服务器地址,如
http://localhost:9090
。 - 点击"Save & Test"以确认数据源配置。
4.3 导入GitLab监控仪表盘
- 在Grafana主页,点击左侧菜单的"Create" -> "Import"。
- 在"Import via grafana.com"中,输入仪表盘ID(可以使用GitLab Exporter的官方仪表盘)。
- 点击"Load",选择刚才配置的Prometheus数据源,点击"Import"。
通过这些步骤,你可以在Ubuntu 22.04上成功安装和配置Prometheus来监控GitLab服务,并使用Grafana进行可视化监控。