官方项目地址:prometheus-pve-exporter

环境要求

环境要求:python3.9及以上

安装方式可以选docker和python,这里教程以python为例

安装Python3.9

安装python3.9,pve主机下操作。

安装编译环境工具:

apt install -y build-essential libssl-dev zlib1g-dev libbz2-dev \
 	libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev \
 	libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev

下载解压python3.9源码:

wget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tgz
tar -xzf Python-3.9.6.tgz && cd Python-3.9.6

配置python,编辑并安装:

./configure --enable-optimizations --prefix=/usr/local/python3.9.6

make -j$(nproc) && make install

验证安装:

/usr/local/python3.9.6/bin/python3.9 --version

出现如下结果安装完成

创建软连接,并配置环境变量:

ln -s /usr/local/python3.9.6/bin/python3.9 /usr/local/bin/python3
ln -s /usr/local/python3.9.6/bin/pip3 /usr/local/bin/pip3

export PATH=/usr/local/python3.9.6/bin:$PATH

验证安装:

python3 --version
pip3 --version

更新一下pip:

python3 -m pip install --upgrade pip

处理无法使用root权限执行问题

export PIP_ROOT_USER_ACTION=ignore

下载prometheus-pve-exporter

python3 -m pip install prometheus-pve-exporter

执行完成后pve_exporter默认在/usr/local/python3.9.6/bin/pve_exporter路径下

创建PVE用户给予只读权限

数据中心---用户---添加

输入用户名和密码--添加即可

给予权限

数据中心---权限---添加---用户权限

角色选择PVEAuditor即可

创建prometheus-pve-exporter配置文件

这里以/opt/pve.yml为例

default:

  user: prometheus@pve

  password: 【密码】
  verify_ssl: false

运行测试

/usr/local/python3.9.6/bin/pve_exporter --collector.config=/opt/pve.yml

打开网页测试是否能读取数据

http://[pveIP]:9221/pve

安全防护

下载 ufw,只允许普罗米修斯主机访问该路径

apt install ufw -y

ufw default allow incoming
ufw default allow outgoing
ufw default allow routed
ufw allow from [普罗米修斯主机IP] to any port 9221 proto tcp
ufw deny 9221/tcp

#ufw启动!
ufw enable

此时只有普罗米修斯主机能读取数据。