フォト

関連情報

X(旧Twitter)やってます!!

2024年10月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
無料ブログはココログ

« 複数のサーバのデータを1台のサーバにまとめてレプリケーションしたい! | トップページ | NICを複数搭載して、Replication専用回線を設定可能? »

2012年5月29日 (火)

ARCserve RHAからメールを受け取る!(2/3)

マサオミです。

東京は春を通り越して夏の陽気が出てきました。まだ湿度が低いので過ごしやすい。今年は電力不足が深刻なので猛暑だけは勘弁いただきたいです。

[PR] Arcserve のオフィシャル Facebook ページ

https://www.facebook.com/arcservejp

Arcserveに関連するクイズや Facebook のみの情報発信に加え、皆さまとのコミュニケーションの場しても活用していきたいと考えておりますので、是非「いいね!」クリックしてください!

 

さて、前回は ARCserve RHA でのメール通知の設定方法について解説しましたが、 今回はその続きになります。

第1回: 標準機能によるメール通知方法
第2回: スクリプトを使ったメール通知方法(←本日はここ)
第3回: スクリプトを使ったメール通知方法(応用編)

 

前回解説した Arcserve RHA の標準機能では、複数のイベントをまとめた通知が行われます。そのため、「同期」や「スイッチオーバー」のような特定のイベントが終わったときだけ知らせてほしい、という用途では使いにくいという事もあるかもしれません。

 

では、どうしたらいいか。

ARCserve RHA は通知設定で「スクリプトの実行」をサポートしていますのでこれを利用しましょう。

以下でご紹介するスクリプトは簡単に編集・メール送信が行えるように PowerShell を利用しています。Windows Server 2008 以降では既に導入されているシェルスクリプトの環境なのでこれをそのまま利用します。

Windows Server 2008 R2 よりも前の OS ですと事前に設定する、ダウンロードするなどの準備が少々必要ですので、以下のブログ記事を参考にセットアップしてください。

<参考> CA PowerShell 講座 第1話: CA パワーシェルをインストールしよう
https://arcserve.txt-nifty.com/blog/2010/03/1-f573.html
【1】 Windows PowerShellのインストール を参照。
※CA ARCserve RHA PowerShellは今回インストールの必要はありません

 

メールを送信するスクリプトの作成

では今回利用するスクリプトを準備します。拡張子は .ps1 にしておいてください。この .ps1 を好きな場所に保存します。 (今回は c:\scripts フォルダに sync-mail.ps1 ファイルとして保存)

$EmailFrom ="<差出人メールアドレス>"
$EmailTo ="<宛先メールアドレス>"
$SMTPUser ="<認証するユーザメールアドレス>"
$SMTPPass ="<認証パスワード>"
$SMTPPort = 587
$SMTPServer = "<メールサーバ名>"

$Subject = "RHAからの通知"
$Body = "同期が終了しました"
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, $SMTPPort)
$SMTPClient.EnableSsl = $false
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($SMTPUser, $SMTPPass)
$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)

スクリプトは同期終了後に「同期が終了しました」と本文に書かれたメールが飛んでくるという単純なものにしています。メッセージ部分は好きに書き換えてください。

またサブミッションポート 587番を利用し、SSL での接続はしない設定にしています。 SSL を有効にする場合には $SMTPClient.EnableSsl を $true に変えてください。

その他、$EmailFrom, $EmailTo, $SMTPUser, $SMTPPass, $SMTPServer なども適宜環境に合わせて変更してください。

 

PowerShell スクリプトの実行

で、後は ARCserve RHA マネージャ画面でこのスクリプトを指定すれば実行できます!

・・・・と簡単に言いたいところなんですが、残念ながら .ps1 ファイルの直接実行は ARCserve RHA ではできないんです・・・。

そこで、ちょっとした対策を行います。まず保存したスクリプトのショートカットを作ります。

mail2-1

 

作成したショートカットのプロパティを開き、[リンク先]の先頭部分に powershell と追記します。(例: powershell.exe c:\scripts\sync-mail.ps1)

mail2-2

 

上記は Windows Server 2008 R2 の設定なのでそれ以外の OS で PATH に指定されていない場合には powershell.exe の保存先のパスを直接指定してください。
(例: C:\Windows\system32\windowspowershell\v1.0\powershell.exe)

PowerShell で作ったスクリプトをダブルクリックで実行したい!という時にも利用できる方法なんで覚えておいて損はないと思います。

このようにするとファイルのアイコンのマークが PowerShell のものに変わったと思います。ここではショートカットの名前も元ファイルと同じ名前にしています。

mail2-3

 

さて、作成されたショートカットなんですが、このファイル自体の拡張子は .lnk です。 このショートカットファイルを ARCserve RHA マネージャの実行するスクリプトのパスを入力する画面で指定します。

このスクリプトは同期後にメール通知を行う、ということを想定していますので、「同期後にスクリプトを実行」を有効にして設定します。(例: C:\scripts\sync-notify.lnk)

mail2-4

 

この設定を行った後、シナリオを保存して実行すると、同期処理が終了するたびにメールによる通知が飛んできます。メッセージの部分を好きに書き換えていただくだけでその他の通知にも利用できます。

 

いかがでしたでしょうか?

このように ARCserve RHA からのスクリプト実行でも通知を受け取ることができ、SMTP 認証や OP25B が実施されている環境でも利用できます。 (ちなみに ARCserve Backupでも同様のスクリプトを作れば利用できますよ!)

ただ、この方法は事前に設定した内容のメールしか飛びません。ARCserve RHA 自体が発しているメールを受け取りたい、という場合にはもう少し工夫が必要です。次回は応用編ということでその辺りについて解説したいと思います。

 

それでは、See you in next TT . . .

« 複数のサーバのデータを1台のサーバにまとめてレプリケーションしたい! | トップページ | NICを複数搭載して、Replication専用回線を設定可能? »

技術情報」カテゴリの記事

Arcserve Replication / High Availability」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: ARCserve RHAからメールを受け取る!(2/3):

« 複数のサーバのデータを1台のサーバにまとめてレプリケーションしたい! | トップページ | NICを複数搭載して、Replication専用回線を設定可能? »