ReadyNASにnode_exporterを設置する方法

目次

概要

Netgear社が販売しているReadyNASというNASは、内部でLinuxが動いています。

つまり、Linuxのシステムを監視するように、ReadyNASを監視できるということです。

ここでは、ReadyNASにPrometheusで監視するために、node_exporterをインストールしました。

環境

  • ReadyNAS OS 6.10.2
  • node_exporter 0.18.1

ダウンロード

私が結構悩んだ部分として、どうやってnode_exporterをReadyNASにダウンロードするかということがあります。

そもそも、ReadyNASではSSHなどでログインしてターミナルを使うことができるのですが、wgetなどのインターネットからファイルをダウンロードするためのコマンドは用意されていません。

セキュリティ的にはいいのですが、今回node_exporterをダウンロードするという目的では、あまりよくありません。

そこで、今回はSFTPを使うことにしました。

そのため、まずnode_exporterをSSHのクライアントの方にダウンロードします。

ダウンロードの際にはアーキテクチャに合わせてダウンロードしましょう。

アーキテクチャは次のコマンドで確認できます。

$ arch

ReadyNASへのアップロードをしましょう。

アップロードは、node_exporterのある場所に移動して、次のようにしてnode_exporterをアップロードしましょう。

sftp ユーザ名@ReadyNASのIPアドレス

接続したら、次のコマンドでアップロードします。

put node_exporterのファイル名

これで、ログインしたユーザのホームディレクトリにアップロードできました。

インストール

これから起動のための設定をします。

私が利用している、ReadyNAS OS 6.10.2ではsystemdが使われているため、systemdの作法に則ってインストール、設定をしていきます。

設定として、systemdで起動するためのUnitファイルを作成します。

次のコマンドでUnitファイルを作成できます。

# mkdir -p /usr/lib/systemd/system
# cat << EOF > /usr/lib/systemd/system/node_exporter.service
[Unit]
Description=Node Exporter

[Service]
Type=simple
ExecStart=/usr/local/bin/node_exporter
PrivateTmp=false

[Install]
WantedBy=multi-user.target
EOF

Unitファイル名はnode_exporter.serviceとしました。

これでnode_exporterのインストールと設定は終わりです。

起動

それでは、起動してみましょう。

# systemctl daemon-reload
# systemctl start node_exporter.service

これで起動できました。

再起動時に、必ず起動して欲しい場合は次のコマンドを実行します。

# systemctl enable node_exporter.service

さいごに

これで、ReadyNASにnode_exporterをインストールできました。

ReadyNASは情報が少ないため、色々とやろうとすると大変なことが多いです。

同じようなことがしたい人の参考になれば幸いです。