square.gif システムメンテナンス

homeicon.gif Print Page commentsicon.gif

データベースの保守

目次; 表示

このドキュメントは、データベースからのイベントメッセージを選択して削除する方法、dashboard データベースからレポートエントリーを選択して削除する方法、 ログファイルを整理するためにログローテートする方法を説明します。

Foundation データベースの保守 (GWCollageDB)

Foundation(GWCollageDB)データベースからのイベントメッセージの選択的削除

GWCollageDB データベースからある期日より古いイベントメッセージを選択的に削除するには、下記の手順を行います。

  1. ターミナルセッションを開き、 root としてログインします。

  2. 下記のコマンドで gwservices を停止することで、誰もシステムにログインしていないようにします:

/usr/local/groundwork/ctlscript.sh stop gwservices

  1. 下記のコマンドで、mysql コンソールを開きます:

mysql -u root -p

  1. 下記のコマンドを投入します:

use GWCollageDB

  1. 日付を指定した下記のコマンドを投入することで、特定のイベントメッセージを削除します。これは、2009年1月1日より前のイベントメッセージを削除します。

delete from LogMessage where ReportDate < '2009-01-01 00:00:00';

  1. exit と投入します。

  2. 下記のコマンドで、gwservices をリスタートします:

/usr/local/groundwork/ctlscript.sh start gwservices

インサイトレポート(dashboard)データベースの保守

インサイトレポート(dashboard)データベースからのレポートエントリの選択的削除

ある期日より古いインサイトレポート(dashboard)データベースからレポートエントリを選択的に削除するには、下記の手順を行います。

  1. ターミナルセッションを開き、root としてログインします。

  2. 下記のコマンドで gwservices を停止することで、誰もシステムにログインしていないようにします:

/usr/local/groundwork/ctlscript.sh stop gwservices

下記のコマンドで httpd を停止します:

/usr/local/groundwork/ctlscript.sh stop apache

  1. 下記のコマンドで、mysqlコンソールを開きます:

mysql -u root -p

  1. 下記のコマンドを投入します:

use dashboard

  1. 日付を指定した下記のコマンドを投入することで、特定のイベントメッセージを削除します。

これは、2009年1月1日より前の毎日のアラートエントリを削除します。

delete from measurements where TIMESTAMP < '2009-01-01';

これは、2009年1月1日より前の毎日のホスト可用性エントリを削除します。

delete from host_availability where DATESTAMP < '2009-01-01'

これは、2009年1月1日より前の毎日のサービス可用性エントリを削除します。

delete from service_availability where DATESTAMP < '2009-01-01'

これは、2009年1月1日より前の毎日のホストグループ可用性エントリを削除します。

delete from hostgroup_host_availability where DATESTAMP < '2009-01-01'

これは、2009年1月1日より前の毎日のホストグループのサービス可用性エントリを削除します

delete from hostgroup_service_availability where DATESTAMP < '2009-01-01'

  1. exit と投入します。

  2. 下記のコマンドで、gwservices をリスタートします:

/usr/local/groundwork/ctlscript.sh start gwservices

  1. 下記のコマンドで、httpd をリスタートします:

/usr/local/groundwork/ctlscript.sh start apache

ログローテーション

GroundWork Monitor を構成するパッケージは、ディスク上のさまざまの場所にログファイルを生成します。これは設計に依存しますが、何が起こっているかを知るためにパッケージが収集し保存したデータを使うことが多くの場合有効です。例えば、Nagios はログファイルをデフォルトのレポート生成に使います。

良くない点はログファイルがスペースをとり、ローテーションとして知られている、それらのファイルの定期的な掃除のため、Linuxユーティリティプログラムのためのさまざまな設定が必要なことです。

GroundWorkは、ほとんどの場合に機能するパラメータに従ってこれらのセッティングを調整しました。しかしながら、時々、ローテーションにログを追加したり削除したりする必要があるでしょう。例えば、パッケージが追加され、それがログファイルを生成するとしたら、ディスクが満杯になるのを防ぐために、それらのファイルはローテートされる必要があります。

ログローテーションの設定

全てのGroundWork固有のセッティングは、下記のファイルにあります:

/etc/logrotate.d/groundwork

このファイルは GroundWork Monitor がインストールされた時に作られ、アンインストール時に取り除かれます。このファイルは必要に応じて設定調整のために編集することできますが、ローテーション設定を調整する際は、root ユーザを使って下記のコマンドで必ずテストしてください:

logrotate -d /etc/logrotate.d/

デフォルテでローテートされるログファイル

下記のファイルはデフォルトで一日に一度の間隔でローテートされ、8日間古いファイルが保存されます:

/usr/local/groundwork/apache2/logs/access_log
/usr/local/groundwork/apache2/logs/error_log
/usr/local/groundwork/services/foundation/log/main
/usr/local/groundwork/foundation/container/logs/nagios2collage_hostgroupcheck.log

その他のファイル

下記のファイルはあなたの設定によって存在したりしなかったりします。これらが存在する場合、一日に一度ローテートされ、8日間古いファイルが保存されます:

/usr/local/groundwork/nagios/eventhandlers/process_service_perf.log
/usr/local/groundwork/var/log/snmp/snmptt.debug
/usr/local/groundwork/var/log/snmp/snmptrapd.log
/usr/local/groundwork/var/log/syslog-ng/ (all files)

下記のファイルは、Nagios ツールのデフォルトセッティングにより偶然に生成されるかもしれません。それらの設定は GroundWork の Nagios 導入ではデフォルトでは設定されませんが、オフでない場合それらは際限なく大きくなりディスクを満杯にする可能性があります。ユーザは、これらのファイルがデフォルトでは毎日ローテートされ、古いファイルはせいぜい1日あれば十分であることを知っておく必要があります。

/usr/local/groundwork/nagios/var/host-perfdata.dat
/usr/local/groundwork/nagios/var/service-perfdata.dat

Nagios ログファイル

最後に、Nagios ログファイルは Nagios によってアーカイブされますが、決して削除されません。これらのファイルは Nagios Reports ( Nagios システム)内でのレポート作成には有用です。これらは、特にNagiosツールのデフォルトのログ処理が state stalking(状態追跡)などのより多くの情報をログするように変更されると、巨大化してしまいます。そのため GroundWorkの設定では古いログファイルは、1ヵ月後に廃棄します。古いNagiosログファイルは下記の場所にあります:

/usr/local/groundwork/nagios/var/archives