Ubuntu 22.04安装和配置Prometheus

在Ubuntu 22.04上安装和配置Prometheus来监控GitLab服务的详细步骤如下:

1. 安装Prometheus

1.1 添加Prometheus用户

为了安全性,创建一个专门用于运行Prometheus的用户:

sudo useradd --no-create-home --shell /bin/false prometheus
1.2 创建目录

创建Prometheus的相关目录:

sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus
1.3 下载Prometheus

下载最新的Prometheus二进制文件并解压:

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目录:

sudo mv prometheus /usr/local/bin/
sudo mv promtool /usr/local/bin/
1.4 配置文件和权限

将配置文件和控制脚本移动到适当的位置:

sudo mv prometheus.yml /etc/prometheus/
sudo mv consoles /etc/prometheus/
sudo mv console_libraries /etc/prometheus/

设置文件和目录的权限:

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服务文件:

sudo nano /etc/systemd/system/prometheus.service

添加以下内容:

[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:

sudo systemctl daemon-reload

启动并启用Prometheus服务:

sudo systemctl start prometheus
sudo systemctl enable prometheus

2. 安装并配置GitLab Exporter

2.1 下载并安装GitLab Exporter

下载GitLab Exporter并安装:

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/

创建配置目录:

sudo mkdir /etc/gitlab_exporter
2.2 配置GitLab Exporter

创建配置文件:

sudo nano /etc/gitlab_exporter/config.yml

添加以下内容,替换为你自己的GitLab地址和访问令牌:

---
gitlab:
  url: "https://gitlab.example.com"
  token: "your_access_token"

设置权限:

sudo chown -R prometheus:prometheus /etc/gitlab_exporter
2.3 创建Systemd服务文件

创建GitLab Exporter的Systemd服务文件:

sudo nano /etc/systemd/system/gitlab_exporter.service

添加以下内容:

[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:

sudo systemctl daemon-reload

启动并启用GitLab Exporter服务:

sudo systemctl start gitlab_exporter
sudo systemctl enable gitlab_exporter

3. 配置Prometheus

3.1 编辑Prometheus配置文件

编辑Prometheus的配置文件以添加GitLab Exporter作为数据源:

sudo nano /etc/prometheus/prometheus.yml

scrape_configs部分添加以下内容:

scrape_configs:
  - job_name: 'gitlab'
    static_configs:
      - targets: ['localhost:8080']

保存并退出编辑器,然后重新加载Prometheus配置:

sudo systemctl restart prometheus

4. 安装Grafana并配置监控面板

4.1 安装Grafana

首先,添加Grafana的APT存储库:

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服务:

sudo systemctl start grafana-server
sudo systemctl enable grafana-server
4.2 配置Grafana数据源
  1. 打开浏览器并访问Grafana(默认端口为3000):http://your_server_ip:3000
  2. 登录(默认用户名和密码均为admin,首次登录后会提示更改密码)。
  3. 添加Prometheus数据源:
    • 在Grafana主页,点击左侧菜单的“Configuration” (齿轮图标) -> “Data Sources” -> “Add data source”。
    • 选择“Prometheus”。
    • 在“URL”字段中输入Prometheus服务器地址,如http://localhost:9090
    • 点击“Save & Test”以确认数据源配置。
4.3 导入GitLab监控仪表盘
  1. 在Grafana主页,点击左侧菜单的“Create” -> “Import”。
  2. 在“Import via grafana.com”中,输入仪表盘ID(可以使用GitLab Exporter的官方仪表盘)。
  3. 点击“Load”,选择刚才配置的Prometheus数据源,点击“Import”。

通过这些步骤,你可以在Ubuntu 22.04上成功安装和配置Prometheus来监控GitLab服务,并使用Grafana进行可视化监控。

<think>嗯,用户这次的问题是关于在Ubuntu 22.04上在线安装dcgmi的具体步骤。这个需求很明确,用户应该是个系统管理员或开发者,正在配置GPU监控环境。 从用户引用的内容看,dcgmi其实是DCGM(Datacenter GPU Manager)的交互工具,属于NVIDIA数据中心工具链的一部分。用户特意强调“在线安装”,说明ta可能希望避免繁琐的离线编译流程。 有意思的是,用户引用的两段材料都提到了旧版本卸载的关键步骤,这在实际操作中确实容易忽略——残留的旧版文件常会导致冲突。特别是/lib/etc目录下的残留配置,我在其他NVIDIA工具安装时也遇到过类似问题。 安装流程需要特别注意两个技术细节:第一是cuda-drivers的依赖关系,新版DCGM对驱动版本有强制要求;第二是dcgm-exporter的端口冲突问题,默认的9400端口若被占用需要调整。这些在步骤里都做了标注。 考虑到用户后续可能的需求,补充了三个典型问题:安装验证涉及最常用的dcgmi discovery命令,配置优化指向了实用的exporter集成,而卸载流程则呼应了开头的清理步骤——形成完整闭环。这样既解决当前问题,又预判了后续操作链。 最后关于版本更新的提示很重要,因为Ubuntu 22.04的官方源更新滞后,实际使用中确实需要手动添加NVIDIA源获取最新补丁。 </think>以下是在 Ubuntu 22.04 系统上在线安装 DCGM(含 `dcgmi` 命令行工具)的标准步骤,已整合关键操作注意事项: --- ### **安装前提** 1. **系统更新** ```bash sudo apt update && sudo apt upgrade -y ``` 2. **启用 NVIDIA 官方源** ```bash sudo apt install -y software-properties-common sudo add-apt-repository -y contrib sudo add-apt-repository -y non-free ``` --- ### **步骤 1:清除旧版本(关键!)** ```bash # 彻底卸载旧版驱动 DCGM sudo apt-get purge -y "*nvidia*" datacenter-gpu-manager sudo rm -rf /etc/dcgm /var/log/dcgm /var/run/dcgm* /usr/lib/x86_64-linux-gnu/libdcgm* ``` > 📌 **注意**:此步可避免驱动冲突,引用中强调残留文件会导致安装失败[^1]。 --- ### **步骤 2:安装依赖驱动** ```bash # 自动安装最新版 NVIDIA 驱动 sudo ubuntu-drivers autoinstall sudo reboot # 必须重启生效 ``` --- ### **步骤 3:安装 DCGM** ```bash # 添加 NVIDIA 仓库钥匙 distribution=$(. /etc/os-release;echo $ID$VERSION_ID | sed -e 's/\.//g') curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list # 安装 DCGM sudo apt update sudo apt install -y datacenter-gpu-manager ``` --- ### **步骤 4:启动服务** ```bash sudo systemctl enable nvidia-dcgm sudo systemctl start nvidia-dcgm sudo systemctl status nvidia-dcgm # 验证状态应为 active ``` --- ### **步骤 5:验证安装** ```bash dcgmi discovery -l # 列出所有 GPU dcgmi dmon -e 203,204 -c 5 # 监控 GPU 温度/功耗 5 次 ``` > ✅ 成功输出示例: > ``` > GPU 0 41°C 89 W > GPU 1 38°C 76 W > ``` --- ### **常见问题排查** | 问题现象 | 解决方案 | |--------------------------|-----------------------------------| | `dcgmi` 命令未找到 | 执行 `sudo apt install -y dcgm` | | 服务启动失败 | 检查日志 `journalctl -u nvidia-dcgm` | | GPU 未识别 | 运行 `nvidia-smi` 验证驱动状态 | > 💡 **原理说明**:DCGM 通过内核模块 `nvidia-dcgm` 直接采集 GPU 性能数据,需与驱动深度集成[^2]。 --- ### **扩展工具(可选)** 安装监控面板: ```bash sudo apt install -y dcgm-exporter prometheus # 集成 Prometheus 监控栈 ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MonkeyKing.sun

对你有帮助的话,可以打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值