littlebot
Published on 2025-04-10 / 2 Visits
0

【源码】基于Proxmox和Jumpserver的虚拟机信息同步系统

项目简介

本项目致力于实现将Proxmox虚拟化环境里的虚拟机信息自动同步到Prometheus和Jumpserver平台。借助定时任务,自动获取Proxmox中的虚拟机信息,同步至Prometheus用于监控,同时更新Jumpserver中的主机信息以进行资产管理。

项目的主要特性和功能

  1. 虚拟机信息同步:从Proxmox API获取虚拟机信息,自动同步到Prometheus和Jumpserver平台。
  2. Prometheus集成:把虚拟机信息同步至Prometheus,生成监控节点配置,支持公司名或云厂商标签。
  3. Jumpserver集成:更新Jumpserver平台上的主机信息,支持Linux和Windows虚拟机的平台配置。
  4. 配置灵活:通过配置文件灵活配置,支持选择是否启用Prometheus和Jumpserver同步。
  5. 系统服务化:提供系统服务化部署选项,便于在Linux系统中作为后台服务运行。

安装使用步骤

前提条件

  • 已安装Git命令行工具。
  • 拥有Proxmox、Prometheus和Jumpserver的访问权限及相应配置。

安装步骤

  1. 复制项目:(此处原总结未给出复制项目的命令,需补充如git clone <项目仓库地址>
  2. 进入项目目录bash cd ProxmoxAPI
  3. 配置文件:根据configs目录下的配置文件样例,配置您的配置信息(pve.json, prometheus.json, jumpserver.json)。
  4. 运行程序
  5. 直接运行: bash go run main.go
  6. 编译并运行: bash go build -o bin/proxmoxApi ./bin/proxmoxApi
  7. 添加为系统服务(可选):参考5.添加为系统服务(以CentOS7为例)中的步骤,将程序添加为系统服务。

配置说明

  • pve.json:Proxmox相关配置,包括API地址、令牌、是否启用Prometheus和Jumpserver同步等。
  • prometheus.json:Prometheus相关配置,包括服务器地址、登录凭证等。
  • jumpserver.json:Jumpserver相关配置,包括API地址、访问密钥等。
  • log.json:日志配置,包括日志格式、路径等。

运行环境

  • 操作系统:支持Linux系统。
  • 编程语言:Go。
  • 依赖包:项目依赖的第三方包已列在Go的依赖管理文件中。

注意事项

  • 请确保配置文件的路径和权限设置正确。
  • 确保Proxmox、Prometheus和Jumpserver的服务正常运行且可访问。
  • 在生产环境中运行前,请仔细检查和测试配置文件中的敏感信息(如API密钥)。
  • 由于使用了SSH协议进行文件传输,存在一定的安全风险,请确保连接的安全性。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】