LoginSignup
1
0

More than 1 year has passed since last update.

Zabbix⇒Amazon SNS連携手順

Last updated at Posted at 2021-07-08

1 はじめに

 Zabbix⇒Amazon SNSの連携手順を書いていきます。
※ほとんど自分用の記事ですが、何かの参考になれば。

AWS EC2
CentOS8 Stream
Zabbix 5.0.13
MySQL / Apache + PHP

2 AWSまわりの設定

2-1 IAMの作成・設定


WS0022.JPG

WS0023.JPG

WS0024.JPG

WS0025.JPG

WS0026.JPG
※権限については、より制限したい場合は変更してください。


WS0027.JPG
※タグは自由に


WS0028.JPG

WS0029.JPG
※CSVはダウンロードしてください。

2-2 Amazon SNSのトピック作成・設定


WS0030.JPG

WS0031.JPG

WS0032.JPG

WS0033.JPG

WS0034.JPG

WS0035.JPG

WS0036.JPG

WS0037.JPG

a.jpg

⑩こんな感じのメールが届きます。
WS0039.JPG

WS0040.JPG

WS0041.JPG

3 Zabbixまわりの設定

3-1 スクリプト作成

①スクリプトを作成します

vi /usr/lib/zabbix/alertscripts/awssns.sh
/usr/lib/zabbix/alertscripts/awssns.sh
#!/bin/sh

TOPIC_ARN=$1
SUBJECT=$2
MESSAGE=$3

echo "`date` $TOPIC_ARN $SUBJECT" >> /var/log/zabbix/awssns.log

if [ "$SUBJECT" = "" -o "$TOPIC_ARN" = "" ]; then
  echo "usage: $0 {ARN SUBJECT MESSAGE}"
  exit 1
fi

if [ "$MESSAGE" = "" ]; then
  MESSAGE=$SUBJECT
fi

aws sns publish --topic-arn $TOPIC_ARN --subject "$SUBJECT" --message "$MESSAGE"

③権限を付与

chmod 755 /usr/lib/zabbix/alertscripts/awssns.sh
chown zabbix:zabbix /usr/lib/zabbix/alertscripts/awssns.sh

3-2 AWS連携設定

①AWSコマンドをインストール

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
aws --version

②Zabbixユーザー用の連携設定の作成

mkdir /var/lib/zabbix
mkdir /var/lib/zabbix/.aws
touch /var/lib/zabbix/.aws/credentials
touch /var/lib/zabbix/.aws/config
chmod 755 /var/lib/zabbix/.aws/c*
chown zabbix:zabbix /var/lib/zabbix/.aws/c*

③AWS連携設定

aws configure
root/awsconfigure
AWS Access Key ID : 2-1⑧を入力
AWS Secret Access Key : 2-1⑧を入力
Default region name : ap-northeast-1
Default output format : json
cat /etc/passwd | grep zabbix
su -s /bin/bash - zabbix
aws configure
zabbix/awsconfigure
AWS Access Key ID : 2-1⑧を入力
AWS Secret Access Key : 2-1⑧を入力
Default region name : ap-northeast-1
Default output format : json
aws configure list

3-3 メディアタイプの設定


WS0042.JPG

WS0043.JPG

WS0044.JPG

名前:Amazon SNS
スクリプト名:awssns.sh
パラメータ:
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}


WS0063.JPG

WS0061.JPG

■障害
件名:【障害連絡】{HOST.NAME1} {EVENT.NAME}
メッセージ:
Zabbixから障害イベントが通知されました。
発生日時:{EVENT.DATE} {EVENT.TIME}
ホスト名:{HOST.NAME1}
障害の深刻度:{TRIGGER.SEVERITY}
アラート名:{EVENT.NAME}
最新データ値:{ITEM.LASTVALUE1}
■障害復旧
件名:【復旧連絡】{HOST.NAME1} {EVENT.RECOVERY.NAME}
メッセージ:
Zabbixから復旧イベントが通知されました。
復旧日時:{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
ホスト名:{HOST.NAME1}
アラート名:{EVENT.RECOVERY.NAME}
障害継続時間:{EVENT.DURATION}
最新データ値:{ITEM.LASTVALUE1}


WS0062.JPG

3-4 ユーザーの設定


WS0045.JPG


WS0046.JPG


WS0047.JPG
2-2⑥を入力


WS0052.JPG

3-5 アクションの設定

WS0049.JPG
WS0057.JPG
WS0050.JPG
※名前は任意
※実行条件は任意
WS0051.JPG
WS0055.JPG
WS0056.JPG

4 参考文献(偉大なる先人たち)

https://hacknote.jp/archives/6587/
https://qiita.com/shin1x1/items/0350db7a8c2752b99e5c
https://qiita.com/akikinyan/items/94c2a9dbe37fc90b2658
https://qiita.com/t-yasukawa/items/ae0386d028afea5cfb7a

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0