超メモ:Zabbixの外部チェックでrubyスクリプトを動かす時のポイント
くどうです
rubyをrbenvでインストールした場合、アクセス権の問題で動かないことがあります。
ふつう動きませんw
ではどうするか。
事前に/root/.rbenv/shims/rubyを/usr/bin/rubyにシンボリックリンクを張ります。
1、rootでrubyスクリプトを呼び出す。bashスクリプトを書きます。
以下を/usr/lib/zabbix/externalscripts にazure として保存します。
1 2 3 |
#!/bin/bash cd `dirname $0` sudo /usr/bin/ruby azure.rb $* |
2、アクセス権を変更します。
1 |
# chmod +x azure |
1 |
# chmod +x azure.rb |
3、sudo設定の変更します。
1 |
# visudo |
以下を追記
1 2 |
Defaults:zabbix !requiretty zabbix ALL=(ALL) NOPASSWD: ALL |
ZabbixはユーザZabbixで動作します。そこでsudoによりroot権限で動作させます。
これで、Zabbixにazureアイテムとして登録します。
以上です。