前置き
さくらインターネット アドベントカレンダーの9日目の記事です
この記事では、さくらのクラウドのNFSアプライアンスのディスクリソースを、snmp_exporterを使って情報を収集する方法について説明します
この記事の対象者
- PrometheusからNFSアプライアンスのディスクリソースの情報を収集したい方
- さくらのクラウドのAPIキー発行にハードルのある方
今回の構成
- さくらのクラウド NFSアプライアンス 1台
- サーバー 1台(Ubuntu 22.04 2Core 4GB)
- dockerがインストールされていること
- ローカルスイッチ 1台
snmp.ymlの作成
SNMPのパッケージをインストールする
$ apt install snmp snmp-mibs-downloader
MIBをダウンロードする
$ download-mibs
download-mibsでダウンロードしたMIBを./mibsへコピーする
$ mkdir ./mibs
$ cp /usr/share/snmp/mibs/ietf/* ./mibs
$ cp /usr/share/snmp/mibs/iana/* ./mibs
$ find /usr/share/snmp/mibs/ -type f -exec cp {} ./mibs \;
generator.ymlを作成する
generator.yml
---
auths:
public_v2:
version: 2
community: sacloudnfs # コミュニティ名「sacloudnfs」固定
modules:
nfs_snmp: # 任意のモジュール名
walk: [dskEntry]
ファイル構成は下記
.
├── generator.yml
└── mibs
├── ACCOUNTING-CONTROL-MIB
├── ADSL2-LINE-MIB
-----省略-----
├── VRRP-MIB
└── WWW-MIB
1 directory, 335 files
generatorを実行して、snmp.ymlを作成する
$ docker run -it -v "${PWD}:/opt/" prom/snmp-generator generate
$ ls
generator.yml mibs snmp.yml
snmp_exporterの起動
コンテナの起動
$ docker run -it -v "${PWD}/snmp.yml:/etc/snmp_exporter/snmp.yml" \
-p 9116:9116 prom/snmp-exporter
http://<IPアドレス>:9116/
にアクセスすると下図のような画面になります
- Target: NFSアプライアンスのIPアドレス
- Auth: public_v2
- Module: nfs_snmp
を入力して、Submitボタンを押します
終わり
以上でSNMPで情報が取得できるようになりました!!
任意でPrometheusから参照することで、ディスクの空き容量などを監視することができます
ここまで読んでいただきありがとうございました