モニタリングサービスを使わないDBCS監視(死活監視)

こんにちは。Oracle Cloud Infrastructure(OCI)特集 編集部です。

今回は、DBCSの死活監視を行っていきます。
OCIにはモニタリングサービスと通知サービスがあり、サーバーのパフォーマンスを監視する機能と特定のメールアドレスに通知する機能になります。
しかし、モニタリングサービスはDBCSで利用することができない(2020/10時点)のでスクリプトを作成して代用します。
DBCSの死活監視を行うスクリプトとパフォーマンスを監視するスクリプトの2つを作成したいと思います。

  1. DBCSの死活監視
  2. DBCSのパフォーマンス監視

本記事では1. DBCSの死活監視を記載します。
2. DBCSのパフォーマンス監視は別の記事にて紹介します。

本記事での作業内容は、Windows(SMTP)サーバーとDBCSを作成し、DBCSの死活監視を行うスクリプトを作成します。その際、DBCSが停止した場合にSMTPサーバーを利用してメールを送信するスクリプトを作成、実行します。

【環境の全体図】

【環境】

  • Windows Server 2019 Standard Edition
  • DBCS Standard Edition
  • Windows 10(自宅PC)

【作業の流れ】

  • WindowsサーバーにSMTP機能の追加
  • DBCSの死活監視をするスクリプトの作成
  • スクリプトの実行

WindowsサーバにSMTP機能の追加


サーバーマネージャーを起動します。
起動後、「管理」→「役割と機能の追加」をクリックします。

役割と機能の追加ウィザードが表示されます。
次へをクリックします。

「サーバーの選択」、「サーバーの役割」の項目も「次へ」をクリックします。
クリック後、機能の項目が表示されるので「SMTP Server」にチェックを付け、「次へ」をクリックします。

「機能の追加」をクリックします。

機能が追加できましたら、「次へ」をクリックします。

インストールが完了しましたら、「閉じる」クリックします。

画面右上の「ツール」から「インターネットインフォメーションサービス(IIS)6.0マネージャー」をクリックします。

インターネットインフォメーションサービス(IIS)6.0マネージャーが表示されましたら、
SMTP Visual Server #1の「プロパティ」を開きます。

「アクセス」→中継の制限→「中継」をクリックします。

「追加」をクリックします。

SMTPの機能を追加したサーバーのIPアドレスを入力します。
「OK」をクリックします。


DBCSの死活監視をするスクリプトの作成


PowerShellで作成します。
監視対象にPingを打って反応なければメールを送信するスクリプトです。

  • スクリプト配置サーバー: Windowsサーバー
  • ファイル名: test.ps1
#サーバの指定
$TargetIP = "監視したいサーバーのIP"

$To   = "宛先メールアドレス"
$From = "送信元メールアドレス"
$SMTPSV   = "SMTPサーバーIP"
$PortNum  = "25"

#件名・本文を出力
$Subject   = "testmail"
$MailBody  = "testmail"

#Pingの実行
$pingAlive = Test-Connection -ComputerName $TargetIP -Quiet

#Pingの結果確認
if ($pingAlive -eq $True) {
	Write-Host ($TargetIP + '=PingOK')
} else {
	Write-Host ($TargetIP + '=PingNG')
	
	#メール送信
	Send-MailMessage -To $To -From $From -SmtpServer $SMTPSV -Port $PortNum -Subject "$Subject" -Body "$MailBody" -Encoding UTF8
}
    

スクリプトの実行


DBCSを停止させ、スクリプトを実行します。
実際にメールが飛んでいるか、確認します。  

テストメールが届いたので完了となります。


最後に


今回はモニタリングサービスを使わないDBCSの監視(死活監視)を行いました。
比較的簡単にスクリプトの作成はできますし、難しい設定などもなく監視することができました。
そのため、DBCSの死活監視を行いたい方は、是非試してみてください。