vsphere-mon 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
vsphere-mon 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
vsphere-mon 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
vsphere-mon 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
vsphere-mon 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 Apache
开发语言 Google Go
操作系统 跨平台
软件类型 开源软件
所属分类 管理和监控系统监控
开源组织
地区 国产
投 递 者 小冯冯
适用人群 未知
收录时间 2021-02-01

软件简介

适配 nightingale,采集 vsphere 相关指标 支持 ESXi 和 VM 相关指标监控 支持 ESXi 作为主机资产自动注册的 nightingale 的 ams 中

指标

ESXi

ESXi 以设备相关的方式上报数据,设备资产数据会自动注册到夜莺中

report 信息

字段 说明
sn 硬件序列号,如果取不到会使用 uuid 替代
endpoint esxi 的 name,通常是 ip 地址
ip esxi 的 name,通常是 ip 地址,如果检查不是 ip 则留空
name esxi 的 name,通常是 ip 地址
cate 分类,根据配置决定,默认是 physical
tenant 租户,根据配置决定,默认是空
cpu 物理核心数,不考虑超线程
mem 内存,单位是G
model 硬件型号,在 ams 中创建扩展字段 model 后可见
version esxi 的 fullname,即类似 VMware ESXi 6.7.0 build-13473784

基础指标

metric 说明
esxi.power 1:poweredOff,2:poweredOn,3:standBy,4:unknown,可能断开连接或者无响应
exsi.status 1:gray,未知状态;2:green,正常;3:red,大毛病;4:yellow,小毛病
esxi.uptime uptime
cpu.idle cpu 空闲率
cpu.util cpu 使用率
mem.bytes.total 总内存
mem.bytes.used 使用内存
mem.bytes.free 空闲内存
mem.bytes.used.percent 内存使用率
net.in.bits.total 总入流量
net.in.bits 单块网卡的入流量,iface=xxx
net.out.bits.total 总出流量
net.out.bits 单块网卡的出流量,iface=xxx
dsik.bytes.free 单块盘(存储)空闲容量,datastore=xxx
disk.bytes.total 单块盘(存储)总容量,datastore=xxx
disk.bytes.used 单块盘(存储)使用容量,datastore=xxx
disk.bytes.used.Percent 单块盘(存储)使用率,datastore=xxx
disk.cap.free 存储总空闲量
disk.cap.total 存储总量
disk.cap.used 存储总使用量
disk.cap.used.percent 存储总使用率

扩展指标

根据 performance 中的配置决定,有啥采啥

VM

VM 以设备无关的方式上报数据,虚机的名字以 name=xxx 的方式作为 tag 体现

基础指标

metric 说明
vm.power 1:poweredOff,2:poweredOn,3:standBy,4:unknown,可能断开连接或者无响应
vm.status 1:gray,未知状态;2:green,正常;3:red,大毛病;4:yellow,小毛病
vm.uptime uptime
cpu.idle cpu 空闲率
cpu.util cpu 使用率
mem.bytes.total 总内存
mem.bytes.guest.used 虚机实际使用内存
mem.bytes.host.used 分配给虚拟机的内存
mem.bytes.guest.used.percent 虚机实际内存使用率

扩展指标

根据 performance 中的配置决定,有啥采啥

其他

以下指标也已设备无关方式上报

metric 说明
vcetner.alive vcenter 连接状态,1通0不通
datastore.bytes.total 存储容量,ds=xxx,fstype=xxx
datastore.bytes.free 存储空闲容量,ds=xxx,fstype=xxx
datastore.bytes.used 存储使用容量,ds=xxx,fstype=xxx
datastore.used.percent 存储使用率,ds=xxx,fstype=xxx

配置

address.yml

---
transfer:
  http: 0.0.0.0:8008
  rpc: 0.0.0.0:8009
  addresses:
    - 192.168.100.1 # 修改成实际的 n9e 地址

ams:
  http: 0.0.0.0:8002
  addresses:
    - 192.168.100.1
    
vsphere-mon:
  http: 127.0.0.1:2060

vsphere.yml

logger:
  dir: logs/
  level: INFO
  keepHours: 24

# 上报的间隔,注意关注下 info.log 的日志,确保能够在一个周期内完成采集
interval: 300

report:
  # 调用ams的接口上报数据,需要ams的token
  token: ams-builtin-token
  # physical:物理机,virtual:虚拟机,container:容器,switch:交换机
  cate: physical
  # 使用哪个字段作为唯一KEY,即作为where条件更新对应记录,一般使用sn或ip
  uniqkey: ip  
  # 租户,如果配置则直接注册到该租户下
  tenant: 
# 要监控的 vsphere 的配置信息

vspheres:
    # vcenter 的地址
  - addr: https://1.1.1.1/sdk
    # vcenter 的用户名
    user: administrator@vsphere.local
    # vcetner 的密码
    pwd: password
    # 是否开启 esxi 的扩展指标监控,注意这会增加 vcenter 的负担
    esxiperf: true
    # 是否开启虚拟机的监控,注意这会增加 vcenter 的负担
    vm: true
    # 虚拟机监控所在的节点 ID(设备无关)
    nid: 137
    # 采集的虚拟机列表,如果是空数组则采集所有的虚拟机信息。
    # 虚拟机数量的增加不会增加 vcenter 的负担,这里允许控制虚拟机采集数量的目的是可以减少 n9e 的负担,削减指标数量。
    vmlist: ["VC"]
    # 是否开启虚拟机的扩展指标监控,注意这会增加 vcenter 的负担
    vmperf: true
    # 采集虚拟机扩展指标监控的虚机列表,如果是空数组则采集所有虚机的扩展指标
    # 注意这里的虚机数量越多,对 vcenter 的负担越大,建议只对重点关注的虚机开启
    vmperflist: ["VC"] 
  - addr: https://2.2.2.2/sdk
    user: administrator@vsphere.local
    pwd: password
    esxiperf: false
    vm: false
    nid: 138
    vmlist: []
    vmperf: false
    vmperflist: [] 

# 扩展的性能指标,注意采集越多对 vc 的负担就越大    
# 建议根据实际需求配置
# 更多指标和相关含义见 vmware 官网 
# https://vdc-repo.vmware.com/vmwb-repository/dcr-public/790263bc-bd30-48f1-af12-ed36055d718b/e5f17bfc-ecba-40bf-a04f-376bbb11e811/vim.PerformanceManager.html#counterTables
performance:    
  # esxi 宿主机的额外扩展指标
  esxi:
    - cpu.coreUtilization.average
    - cpu.costop.summation
    - cpu.demand.average
    - cpu.idle.summation
    - cpu.latency.average
    - cpu.readiness.average
    - cpu.ready.summation
    - cpu.swapwait.summation
    - cpu.usage.average
    - cpu.usagemhz.average
    - cpu.used.summation
    - cpu.utilization.average
    - cpu.wait.summation
    - disk.deviceReadLatency.average
    - disk.deviceWriteLatency.average
    - disk.kernelReadLatency.average
    - disk.kernelWriteLatency.average
    - disk.numberReadAveraged.average
    - disk.numberWriteAveraged.average
    - disk.read.average
    - disk.totalReadLatency.average
    - disk.totalWriteLatency.average
    - disk.write.average
    - mem.active.average
    - mem.latency.average
    - mem.state.latest
    - mem.swapin.average
    - mem.swapinRate.average
    - mem.swapout.average
    - mem.swapoutRate.average
    - mem.totalCapacity.average
    - mem.usage.average
    - mem.vmmemctl.average
    - net.bytesRx.average
    - net.bytesTx.average
    - net.droppedRx.summation
    - net.droppedTx.summation
    - net.errorsRx.summation
    - net.errorsTx.summation
    - net.usage.average
    - power.power.average
    - storageAdapter.numberReadAveraged.average
    - storageAdapter.numberWriteAveraged.average
    - storageAdapter.read.average
    - storageAdapter.write.average
    - sys.uptime.latest
  # vm 虚拟机的额外扩展指标
  vm:
    - cpu.demand.average
    - cpu.idle.summation
    - cpu.latency.average
    - cpu.readiness.average
    - cpu.ready.summation
    - cpu.run.summation
    - cpu.usagemhz.average
    - cpu.used.summation
    - cpu.wait.summation
    - mem.active.average
    - mem.granted.average
    - mem.latency.average
    - mem.swapin.average
    - mem.swapinRate.average
    - mem.swapout.average
    - mem.swapoutRate.average
    - mem.usage.average
    - mem.vmmemctl.average
    - net.bytesRx.average
    - net.bytesTx.average
    - net.droppedRx.summation
    - net.droppedTx.summation
    - net.usage.average
    - power.power.average
    - virtualDisk.numberReadAveraged.average
    - virtualDisk.numberWriteAveraged.average
    - virtualDisk.read.average
    - virtualDisk.readOIO.latest
    - virtualDisk.throughput.usage.average
    - virtualDisk.totalReadLatency.average
    - virtualDisk.totalWriteLatency.average
    - virtualDisk.write.average
    - virtualDisk.writeOIO.latest
    - sys.uptime.latest

编译

# cd /home
# git clone https://github.com/shanghai-edu/vsphere-mon
# cd vsphere-mon
# ./control build

也可以直接在 release 中下载打包好的二进制

运行

支持 systemctl 的操作系统,如 CentOS7

执行 install.sh 脚本即可,systemctl 将托管运行

# ./install.sh 
Created symlink from /etc/systemd/system/multi-user.target.wants/vsphere-mon.service to /usr/lib/systemd/system/vsphere-mon.service.

后续可通过 systemctl start/stop/restart vsphere-mon 来进行服务管理

注意如果没有安装在 /home 路径上,则需要修改 service/vsphere-mon.service 中的相关路径,否则 systemctl 注册时会找不到

不支持 systemctl 的操作系统

执行 ./control start 启动即可

# ./control start
vsphere-mon started

后续可通过 ./control start/stop/restart 来进行服务管理

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (0)

加载中
更多评论
暂无内容
发表了博客
2019/05/17 11:17

VMware vSphere

VMware vSphere 是业界领先且最可靠的虚拟化平台。vSphere将应用程序和操作系统从底层硬件分离出来,从而简化了 IT操作。您现有的应用程序可以看到专有资源,而您的服务器则可以作为资源池进行管理。因此,您的业务将在简化但恢复能力极强的 IT 环境中运行。 VMware、vSphere、Essentials 和 Essentials Plus 套件专为工作负载不足 20 台服务器的 IT 环境而设计,只需极少的投资即可通过经济高效的服务器整合和业务连续性为小型...

0
0
发表了博客
2018/03/01 15:21

【VMware vSphere】vSphere Data Protection简介

【前言】 还记得一月份左右的时候,万达这边的服务器突然宕机,导致所有的项目不得不停止不说,还损失掉了很多宝贵的数据。为了防止这种情况再次发生,所以近期研究了vSphere Data Protection。但是也是刚接触,所以先写一篇简介,等后期学习到了新的知识,再更新。 【简介】 vSphere Data Protection(以下简介为VDP)是一款基于磁盘的备份和恢复解决方案,它与VMware vCenter Server完全集成,可以用来对备份作业执行高效的集...

0
0
发表了博客
2018/01/26 20:45

vsphere client和vsphere web client的区别

vsphere client是一个运行在windows桌面上的客户端,在linux环境下无法运行,在vsphere5.0以后,VMware在逐渐弱化vsphere client的作用,现在很多高级功能(如增强型vMotion)只能在web client里实现。 VMware的设计趋势是用web client取代vsphere client,故本例采用web client进行管理 详细区别请见 http://server.zol.com.cn/431/4312982_all.html vcenter管理对象 其逻辑结构如下图 登录vsphere web client 浏览器要求 web ...

0
0
发表了博客
2019/05/19 10:38

vsphere网络

物理网络 物理机间建立的网络,VMware ESXi运行于物理机之上 虚拟网络 单台物理机上运行的虚拟机之间通信形成的逻辑网络。 一、网络概述 1. 物理以太网交换机 2.vSphere标准交换机 虚拟机的虚拟端口连接虚拟交换机同时另一端与物理以太网适配器(上行链路适配器即物理网卡)相连,将虚拟网络连接至物理网络,以将vSphere标准交换机连接到物理交换机。与物理交换机十分相似,但不具备物理交换机的一些高级功能。 标准端口组:Por...

0
0
发表于软件架构专区
2020/04/24 12:20

govmomi (vSphere SDK for Go), govc CLI & Kubernetes on vSphere

One of the exciting announcements that was made last week at VMworld was the joint partnership between Docker, Google, Pivotal and VMware. Paul Strong (Office of the CTO) wrote a great blog post Better Together – Containers are a Natural Part of the Software-Defined Data Center where he goes into more details about the partnership. The really neat part of the announcement which I think some p...

0
0
发表了博客
2018/12/19 13:31

vsphere安装

1、最近由于公司内部各种需求,有很多项目需要独立的服务器运行环境,不可能为每个项目安装一个实体机,如果只是二三台的话还可以,但是太多了,近50多台,所以我们选择做虚拟化,像之前我们用的kvm,但是总的说没有vmware esxi好用,所以我们选择了它,选择做虚拟化的服务器是DELL r720 24核心(逻辑cpu)、64G内存、磁盘1T 价格大概在3万左右,好了不多说了,我们来操作吧! 2、下载VMware-VMvisor-Installer-5.5.0-1331820.x8...

0
0
发表了博客
2019/08/10 16:57

VMware vSphere API开发(一)---vSphere 体系核心概念

1、VMware SDDC VMware 软件定义数据中心(software defined dataCenter,SDDC),包括了从最底层的VMware vSphere、软件定义存储、软件定义网络、云计算平台等多个组件。VMware vSphere是业界领先的虚拟化平台,能够通过虚拟化纵向扩展和横向扩展应用、重新定义可用性和简化虚拟数据中心,最终可实现高可用、恢复能力强的的按需基础架构,这是任何云计算环境的理想基础。同时可以降低数据中心成本,增加系统和应用的正常运行时间...

0
0
发表了博客
2019/10/10 23:52

vSphere Replication5.5安装

vSphere Replication5.5概述 VMware vSphere Replication简称VR是 VMwarevCenter Server 的扩展,提供基于管理程序的虚拟机复制和恢复功能。 vSphere Replication 是基于存储的复制的一个备用方案。它可以通过在以下站点之间复制虚拟机来保护虚拟机,以免出现部分或整个站点故障: ■从源站点到目标站点 ■在一个站点中从一个群集到另一个群集 ■从多个源站点到一个共享远程目标站点 与基于存储的复制相比较,vSphere Replicati...

0
0
2018/12/17 11:23

转:vsphere序列号

VMware vSphere 6 序列号大全 2018年02月22日 16:59:08 温润雨声泪入茶 阅读数:17639 转载自 http://www.i5i6.net/post/190.html vSphere 6 Hypervisor HY0XH-D508H-081U8-JA2GH-CCUM2 4C4WK-8KH8L-H85J0-UHCNK-8CKQ8 NV09R-2W007-08D38-CA956-33U28 JU400-6EK4L-080V9-QT8EP-2KAQ2 vSphere 6 Hypervisor for Embedded OEMs NC6HH-26J4N-48098-Y0AX0-1GA66 HY0J0-6L28H-081W8-4TCN0-32RP0 0V012-002DJ-480T1-UHAE0-9GULF 4G6W...

0
1
发表于DevOps专区
2019/11/03 23:21

VMware vSphere的组成部分

VMware的产品名称、服务名称、解决方案名称很多,让人很迷惑,就拿这个vSphere来说吧,它到底包括哪些内容呢? 根据2019年11月4日VMware官方信息,vSphere作为一个产品,是要收费的,收的是授权费,有三种授权方式: vSphere Standard vSphere Enterprise Plus vSphere Enterprise Platinum 从服务内容上来看,它提供了以下几个组成部分或组件: ESXi Hypervisor,这个组件ESXi也可以免费下载,名义上是一个虚拟机管理器,但实质...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
0 评论
3 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部