1. 安装所需组件
sudo yum install gcc gcc-g++ make net-snmp net-snmp-utils net-snmp-libs net-snmp-deve
#不知道为什么我用这种方法安装gcc-g++有问题
#不得不采用以下方式进行安装
yum install gcc-c++
安装go
前往go下载网址下载Linux资源包
上传至服务器(通过SecureCRT连接,使用Zmodem,需要提前安装rz:yum install lrzsz)
#解压
tar -C /usr/local -xzf go1.15.6.linux-amd64.tar.gz
#将go文件加入PATH,方便使用快捷键
export PATH=$PATH:/usr/local/go/bin
#启用 Go Modules功能
export GO111MODULE=on
#设置代理
export GOPROXY=https://goproxy.io
go build
#这个命令会报错
make mibs
#这个建议不用,用了会获取不到信息,不晓得为什么那么多人用这个鬼命令
#上面那个,用不用就不晓得了,我之前按照他们的教程用了,但是感觉我用不到下面的命令,就感觉没有
#本想着两个都不加的,GitHub上也有这个,就给加上吧,有问题再说
export MIBDIRS=mibs
2.安装snmp-exporter
获取snmp-exporter源码包方法一:通过go获取获取
go get github.com/prometheus/snmp_exporter/generator
cd ${GOPATH-$HOME/go}/src/github.com/prometheus/snmp_exporter/generator
获取snmp-exporter源码包方法二:前往GitHub下载zip压缩包
unzip -q snmp_exporter-master.zip
cd snmp_exporter-master/generator/
#编辑generator.yml
vim generator.yml
将开头修改为,也可以直接将文件备份,新建一份新的
modules:
# Default IF-MIB interfaces table with ifIndex.
if_mib:
walk:
- 1.3.6.1.2.1.2 # OID of "interfaces"
version: 2
auth:
community: vxichina #交换机 SNMP 会话
lookups:
- source_indexes: [ifIndex]
lookup: ifAlias
- source_indexes: [ifIndex]
# Uis OID to avoid conflict with PaloAlto PAN-COMMON-MIB.
lookup: 1.3.6.1.2.1.2.2.1.2 # ifDescr
- source_indexes: [ifIndex]
# Use OID to avoid conflict with Netscaler NS-ROOT-MIB.
lookup: 1.3.6.1.2.1.31.1.1.1.1 # ifName
overrides:
ifAlias:
ignore: true # Lookup metric
ifDescr:
ignore: true # Lookup metric
ifName:
ignore: true # Lookup metric
ifType:
type: EnumAsInfo
#生成snmp.yml文件
./generator generate
下载snmp_exporter,这个与上面的那个好像不一样
前往下载网址,下载解压
tar -xf snmp_exporter-0.19.0.linux-amd64.tar.gz
cd snmp_exporter-0.19.0.linux-amd64
#将生成的snmp.yml拷贝到新解压的文件中去
cp snmp_exporter-master/generator/snmp.yml snmp_exporter-0.19.0.linux-amd64/
#执行snmp
./snmp_exporter
4.验证
前往http://{IP地址}:9116,输入交换机IP地址,Module名为generator.yml文件中的Module名
至此,提交就可以查看到相关的查询数据
It’s over!
一下是转载https://www.cnblogs.com/guoxiangyue/p/11778217.html设置的开机服务,新手暂时没试
Ctrl+C 结束掉 snmp_exporter 进程,创建 snmp_exporter 服务,让 snmp_exporter 以服务的方式,开机自启。
添加系统服务
vim /etc/systemd/system/snmp_exporter.service
将以下内容写入文件中
[Unit]
Description=node_exporter
After=network.target
[Service]
ExecStart=/usr/local/snmp_exporter/snmp_exporter
Restart=on-failure
[Install]
WantedBy=multi-user.target
启动服务,设置开机自启
systemctl daemon-reload
systemctl enable snmp_exporter
systemctl start snmp_exporter