Centos7 Zabbix3.4 メールアラーム設定(メール内容がxx.bin添付ファイルになる問題の解決)

Centos7 Zabbix3.4 メールアラーム設定(メール内容がxx.bin添付ファイルになる問題の解決)

1. 監視Linuxホストを追加する

1. 構成 - ホスト - ホストの作成

2. 情報を入力する

3. テンプレートを追加する

4. ステータスを確認する

2. メールボックスを設定する

システム環境:

[root@localhost ~]# cat /etc/redhat-release 
CentOS Linux リリース 7.2.1511 (コア)

1. メール送信ツールmailxをインストールする

他のメール送信ツールがインストールされている場合は、まずそれらを閉じてください。

service sendmail stop ##sendmailを閉じる
systemctl enable sendmail.service ##起動時にメール送信を無効にする
service postfix stop ##postfixをシャットダウンします
systemctl enable postfix.service ## postfixの起動を無効にする
[root@localhost ~]# yum install mailx

2. Zabbix サーバーの外部メールボックスを設定するには、vim /etc/mail.rc ファイルを開きます。mail.rc ファイルが存在しない場合は、手動で作成し、次のコンテンツを追加します。

[root@localhost ~]# vim /etc/mail.rc 

sendcharsets=iso-8859-1,utf-8 を設定します
[email protected] を設定します
set smtp=smtp.163.com #163 メールボックスを開くには SMTP 認証が必要です set [email protected] #認証ユーザー set smtp-auth-password=xxx #認証パスワード

3. メール送信のテスト

[root@localhost ~]# echo "zabbix テストメール" | mail -s "zabbix" [email protected] 

4. メールを送信するスクリプトを書く

1) dos2unix変換ツールをインストールします(送信されたメールがxx.bin添付ファイル形式になる問題を解決するため)(ディレクトリ名は7.5.1804で変更されます)ここでのダウンロードリンクが無効な場合は、Alibabaの公式Webサイトにアクセスして対応するファイルを見つけてください。

[root@localhost ~]# rpm -ivh https://mirrors.aliyun.com/centos/7.5.1804/os/x86_64/Packages/dos2unix-6.0.3-7.el7.x86_64.rpm

https://mirrors.aliyun.com/centos/7.5.1804/os/x86_64/Packages/dos2unix-6.0.3-7.el7.x86_64.rpm を入手してください

準備中... #################################### [100%]

アップグレード/インストール中...

1:dos2unix-6.0.3-7.el7 ###################################### [100%]

次のメールが表示されましたが、テキストは表示できません

2) メール送信スクリプトの内容を変更する

なぜこのパスにこのスクリプトを作成するのでしょうか? これはzabbix_serber.confファイルで設定されています
アラートスクリプトパス=/usr/lib/zabbix/アラートスクリプト

したがって、このディレクトリにスクリプトを配置したくない場合は、サーバー構成ファイルの AlertScriptsPath の値を変更する必要があります。

[root@localhost ~]# vim /usr/lib/zabbix/alertscripts/sendmail.sh
#!/bin/bash 

#export.UTF-8 #送信した中国語の文字が文字化けする問題を解決 FILE=/tmp/mailtmp.txt 
echo "$3" >$FILE 
dos2unix -k $FILE #送信メールの内容が添付ファイルになる問題を解決しました。 

/bin/mail -s "$2" $1 < $FILE

3) 一時ファイルを作成し、認証します。ユーザーがZabbixに存在することを確認します。

[root@localhost ~]# touch /tmp/mailtmp.txt
[root@localhost ~]# chown zabbix.zabbix /tmp/mailtmp.txt

4) 上記の 3 つのパラメータは、Web ページから渡される情報を受信するために使用されます。

$1: 受信者のメールアドレス;
$2: メールのタイトル;
$3: メールの内容

5) スクリプトに権限を追加します。そうしないと、アラームが発生したときに電子メールが正常に送信されません。

[root@localhost ~]# chmod 755 /usr/lib/zabbix/alertscripts/sendmail.sh

5. 管理 - アラームメディアタイプ - メディアタイプの作成

6. 内容を入力する

sendmail.sh スクリプトに必要な 3 つのパラメータに対応する次の 3 つのパラメータを追加します: 受信者アドレス、件名、詳細内容

 {アラート.送信先}
 {アラート件名}
 {警告メッセージ}

3.0 では、これら 3 つのパラメータを追加しないとエラーが報告されます。これは、3.0 以降では、zabbix でカスタム パラメータが許可されるため、デフォルトではパラメータが渡されないためです。2.0 では、デフォルトで 3 つのパラメータが渡されるため、3.0 でこれら 3 つのパラメータを記述しないとエラーが報告されます。

7. ユーザーにアラームメディアを追加する

8. アラーム条件を設定する: 設定-アクション-アクションの作成

1) 条件と名前を設定する

2) 受信者を入力します。デフォルトの情報です。ユーザーは先ほど入力した受信者であり、MyEmailも作成されました。

障害アラーム:{TRIGGER.STATUS}:{TRIGGER.NAME}
アラームホスト:{HOST.NAME}
ホストアドレス:{HOST.IP}
アラーム時刻: {EVENT.DATE} {EVENT.TIME}
アラーム レベル:{TRIGGER.SEVERITY}
警告情報:{TRIGGER.NAME}
質問の詳細:{ITEM.NAME}:{ITEM.VALUE}
イベントコード: {EVENT.ID}

説明: デフォルトのステップは 1-1 です。つまり、1 から始まり、1 で終わります。障害が発生すると、sendEmail.sh スクリプトが実行され、管理者ユーザーと zabbix 管理者グループにアラーム メールが送信されます。障害が 1 時間続く場合は、1 回のみ送信されます。 1-0 に変更した場合、0 は無制限を意味します。無制限の送信間隔は、デフォルトの 60 秒の期間です。つまり、1 時間に 60 通のメールが送信されることになります。

3) 復旧作業

障害が解決されました:{TRIGGER.STATUS}: {TRIGGER.NAME}
ホストを復元:{HOST.NAME}
ホストアドレス:{HOST.IP}
回復時間: {EVENT.DATE} {EVENT.TIME}
回復レベル: {TRIGGER.SEVERITY}
回復情報:{TRIGGER.NAME}
質問の詳細:{ITEM.NAME}:{ITEM.VALUE}
イベントコード: {EVENT.ID}


この時点で、電子メール アラームの設定は完了です。設定したトリガーがトリガーされると、アラーム メールが自動的に送信されます。

9. メールアラートをテストする

1) トリガーをオンにする

2) Zabbixに付属のテンプレートの使用可能メモリの監視におけるトリガーの臨界値を20より大きい値に変更し、テンプレートリストに入力します。

変更後

3) 更新時間を変更して検出を高速化する

4) アラームを表示する

5) メール確認

電子メールの送信に問題がある場合は、サーバー、zabbix-server、および httpd サービスを再起動し、クライアントで zabbix-agent サービスを再起動します。

以下もご興味があるかもしれません:
  • Centos7.4 zabbix3.4.7 ソースコードのインストール方法と手順
  • Centos 7.3 に最新バージョンの Zabbix 3.4 をインストールして展開する方法 (画像とテキスト)
  • Zabbix アラーム プッシュ DingTalk の例の Python3 実装
  • Zabbixで電子メールアラートを実装する方法

<<:  MySQL InnoDB MRR 最適化ガイド

>>:  Vueはスクロールバースタイルを実装します

推薦する

WeChatアプレットトラック再生の実装と遭遇した落とし穴の詳細な説明

WeChat アプレットの軌跡再生では、主に線描画操作にポリラインを使用し、車の移動操作にマーカーを...

Mysqlは隣接リスト(隣接リスト)を通じてツリー構造を保存します。

以下の内容では、隣接リストを使用してツリー構造を保存する MYSQL のプロセスとソリューションを紹...

フローティングメニューを実装するjQueryプラグイン

毎日jQueryプラグインを学ぶ - フローティングメニュー、参考までに、具体的な内容は次のとおりで...

Linux で binlog ファイルの作成時間を表示するコマンド

目次背景分析する方法背景MySQL は 26 日の 16:23:49 に大量のスロー クエリを生成し...

MySQL スケジュールタスク (EVENT イベント) を詳細に設定する方法

目次1. イベントとは何ですか? 2. 「イベント」機能を有効にする1. 機能が有効になっているかど...

mysql 解凍パッケージの基本インストールチュートリアル

新しいコンピューターに変更したので、すべての環境を新しいコンピューター上で設定する必要があります。ふ...

lastInfdexOf 関数の MySQL 実装例

MySQL では lastIndexOf に似た関数を使用する必要がある場合もありますが、すぐに使用...

要素 el-table テーブルの二次カプセル化 (テーブルの高さの調整付き)

序文会社でのインターンシップ中、フロントエンド開発にはvue+element-uiフレームワークを使...

Ubuntu 20.04 ベスト設定ガイド (初心者向け)

1. システム構成1. sudoパスワードをオフにするsudo コマンドを使用するたびにパスワード...

ウェブデザイン実践者必読のキャリアプラン

原文記事、転載の際は著者と出典を明記してください! Web デザインは間違いなくテクノロジーであり、...

Docker で Portainer ビジュアル インターフェースを構築するための詳細な手順

前回述べた問題を解決するために、オンラインで検索したところ、非常に優れたビジュアル インターフェース...

超大型フォントを使用した 40 の Web ページ デザイン

今日の Web デザインでは、非常に大きなフォントが表示される傾向があります。これらのオープンソース...

Mysqlのマージ結果と水平スプライシングフィールドの実装手順

序文最近、レポート機能に取り組んでいたのですが、ある月に各部署に入社した人と退職した人の数をカウント...

Vuex ステートマシンの簡単な理解とサンプルアプリケーション

目次1. 概念の素早い理解: 1. コンポーネント間でデータを共有する方法: 2. vuex とは何...

MySQL をインストールするときに初期パスワードを忘れた場合のシンプルで効果的な解決策

MySQL をインストールすると初期パスワードが与えられますが、この初期パスワードは大文字と小文字の...