Create: 2013/03/15
LastUpdate: 2013/03/15
ここでは、下図の環境を使用します。
環境の詳細を知りたい場合は、メニューに戻って構築手順を参照してください。
JobScheduler では、ジョブの実行結果などをメールで送信することができます。
今回は、ジョブが正常終了したらメールを送信してみます。
1.JobScheduler のメール設定
JobScheduler が使用する SMTPサーバなどメール関連の設定は、Managerサーバの以下のファイルで設定します。
- /home/jobs/sos-berlin.com/jobscheduler/scheduler/config/factory.ini
メールキューには、送信に失敗したメールが保管されます。
; send mail with job log in case of error (yes|no, default: no) mail_on_error = yes ; send mail with job log in case of errors and warnings (yes|no, default: no) mail_on_warning = yes ; send mail with job log in case of success (yes|no, default: no) mail_on_success = no ; send mail with job log in case of process steps (yes|no|1|2|n, default: no) mail_on_process = no ; sender and recipients for mails with job logs log_mail_from = jobs@localhost log_mail_to = jobs@localhost log_mail_cc = log_mail_bcc = ; mail server hostname smtp = localhost ; directory in which mails are stored if your mail server is not available mail_queue_dir = ${SCHEDULER_DATA}/mailSMTPサーバのポート番号、認証アカウントは、以下のパラメータで指定します。
[smtp] mail.smtp.user = mail.smtp.password = mail.smtp.port = 25今回は、上記設定のように、SMTPサーバに localhost (Manager) の postfix を使用します。
また、システム全体のデフォルトとして、ジョブのエラー、ワーニング時に localhost (Manager)の jobsユーザにメールを送信するよう設定します。
ちなみに、メールの宛先などは、あとでジョブ定義するときに、ジョブごとに設定できます。
2.Postfixの設定
今回は、ManagerサーバのPostfixは、CentOS6のデフォルト設定で使用します。
3.DNS関連の設定
今回は、DNSサーバは使用せず、hosts で名前解決します。
/etc/resolv.conf には、何も定義しません。
/etc/hosts ファイルには、Managerサーバのホスト名を定義します。
定義内容は、以下のとおり。(赤字部分がManagerサーバ)
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.61 centos6 centos6.localdomain
ホスト名とIPアドレスの名前解決ができないと、JobSchedulerからのメール送信に失敗して、/var/log/maillog に以下のようなメッセージが記録されます。Mar 15 10:20:13 centos6 postfix/smtpd[12476]: connect from localhost[127.0.0.1] Mar 15 10:25:13 centos6 postfix/smtpd[12476]: timeout after HELO from localhost[127.0.0.1] Mar 15 10:25:13 centos6 postfix/smtpd[12476]: disconnect from localhost[127.0.0.1]
4.ジョブの設定
JOEで下図のように、[Job Settings] でメール送信の設定を行います。
今回は、ジョブが正常終了したら、"jobs@localhost" 宛てにメールするように設定します。
>
5.メールの確認
JOCでジョブを即時実行して正常終了するとメールが送信されます。
ジョブの即時実行の手順については、 メニュー を参照してください。
Manage サーバに jobsユーザでログインし、mail コマンドを実行すると、下図のように受信したメールの一覧を参照できます。
このままENTERすると、メールの内容が表示されます。
下図は、JobSchedulerから送信されたメールの内容です。
続けて読む場合はENTERします。
メール表示が終わると "&" プロンプトが表示されます。
"d" を入力してENTERするとメールが削除されます。
"q" を入力して ENTER すると終了します。