Sensu : プラグインを追加する#12017/10/25 |
Sensu のデフォルトの監視項目はキープアライブのみとなっており、他の監視項目を追加したい場合はプラグインをインストールすることで可能となります。
配布されているプラグインは Sensu Plugins Project で確認できます。
⇒ https://github.com/sensu-plugins/ |
|
[1] | 例として CPU チェックプラグインを追加します。 プラグインのインストールは監視対象としたい全ノードで実施します。 |
[root@dlp ~]#
yum -y groups install "Development Tools" # cpu-checks インストール [root@dlp ~]# sensu-install -p cpu-checks [SENSU-INSTALL] installing Sensu plugins ... [SENSU-INSTALL] determining if Sensu gem 'sensu-plugins-cpu-checks' is already installed ... false [SENSU-INSTALL] Sensu plugin gems to be installed: ["sensu-plugins-cpu-checks"] [SENSU-INSTALL] installing Sensu gem 'sensu-plugins-cpu-checks' Fetching: linux-kstat-0.1.3-universal-linux.gem (100%) Successfully installed linux-kstat-0.1.3-universal-linux Fetching: sensu-plugins-cpu-checks-1.1.2.gem (100%) You can use the embedded Ruby by setting EMBEDDED_RUBY=true in /etc/default/sensu Successfully installed sensu-plugins-cpu-checks-1.1.2 2 gems installed [SENSU-INSTALL] successfully installed Sensu plugins: ["sensu-plugins-cpu-checks"] # 含まれるツールは以下で確認できる [root@dlp ~]# ll /opt/sensu/embedded/lib/ruby/gems/2.4.0/gems/sensu-plugins-cpu-checks-1.1.2/bin total 32 -rwxr-xr-x. 1 root root 4100 Oct 26 11:57 check-cpu.rb -rwxr-xr-x. 1 root root 1658 Oct 26 11:57 check-cpu.sh -rwxr-xr-x. 1 root root 1998 Oct 26 11:57 metrics-cpu-mpstat.rb -rwxr-xr-x. 1 root root 2236 Oct 26 11:57 metrics-cpu-pcnt-usage.rb -rwxr-xr-x. 1 root root 1729 Oct 26 11:57 metrics-cpu.rb -rwxr-xr-x. 1 root root 1212 Oct 26 11:57 metrics-numastat.rb -rwxr-xr-x. 1 root root 1964 Oct 26 11:57 metrics-user-pct-usage.rb # ツール実行時は /opt/sensu/embedded/bin 配下の方を指定する [root@dlp ~]# /opt/sensu/embedded/bin/check-cpu.rb -h Usage: /opt/sensu/embedded/bin/check-cpu.rb (options) --cache-file CACHEFILE -c CRIT --guest Check cpu guest instead of total cpu usage --guest_nice Check cpu guest_nice instead of total cpu usage --idle Check cpu idle instead of total cpu usage --idle-metrics METRICS Treat the specified metrics as idle. Defaults to idle, iowait,steal,guest,guest_nice --iowait Check cpu iowait instead of total cpu usage --irq Check cpu irq instead of total cpu usage -l, --less_than Change whether value is less than check --nice Check cpu nice instead of total cpu usage --proc-path /proc --sleep SLEEP --softirq Check cpu softirq instead of total cpu usage --steal Check cpu steal instead of total cpu usage --system Check cpu system instead of total cpu usage --user Check cpu user instead of total cpu usage -w WARN |
[2] | プラグインの設定をします。Sensu サーバー側で実施します。 |
[root@dlp ~]#
vi /etc/sensu/conf.d/check-cpu.json # CPU Usage 80% で Warning, 90% で Critical # [subscribers] には各ノードの設定で [subscriptions] に設定したワードを指定 # 以下の場合、[development] を設定した全ノードがチェック対象となる { "checks": { "cpu_check": { "command": "check-cpu.rb -w 80 -c 90", "subscribers": [ "development" ], "interval": 60 } } } systemctl restart sensu-server sensu-api |
[3] | Uchiwa ダッシュボードにアクセスすると追加したチェック項目が監視されていることが確認できます。 |
[4] | 設定した閾値を超えると警告メッセージが表示されます。 |
[5] | Sensu サーバーからではなく、クライアントノード側でチェックさせることもできます。 その場合はクライアント側に設定ファイルを作成し、[standalone: true] を指定します。 |
# disk-checks インストール [root@node01 ~]# sensu-install -p disk-checks
[root@node01 ~]#
vi /etc/sensu/conf.d/check-disk-usage.json # クライアント側でチェックさせる場合 standalone: true を指定 { "checks": { "disk_check": { "command": "check-disk-usage.rb -w 70 -c 80", "standalone": true, "interval": 600 } } } systemctl restart sensu-client |
Sponsored Link |