如何使用Zabbix Alert Scripts
- 建立Jabber Script
- 從終端測試
- 配置Zabbix使用Jabber script
- 建立Email Script
- 從終端測試
- 配置Zabbix使用phpmailer script
- 告訴Zabbix通知
- 翻轉伺服器以驗證操作
jabber.sh是Zabbix內置的Jabber / XMPP功能的替代品。
安裝前可能需要安裝“sendxmpp”。 這在Ubuntu Xenial伺服器安裝時是有效的,但CentOS / RHEL部署的路徑可能會有所不同。
Contents of /usr/lib/zabbix/alertscripts/jabber.sh:
#!/bin/bash to=$1 body=$2 cat <<EOF | sendxmpp -u user@server -p password -j server $1 $2 EOF
相應地為您的特定設置調整“用戶”、“伺服器”和“密碼”。 該 script應由zabbix用戶擁有,並具有執行權限設置:
-rwxr-xr-x 1 zabbix root 288 Jun 16 05:11 jabber.sh
測試,只需像其他一樣執行script。 注意傳遞給它的參數:
# /usr/lib/zabbix/alertscripts/jabber.sh recipient@server message
如果無法發送,請嘗試在script之外使用sendxmpp,並確保它能夠發送,然後根據需求調試script。
讓Zabbix看起來像這樣:
注意:用戶的媒體類型對應到我們之前輸入的Script名稱。
電子郵件遵循類似的程序。 只需確保安裝必要的PHP模塊。 這是設置為使用Gmail帳戶:
Contents of /usr/lib/zabbix/alertscripts/phpmailer.php:
#!/usr/bin/php <?php require_once "Mail.php"; $from = "ZABBIX <user@domain>"; $to = $argv[1]; $subject = $argv[2]; $body = $argv[3]; $host = "ssl://smtp.gmail.com"; $port = "465"; $username = "username"; $password = "password"; $headers = array ('From' => $from, 'To' => $to, 'Subject' => $subject); $smtp = Mail::factory('smtp', array ('host' => $host, 'port' => $port, 'auth' => true, 'username' => $username, 'password' => $password)); $mail = $smtp->send($to, $headers, $body); ?>
相應地為您的特定設置調整“用戶”,“伺服器”和“密碼”。 該script應由zabbix用戶擁有並具有執行權限設置:
-rwxr-xr-x 1 zabbix root 572 Jun 16 12:26 phpmailer.php
測試,只需像其他任何一樣執行script。 注意傳遞給它的參數:
# /usr/lib/zabbix/alertscripts/phpmailer.php [email protected] subject body
讓Zabbix看起來像這樣:
請注意,用戶的媒體的“類型”對應於我們之前添加的script的名稱。
最重要的一步!
這告訴zabbix剛剛我們實際使用設置的一切。
一旦啟用,打開一個伺服器讓zabbix告訴你一些事情。
檢查Pidgin和您的電子郵件,看看它是否有效!:)
我要留言