監視
VPSクラウド

機能

お客さまのインスタンスで動作しているサービスが正常に動作しているかを監視する機能です。

従いまして、記載している設定手順は、各サービスが動作していることを前提として、記載しています。

サービス専用の監視システムから監視対象となるお客さまの仮想専用サーバに接続を確立させ、 監視対象のサービスが応答しなかった場合事前に設定したメールアドレスにアラートのメールを送信します。 応答がないことを検知したサービスが復旧した場合には復旧通知のメールを送信します。

監視機能はインスタンス、ロードバランサーのそれぞれに存在します。

[インスタンスの監視機能]

監視対象として設定できるサービスは以下の通りです。 (DNS)のみUDPのポート、その他のポートはTCPのポートに対して監視が行われます。

ポート番号はお客さまにて任意のポートを指定することが出来ます。初期状態では下記ポートが指定されます。

http及びhttpsについては監視対象のファイルを指定することが出来ます。また、それぞれ5つまで設定することが可能です。

  • (ftp)21
  • (ssh)22
  • (smtp)25
  • (DNS)53
  • (http)80
  • (pop3)110
  • (imap)143
  • (https)443
  • (submission)587
  • (mysql)3306
  • (postgreSQL)5432

[ロードバランサーの監視機能]

ロードバランサーを経由して、お客さまのインスタンスで動作しているサービスが正常に提供出来ているかを監視する機能です。

監視対象として設定出来る項目は下記の通りです。ロードバランサーで選択するプロトコルに応じてインスタンスプロトコルは決定されます。ポート番号は任意に設定が可能です。

ロードバランサープロトコルロードバランサーポートインスタンスプロトコルインスタンスポート
http任意http任意
https任意http任意
tcp任意tcp任意
ssl任意tcp任意

インスタンスの設定

ポート監視を開始する前に、監視対象となるインスタンスの設定を行っておいて頂く必要があります。 サービスごとにそれぞれ下記の設定を行って下さい。

監視用サーバー

202.229.157.108:(watch2.wk.arena.ne.jp)

からのアクセスを許可する必要があります。

インスタンスに割当てられているセキュリティグループ内で、該当サービス宛に 監視用サーバからのアクセスを許可するポリシー設定をしておく必要があります。

  • セキュリティグループポリシーの記載方法についてはセキュリティグループ ルールの記述方法をご参照ください。
  • 監視サーバからのアクセスを許可するポリシー設定についてインスタンス起動時に割り当てたセキュリティーグループに対し、以下のルールを追記してください。

監視対象としない設定は追記不要です。

#ftp
tcp:21,21,ip4:202.229.157.108/32
#ssh
tcp:22,22,ip4:202.229.157.108/32
#smtp
tcp:25,25,ip4:202.229.157.108/32
#dns
udp:53,53,ip4:202.229.157.108/32
#http
tcp:80,80,ip4:202.229.157.108/32
#pop3
tcp:110,110,ip4:202.229.157.108/32
#imap
tcp:143,143,ip4:202.229.157.108/32
#https
tcp:443,443,ip4:202.229.157.108/32
#submission
tcp:587,587,ip4:202.229.157.108/32
#mysql
tcp:3306,3306,ip4:202.229.157.108/32
#postgreSQL
tcp:5432,5432,ip4:202.229.157.108/32

[ ftp・ssh・smtp・pop3・imapを監視する場合 ]

ftp・smtp・pop3・imapについては該当のサービスを起動させておけば監視することが出来ます。

[ http・httpsを監視する場合 ]

ポート監視設定が初期状態の場合は監視Pathに「/」が指定されております。Apacheを起動させた上で /var/www/html ディレクトリに index.html という名前のファイルを置いておけば監視することが出来ます。 ファイルの内容はお客さまのコンテンツが書かれていても差し支えありませんし、空でも問題ありません。

ポート監視の設定にて監視用のPathを指定している場合は、指定したファイルを所定の位置に設置しておいて下さい。

[ DNSを監視する場合 ]

/etc/named.conf 内に [ include "/etc/named.rfc1912.zones"; ] が記載されている場合には、本設定の必要はございません。
お客さまの設定にて /etc/named.rfc1912.zones を include しない環境へ変更の場合は、本設定を実施ください。

監視用サーバ 202.229.157.108から localhost というドメイン名を 正引き検索した時に任意のIPアドレスを返す状態にしておいて下さい。

CentOS6をご利用のお客さまは、以下の設定が必要です。

  1. viなどのテキストエディタで /etc/named.conf ファイルを開いて下さい。
    viで /etc/named.conf ファイルを開くコマンドは以下の通りです。
    [root@localhost ~]# vi /etc/named.conf
    ファイルに以下の設定を追記して下さい。
    zone "localhost" {
            type master;
            file "named.localhost";
            allow-update { none; };
    };
  2. viなどのテキストエディタで localhost(named.localhost)のゾーンファイルを追加します。
    viで /var/named/named.localhost ファイルを開くコマンドは以下の通りです。
    [root@localhost ~]# vi /var/named/named.localhost
    入力画面が表示されたら、ファイルの内容を以下のように記述してファイルを上書き保存して下さい。
    $TTL    86400
    @               IN SOA  @       root (
                                            42              ; serial (d. adams)
                                            3H              ; refresh
                                            15M             ; retry
                                            1W              ; expiry
                                            1D )            ; minimum
                    NS           @
                    A            127.0.0.1
                    AAAA         ::1
  3. service named restart コマンドを実行し、ネームサーバの再起動を実行して下さい。

[ postgreSQLを監視する場合 ]

インターネットからの接続を受け付ける設定を行い、さらに監視用サーバ 202.229.157.108からnttpcwatchという名前のユーザでパスワードなしでログインできるように設定しておく必要があります。

初期状態の場合はPostgreSQLを起動させます。PostgreSQLの起動時にホストサーバ側の使用により以下のようなエラーが出力されますが、PostgreSQLの起動には問題ございません。

[root@localhost ~]# service postgresql start
[root@localhost ~]# Starting postgresql service: /etc/init.d/postgresql: line 114: 
echo: write error: Operation not permitted
                                                           [  OK  ]

以下のように設定すれば監視することが出来ます。
下から2番目の行は表示の都合上改行されていますが、実際には1行に続けて入力して下さい。

[root@localhost ~]# su - postgres
-bash-3.2$ createuser nagios
Shall the new role be a superuser? (y/n) y
-bash-3.2$ logout
[root@localhost ~]# echo "PGOPTS=-i" >> /etc/sysconfig/pgsql/postgresql
[root@localhost ~]# echo "host all nttpcwatch 202.229.157.108 255.255.255.255
trust" >> /var/lib/pgsql/data/pg_hba.conf

再起動時にもホストサーバ側の仕様により起動時と同様に以下のエラーが出力されますが、PostgreSQLの起動には問題ございません。

[root@localhost ~]# service postgresql restart
Stopping postgresql service:                               [  OK  ]
Starting postgresql service: /etc/init.d/postgresql: line 114: echo: write error: 
Operation not permitted
                                                           [  OK  ]

[ mysqlを監視する場合 ]

監視用サーバ 202.229.157.108からnttpcwatchという名前のユーザでログインできるように設定しておく必要があります。
初期状態の場合はMySQLを起動させ、以下のように設定すれば監視することが出来ます。

202.229.157.108を例とすると、

[root@localhost ~]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select User,Host,Password from user;
+--------+------------------------+----------+
| User   | Host                   | Password |
+--------+------------------------+----------+
| root   | localhost              |          |
| root   | localhost.localdomain  |          |
| root   | 127.0.0.1              |          |
|        | localhost              |          |
|        | localhost.localdomain  |          |
+--------+------------------------+----------+
5 rows in set (0.00 sec)

mysql> grant select on *.* to nttpcwatch@202.229.157.108;
Query OK, 0 rows affected (0.00 sec)

mysql> select User,Host,Password from user;
+------------+-------------------------+----------+
| user       | Host                    | Password |
+------------+-------------------------+----------+
| root       | localhost               |          |
| root       | localhost.localdomain   |          |
| root       | 127.0.0.1               |          |
|            | localhost               |          |
|            | localhost.localdomain   |          |
| nttpcwatch | 202.229.157.108         |          | 
+------------+-------------------------+----------+
6 rows in set (0.00 sec)

mysql> exit
Bye

となります。

ポート監視設定

インスタンスのポート監視設定

インスタンスの設定が完了したら、サーバー管理用コントロールパネルでポート監視設定を行ってください。 コントロールパネルにログインして「インスタンス > インスタンス」メニューから監視対象のインスタンスの「編集」ボタンをクリックします。

「ネットワーク監視項目」において「有効」にチェックを入れます。「メールアドレス」欄にはアラートのメールを送信するメールアドレスを入力して下さい。 メールアドレスは最大3つまで設定することが出来ます。

「プロトコル」からサービスを選択して有効にチェックを入れます。初期設定では「プロトコル」を選択した時点で該当プロトコルの有効にはチェックが入ります。

お客さまインスタンスの状況に応じて「Port」番号を任意の値に変更します。

「更新」ボタンをクリックします。 ボタンをクリックするとポート監視設定が完了となり、監視が開始されます。

監視を停止したい場合は同様の操作で停止したいサービスの有効欄のチェックを外して下さい。

ロードバランサーのポート監視設定

インスタンスの設定が完了したら、コントロールパネルでロードバランサーのネットワーク監視項目の設定を行なってください。コントロールパネルにログインして「アプライアンス > ロードバランサー」メニューから対象のロードバランサーの「編集」ボタンをクリックします。

「ネットワーク監視項目」において「有効」にチェックを入れます。「メールアドレス」欄にはアラートのメールを送信するメールアドレスを入力して下さい。 メールアドレスは最大3つまで設定することが出来ます。

「Path:」には監視対象となるファイルを指定して下さい。初期設定では監視Pathに「/」が設定されております。/var/www/html ディレクトリ配下のindex.htmlという名前のファイルに対して監視が始まります。