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