個人用ツール

Pandora:Documentation ja:Server Management

提供: Pandora FMS Wiki JP

移動先: 案内, 検索

Pandora FMS ドキュメント一覧に戻る

Pandora FMS サーバ管理

データベース管理

Pandora FMS infrastructure does not need external maintenance, but it is very important to purge old data, and maintain the database as much compacted as possible. There is an essential tool for the proper functioning of Pandora FMS which is in charge of carrying out these tasks. This tool is here:

Pandora FMS インフラストラクチャは外部メンテナンスを必要としませんが、古いデータを削除し、データベースをできるだけコンパクトに維持することが非常に重要です。 これらのタスクの実行を担当する Pandora FMS に不可欠なツールが以下にあります。

/usr/share/pandora_server/util/pandora_db.pl

Or here in case of Pandora FMS Enterprise version:

Pandora FMS Enterprise 版の場合は以下です。

/usr/bin/pandora_db

This tool, hereinafter pandora_db.pl is included in Pandora FMS server package, so it must be executed from a system where there is a Pandora FMS server installed. If there are two systems, one for the console and one for the server, pandora_db must be executed where Pandora FMS server is hosted. Pandora_db is a key tool for Pandora FMS to work properly, and that is why its execution is programmed in system cron tasks with an **hourly interval**. Its execution is configured within the file:

/etc/cron.hourly/pandora_db

このツール(以降 pandora_db.pl)は、Pandora FMS サーバパッケージに含まれているため、Pandora FMS サーバがインストールされているシステムから実行する必要があります。 コンソール用とサーバ用で 2つのシステムがある場合、Pandora FMSサーバがホストされている方で pandora_db を実行する必要があります。 Pandora_db は、Pandora FMS が適切に動作するための重要なツールです。そのため、システムの cron タスクで一時間ごとに実行するように設定されています。 以下のファイルで設定されています。

 /etc/cron.hourly/pandora_db

This tool performs all database maintenance tasks automatically:

このツールは、データベースの全てのメンテナンスを自動的に実行します。

  • Delete old data.
  • 古いデータの削除をします。
  • It compresses existing data, interpolating them at several intervals, so that graphics are the same but the space needed to store them is much smaller (this is one reason why Pandora FMS is able to process such an amount of information).
  • 既存のデータを圧縮し、いくつかの間隔を補間します。これにより、グラフは同じですが、それらを保存するために必要なスペースははるかに小さくなります(これが、Pandora FMS が大量の情報を処理できる理由の 1つです)。
  • It checks the consistency of the database for non-existing modules, or modules that are not used because they can not be started (these modules appear in the tactical view as uninitialized modules).
  • 存在しないモジュールのデータベースでの整合性や、初期化されていないために利用されていないモジュール (これらのモジュールは、未初期化モジュールとして表示されます) をチェックします。
  • It deletes the daily agent contact information. Pandora FMS does not need more than 24hr agent contact history, and if it builds up, it slows down database access.
  • エージェントの一日の接続情報を削除します。Pandora FMS は、24時間を越えるエージェント接続情報は必要としません。もし、それが増えると、データベースのアクセス速度が低下します。
  • In the enterprise version, it moves all old data to the standby history database.
  • エンタープライズ版では、全ての古いデータをスタンバイデータベースに移動します。

As mentioned before, pandora_db execution is configured in system cron tasks and although this execution is automatically included in Pandora FMS server installation, it is convenient to check it. Therefore, /etc/cron.hourly/pandora_db must exist and contain this line:

前述したように、pandora_db の実行はシステムの cron タスクで設定され、この実行は Pandora FMS サーバのインストールに自動的に含まれますが、確認すると良いでしょう。 /etc/cron.hourly/pandora_db が存在し、次の行が含まれている必要があります。

"/usr/share/pandora_server/util/pandora_db.pl" "/etc/pandora/pandora_server.conf" >/dev/null 2>&1

Or in Pandora FMS Enterprise version:

Pandora FMS Enterprise 版では以下の通りです。

"/usr/bin/pandora_db" "/etc/pandora/pandora_server.conf" >/dev/null 2>&1

It is equally important to check permissions and the file's owner. The appropriate file permissions would be 755, which can be granted by executing:

パーミッションとファイルの所有者を確認することも同様に重要です。 正しいパーミッションは 755 です。これは、次を実行することで付与できます。

chmod 755 /etc/cron.hourly/pandora_db

Regarding the owner, it must be "root" both for the user and group, which is set executing:

所有者に関しては、ユーザとグループ共に "root" である必要があり、次のように設定できます。

chown root:root /etc/cron.hourly/pandora_db

メンテナンスツールの手動実行

If necessary, it is possible to launch pandora_db execution manually as it was exposed in the previous section. Execute from a shell console the command:

必要に応じて、前のセクションで説明した pandora_db を手動で実行できます。 シェルコンソールからコマンドを実行します。

/usr/share/pandora_server/util/pandora_db.pl /etc/pandora/pandora_server.conf

Or in Pandora FMS enterprise version:

Pandora FMS Enterprise 版では次の通りです。

/usr/bin/pandora_db /etc/pandora/pandora_server.conf

It should show an output similar to this one:

次のような出力が表示されます。

Pandora FMS DB Tool 7.0NG.719 PS180221 Copyright (c) 2004-2015 Artica ST
This program is Free Software, licensed under the terms of GPL License v2
You can download latest versions and documentation at http://www.pandorafms.org

Pandora DB now initialized and running (PURGE=7 days, COMPACT=0 days, STEP=1) .

 [*] Pandora FMS Enterprise module loaded.

Starting at 2018-03-12 12:40:54
12:40:55 [PURGE] Deleting old extended session data.
12:40:55 [PURGE] Deleting old inventory data.
12:40:55 [PURGE] No data in tagente_datos_inventory.
12:40:55 [PURGE] No data to purge in tagente_datos.
12:40:55 [PURGE] Deleting old export data from tserver_export_data

12:40:55 [PURGE] Deleting old session data from tsessions_php

12:40:55 [PURGE] No data in tagente_datos_log4x.
12:40:55 [PURGE] No data in tagente_datos_string.
12:40:55 [PURGE] Deleting old event data at tevento table (More than 7 days).
12:40:55 [PURGE] Deleting old audit data (More than 7 days).
12:40:55 [PURGE] Deleting old SNMP traps (More than 7 days).
12:40:55 [ENTERPRISE] Deleting old policy queue entries (More than 7 days)...
12:40:55 [ENTERPRISE] Deleting invalid service elements...
12:40:55 [PURGE] Deleting old GIS data (More than 7 days).
12:40:55 [PURGE] Deleting pending delete modules (data table).
12:40:55 [PURGE] Deleting pending delete modules (status, module table).
12:40:55 [PURGE] Deleting old access data (More than 24hr)
12:40:55 [PURGE] No agent access data to purge.
12:40:55 [PURGE] Delete contents in report that have some deleted modules.
12:40:55 [PURGE] Delete contents in report that have some deleted agents.
12:40:55 [PURGE] Delete empty contents in report (like SLA or Exception).
12:40:55 [PURGE] Delete autodisabled agents where last contact is bigger than 30 days.
12:40:55 [PURGE] Deleting old netflow data.
12:40:55 [PURGE] Deleting old log data.
12:40:55 [PURGE] Deleting log data older than 90 days.
12:40:55 [PURGE] Deleting old special days.
12:40:55 [CHECKDB] Ignoring not-init data.
12:40:55 [CHECKDB] Checking database consistency (Missing status).
12:40:55 [CHECKDB] Checking database consistency (Missing module).
12:40:55 [CHECKDB] Updating empty aliases.
12:40:55 [INTEGRITY] Cleaning up group stats.
12:40:55 [INTEGRITY] Deleting orphan alerts.
12:40:55 [INTEGRITY] Deleting orphan modules.
[HISTORYDB] Moving data older than 5 days to the history DB...
[HISTORYDB] Moving events older than 5 days to the history DB...
12:40:55 [ENTERPRISE] Moving SNMP modules back to the Enterprise SNMP Server.
12:40:55 [ENTERPRISE] Dynamically updating critical min and max values.
Ending at 2018-03-12 12:40:55

Template warning.png

This may take hours in overloaded systems, so it is recommended to execute the process in the background.


Template warning.png

負荷が高いシステムでは数時間かかる場合があるため、バックグラウンドでプロセスを実行することをお勧めします。


To execute manually the maintenance tool and leave it in the background, execute:

手動でメンテナンスツールをバックグラウンド実行するには、次のようにします。

nohup /usr/share/pandora_server/util/pandora_db.pl /etc/pandora/pandora_server.conf

Or in Pandora FMS Enterprise version:

Pandora FMS Enterprise 版では次の通りです。

nohup /usr/bin/pandora_db /etc/pandora/pandora_server.conf

The process will take some time until it loads completely in the background. Then, you may close the shell console window, while the process will still be executed.

バックグラウンドでプロセスの実行には少々時間がかかります。プロセスの実行中でも、シェルこのソールを閉じることができます。

Info.png

In some installations the tool directory could change. The most common one is:

/usr/share/pandora_server/util/

In Pandora FMS previous versions, it could be found at:

/usr/share/pandora/util/


Info.png

インストールの状況によっては、ツールのディレクトリが変わります。ほとんどの場合は以下の通りです。

/usr/share/pandora_server/util/

Pandora FMS の以前のバージョンでは以下にあります。

/usr/share/pandora/util/


Template warning.png

It is very important to make sure you are using the updated tool version, and not that of a previous version. If you execute the program without arguments, it will show the tool version at the head of the message and it must match the version installed on the server.


Template warning.png

古いバージョンではなく、新しいバージョンのツールを使用していることを確認することが非常に重要です。 引数なしでプログラムを実行すると、メッセージの先頭にツールのバージョンが表示され、サーバにインストールしたバージョンが一致している必要があります。


データベースバックアップ

The command mysqldump will do a complete database dump of the table structure as well as its contents. This command has several options to do a backup, although the focus here will be its most basic usage. That means doing it from the same system where the database is hosted. Indicate the database name from which the backup will be done and the credentials to access it:

コマンド mysqldump は、テーブル構造とその内容の完全なデータベースダンプを行います。このコマンドには、バックアップを実行するためのいくつかのオプションがありますが、ここでは最も基本的な使用法に焦点をあてます。これは、データベースを実行しているのと同じホストから実行することを意味します。 バックアップが行われるデータベース名とそれにアクセスするための認証情報を指定します。

mysqldump -u <user> -p <data_base>

For instance, to backup "pandora" database and dump the result to a file execute:

例えば、"pandora" データベースをバックアップし、ファイルにダンプを出力するには次のようにします。

mysqldump -u root -p pandora > /backup/pandoradb_backup.sql

The result will be a database copy in the directory /backup/pandoradb_backup.sql.

結果として、/backup/pandoradb_backup.sql にデータベースのコピーが作成されます。

Having a backup performed this way, you may restore the database completely. The process is quite simple, just log in MySQL, create the database to restore and load the backup in that database. Following the previous example, just execute:

この方法でバックアップを実行するとデータベースを完全に復元できます。 復元処理は非常に簡単で、MySQL にログインし、データベースを作成して、そのデータベースにバックアップを復元およびロードします。 前のファイルを例にすると、次のように実行するだけです。

[root@pandorafms ~]# mysql -u root -p
mysql> create database pandora;
mysql> use pandora;
mysql> source /backup/padnoradb_backup.sql

Finally set configured user permissions again both in Pandora FMS console and server so they have total access to the database:

最後に、Pandora FMS コンソールとサーバの両方で設定済みのユーザ権限を再度設定し、データベースへのアクセス権を付与します。

grant all privileges on pandora.* to pandora@localhost identified by 'mypassword';

Template warning.png

It is important to bear in mind that this is JUST for performing a database backup/recovery and not any other files such as server setup.


Template warning.png

これは、データベースのバックアップ/リカバリを実行するのみであり、サーバの設定などの他のファイルに対するものではないことに注意してください。


Pandora FMS のバックアップとリカバリ

The previous point dealt with Pandora FMS database backup, and this one discusses the steps to back up and restore Pandora FMS completely.

前章では、Pandora FMS データベースのバックアップについて説明しましたが、ここでは、Pandora FMS 全体をバックアップおよび復元する手順について説明します。

There is a script in Pandora FMS server distribution that is useful to backup and restore Pandora FMS completely. This script is intended for backup and restoration in systems where the server and console are located in the same machine. If there are several components in your environment, then you should use the tool with the most adequate parameters for its use or modify them so they are tailored to your needs.

Pandora FMS サーバの配布パッケージには、Pandora FMS を完全にバックアップおよび復元するのに役立つスクリプトがあります。 このスクリプトは、サーバとコンソールが同じマシン上にあるシステムでのバックアップと復元を目的としています。コンポーネントが複数に分かれた環境の場合は、適切なパラメーターでツールを使用するか、ニーズに合わせてツールを調整する必要があります。

In order for it to carry out its tasks, this script needs to be executed as root.

この処理を実行するには、スクリプトを root 権限で実行する必要があります。

This script is located at:

スクリプトは以下にあります。

/usr/share/pandora_server/util/pandora_backup.sh 

If it is executed without parameters, it will provide some help:

引数無しで実行すると、ヘルプを表示します。

Pandora FMS Command line backup tool. http://www.pandorafms.org
(c) 2009 Sancho Lerena <slerena@gmail.com>, Artica Soluciones Tecnologicas

Syntax:
		-c Path to Pandora FMS console, p.e: /srv/www/htdocs/pandora_console
		-d Destination path for backup file. p.e: /tmp
		-s Source filename for backup restore. p.e: /tmp/pandorafms
		-f Restore also files
		-q Quiet. No output message (used for scripts/cron)
 		-b No database backup/restore


Please BE SURE TO USE RESTORE (-s) option. This will OVERWRITE ALL your
PandoraFMS install, including files, configuration and data. Please backup first!

This script is designed to back up and restore the following components:

このスクリプトは、次のコンポーネントのバックアップとリストアをするように設計されています。

  • Server Configuration File(s).
  • サーバ設定ファイル
  • Files waiting for execution, and also agent remote configuration files.
  • 処理待ちのファイルおよび、エージェントのリモート設定ファイル
  • Complete DB.
  • DB 全体
  • Complete WEB Console.
  • ウェブコンソール全体

Backup source and destination options

バックアップ元とバックアップ先オプション

This script obtains the credentials to have access to the DB directly from the WEB console configuration. Is because of this that you should go, with the -cparameter the complete path to the WEB console. This same parameter is used also to show it where it will find the WEB console to do its backup.

このスクリプトは、ウェブコンソールの設定ファイルに設定されている DB のアクセス情報を利用します。そのため、ウェブコンソールの設定ファイルのパスを -c オプションで指定する必要があります。 このパラメータは、ウェブコンソールのバックアップを取得するためにも利用されます。

The backup's destination is specified with the -d parameter. The compressed backup file will be lodged in that path, with a name similar to pandorafms_backup_xxxxxxx.tar.gz.

パックアップは、-d オプションで指定します。バックアップファイルが pandorafms_backup_xxxxxxx.tar.gz というファイル名で圧縮されて置かれます。

That way the following command can perform a full environment backup

そのようにして、次のコマンドは完全な環境バックアップを実行します。

/usr/share/pandora_server/util/pandora_backup.sh -c /var/www/html/pandora_console/ -d /tmp/

With the -b parameter the database backup can be prevented:

-b オプションを付けるとデータベースのバックアップを行いません。

/usr/share/pandora_server/util/pandora_backup.sh -c /var/www/html/pandora_console/ -d /tmp/ -b

Database restore

データベースリストア

To restore the database with the script, replace the parameter -d by -s, indicating in this particular case the path to the backup:

スクリプトでデータベースをリストアするには、パラメーター -d-s に置き換えて、バックアップ先のパスを指定します。

/usr/share/pandora_server/util/pandora_backup.sh -c /var/www/html/pandora_console/ -s /tmp/pandorafms_backup_2018-03-12-15-16-53.tar.gz

This is the default restoration, with no directories included.

これは、ディレクトリを含まないデフォルトのリストアです。

Database and directory restore

データベースとディレクトリのリストア

The -f option allows restoring backup files (overwriting the current ones). Since overwritting current configuration files could have serious consequences, use -f if you want to do a backup recovery and you want it to restore all Pandora FMS files (console and server).

-f オプションを使用すると、バックアップファイルを復元できます(現在のファイルを上書きします)。 現在の設定ファイルを上書きすると深刻な結果になる可能性があるため、バックアップリカバリを実行し、すべての Pandora FMS のファイル(コンソールおよびサーバ)を復元する場合は、-f を使用します。

/usr/share/pandora_server/util/pandora_backup.sh -c /var/www/html/pandora_console/ -s /tmp/pandorafms_backup_2018-03-12-15-16-53.tar.gz -f

Template warning.png

Remember restoring user permissions to the database with the grant command.


Template warning.png

grant コマンドを使って、データベースのユーザ権限の復元を忘れないようにしてください。


File Restoration (not database)

ファイルのリストア(データベースではない)

Same as with the previous option, it is possible to restore only the files, without including the database. To do it, add the -boption to the previous execution.

前のオプションと同じように、データベースを含めずにファイルのみを復元できます。 それを行うには、上記の実行例に -b オプションを追加します。

Data Restoration, without Files

ファイルを除くデータのリストア

It is the default option. For doing this, you will not have to use neither the -b option nor the -f option.

これがデフォルトのオプションです。 これを行うには、-b オプションも -f オプションも使用する必要はありません。

/usr/share/pandora_server/util/pandora_backup.sh -c /var/www/html/pandora_console/ -s /tmp/pandorafms_backup_2018-03-12-15-16-53.tar.gz -f -b


利用例

Create backup

バックアップの作成

Execute as root:

root で以下を実行します。

/usr/share/pandora_server/util/pandora_backup.sh -c /var/www/pandora3 -d /tmp/ 

It will return something similar to this:

次のようなメッセージが表示されます。

Backup completed and placed in /tmp//pandorafms_backup_2018-03-12-15-33-13.tar.gz

This means that the backup is at /tmp//pandorafms_backup_2018-03-12-15-33-13.tar.gz.

これは、バックアップが /tmp//pandorafms_backup_2018-03-12-15-33-13.tar.gz にできたことを意味します。

Restoring Backup

バックアップからのリストア

To restore the backup automatically, you need a console with the authentication credentials on the database correctly defined.

自動でバックアップからリストアするために、コマンドラインからデータベースへアクセスできる権限が設定されていると仮定します。

Execute:

実行:

/usr/share/pandora_server/util/pandora_backup.sh -c /var/www/html/pandora_console/ -s /tmp/pandorafms_backup_2018-03-12-15-33-13.tar.gz -f 

It will give back something similar to:

次のような表示がされます。

Detected Pandora FMS backup at /tmp/pandorafms_backup_2018-03-12-15-33-13.tar.gz, please wait...
Dropping current database
Restoring backup database
Restoring files and configuration
Done. Backup in /tmp/pandorafms_backup_2018-03-12-15-33-13.tar.gz restored

Restoring Backup in case of disaster

障害時におけるバックアップからのリストア

If you have lost the Pandora FMS console, but you have a backup generated by this tool, then first restore the console directory. So, decompress manually its backup:

Pandora FMS コンソールが障害により異常状態になった場合、このツールでバックアップを取得していれば、コンソールをリストアすることができます。そのためには、次のようにバックアップファイルを手動で展開します。

cd /tmp
tar zxvf pandorafms_backup_2018-03-12-15-33-13.tar.gz

This will decompress your WEB console full directory in /tmp. In case of the generated backup of the previous example, it creates a directory named:

これより、ウェブコンソールのファイルが /tmp ディレクトリに展開されます。上記の例のバックアップの場合、次のようなディレクトリが作成されます。

/tmp/var/www/html/pandora_console

Copy the content of all that directory to to your web publication directory, which may vary depending on your distribution:

このディレクトリ内の全てのファイルをウェブコンソールのディレクトリ (利用しているディストリビューションにより異なります) にコピーしてください。

cp -R /tmp/var/www/html/pandora_console /var/www/html

Then restore the backup as usual.

以上でバックアップからリストアされ使えるようになります。

Pandora FMS サーバの手動起動・停止

To start and / or stop the server manually Pandora FMS is running the following in a console shell':

Pandora FMS サーバの手動での起動・停止は、コマンドラインから次のように実行します。

Stop daemon:

デーモンの停止:

/etc/init.d/pandora_server stop

Start daemon:

デーモンの起動:

/etc/init.d/pandora_server start

Restart daemon:

デーモンの再起動:

/etc/init.d/pandora_server restart

Pandora FMS の Watchdog 実装

In the repository there is a small script that is used as a "watchdog" (Watchdog). This script performs a monitoring Pandora (who monitors who monitored?). Thus we can perform a recovery operation (trying to lift Pandora), and if that fails, we can tell the event.

リポジトリには、"watchdog" として使える小さなスクリプトがあります。このスクリプトは Pandora をモニタリングします。Pandora がダウンした場合、それを起動させ、通知することができます。

/usr/bin/pandora_watchdog

#!/bin/bash
# Copyright (c) 2005-2012 Artica ST
# Author: Sancho Lerena <slerena@artica.es> 2009
# Licence: GPL2
#
# daemon_watchdog
#
# Generic watchdog to detect if a daemon is running. If cannot restart, execute
# a custom-user defined command to notify daemon is down and continues in
# standby (without notifying / checking) until daemon is alive again.

# Default configuration is for Pandora FMS Server daemon

# =====================================================================
# Configuration begins here. Please use "" if data contain blank spaces

export DAEMON_WATCHDOG=pandora_watchdog.sh
# DAEMON_WATCHDOG: Name of this script. Used to check if its running already

export DAEMON_CHECK="/usr/bin/pandora_server /etc/pandora/pandora_server.conf"
# DAEMON_CHECK: Daemon monitored, please use full path and parameters like
#               are shown doing a ps aux of ps -Alf

export DAEMON_RESTART="/etc/init.d/pandora_server restart"
# DAEMON_RESTART: Command to try to restart the daemon

export DAEMON_DEADWAIT=90
# DAEMON_DEADWAIT: Time this script checks after detect that
#                  daemon is down before to consider is really down. 

export DAEMON_ALERT="/usr/bin/pandora_alert"
# DAEMON_ALERT: Command/Script executed if after detecting daemon is down,
#               and waiting DAEMON_DEADWAIT, and daemon continues down.

export DAEMON_LOOP=7
# DAEMON_LOOP: Interval within daemon_wathdog checks if daemon is alive.
#              DO NOT use values under 3-5 seconds or could be CPU consuming.
#              NEVER NEVER NEVER use 0 value or gets 100% CPU!.

# Configuration stop here
# =====================================================================

# Check if another instance of this script

RUNNING_CHECK=`ps aux | grep "$DAEMON_WATCHDOG" | grep -v grep |wc -l`
if [ $RUNNING_CHECK -gt 2 ]
then
        echo "Aborting, seems that there are more '$DAEMON_WATCHDOG' running in this system"
        logger $DAEMON_WATCHDOG aborted execution because another watchdog seems to be running
        exit -1
fi


# This value always must be 0 at start. Do not alter
export DAEMON_STANDBY=0

# This function replace pidof, not working in the same way in different linux distros
function pidof_daemon () (
        # This sets COLUMNS to XXX chars, because if command is run
        # in a "strech" term, ps aux don't report more than COLUMNS
        # characters and this will not work.
        COLUMNS=300
        DAEMON_PID=`ps aux | grep "$DAEMON_CHECK" | grep -v grep | tail -1 | awk '{ print $2 }'`
        echo $DAEMON_PID
)

# Main script

if [ ! -f `echo $DAEMON_CHECK | awk '{ print $1 }'` ]
then
        echo "Daemon you want to check is not present in the system. Aborting watchdog"
        exit
fi

while [ 1 ]
do

        DAEMON_PID=`pidof_daemon`
        if [ -z "$DAEMON_PID" ]
        then

echo "Checkpoint #1 $DAEMON_PID "

                if [ $DAEMON_STANDBY == 0 ]
                then

                        # Daemon down, first detection
                        # Restart it !

                        logger $DAEMON_WATCHDOG restarting $DAEMON_CHECK
                        $DAEMON_RESTART 2> /dev/null > /dev/null

                        # Just WAIT another DAEMON_DEADWAIT before consider it DEAD

echo "Going to DAEMON_DEADEWAIT"

                        sleep $DAEMON_DEADWAIT
                        DAEMON_PID=`pidof_daemon`

                        if [ -z "$DAEMON_PID" ]
                        then

                                # Is dead and can't be restarted properly. Execute alert

echo "I cannot startup again the process"

                                logger $DAEMON_WATCHDOG $DAEMON_CHECK is dead, alerting !
                                $DAEMON_ALERT  2> /dev/null > /dev/null

                                # Watchdog process puts in STANDBY mode until process get alive again
                                logger $DAEMON_WATCHDOG "Entering in Stabdby mode"

                                DAEMON_STANDBY=1
                        fi
                fi
        else

echo "Checkpoint #1B $DAEMON_PID "

                DAEMON_STANDBY=0
        fi

        sleep $DAEMON_LOOP
done

/usr/bin/pandora_alert

This is the script that acts when the watchdog process cannot start the process that monitors (pandora). In our case, besides alert by SMS, it disables Tentacle.

このスクリプトは、watchdog プロセスがモニタリングしているプロセス (pandora) を起動できなかった場合に実行されます。我々の場合、SMS でアラートを発信し Tentacle を停止するようにしています。

There will be given rights with chmod 750 / usr / bin / pandora_alert

パーミッションは、chmod 750 /usr/bin/pandora_alert のように設定します。

#!/bin/bash
sendsms +34458474843 "Pandora FMS Server stopped and can't be started"
/etc/init.d/tentacle_serverd stop

Watchdog 起動

nohup /usr/bin/pandora_watchdog &

注意点

Having a watchdog running on the system can cause unpleasant consequences if we do not consider that there is a watchdog. If for example, we want to make a Pandora to disconnect maintenance, the watchdog will automatically rise again, so we will go "crazy" if we do not stop watchdog first.

watchdog が動作している場合は、それが動いているということを認識しておく必要があります。例えば、Pandora をメンテナンスのために停止したい場合でも、停止すると watchdog が自動的に再起動してしまいます。そのため、このような時は watchdog を先に停止しておく必要があります。

ヒストリデータベース

A history database is a database where old module data is moved to make the main Pandora FMS database more responsive for everyday operations. That data will still be available seamlessly to the Pandora FMS console when viewing reports, module charts etc.

ヒストリデータベースは、メインの Pandora FMS データベースの応答を良くするために、そこから古いモジュールデータを移動させ保存しておくためのものです。データは、レポートやモジュールグラフの参照時に Pandora FMS コンソールでシームレスに利用できます。

ヒストリデータベースの設定

To configure a historical database, it is necessary to have a new server in which to host it (different from the one of the main database). Once you have that server where MySQL is installed, follow these steps:

ヒストリデータベースを設定するには、それを格納する(メインのデータベースとは異なる)新たなサーバが必要です。MySQL をインストールしたサーバを準備したら、以下の手順を実行します。

  • Create the new history database.
  • 新たなヒストリデータベースを作成します。
[root@pandorafms ~]# mysql -u root -p
mysql> create database pandora_history;
  • Create the Pandora FMS database schema. You can use the script /var/www/html/pandora_console/pandoradb.sql included in Pandora FMS console, copying it to the historical database server:
  • Pandora FMS データベーススキーマを作成します。Pandora FMS コンソールと共に提供されている /var/www/html/pandora_console/pandoradb.sql が利用できます。それをヒストリデータベースサーバへコピーします。
cat pandoradb.sql | mysql -u user -p -D history_db
  • Grant permissions to a user which will be used from the Pandora FMS server and console to send and check historical data:
  • ヒストリデータベースにアクセスできるように Pandora FMS サーバとコンソールで利用するユーザのパーミッションを設定します。
GRANT ALL PRIVILEGES ON pandora_history.* TO 'user'@'%' IDENTIFIED BY 'password';
  • In Pandora FMS console, go to Setup> Setup> History database and configure the host, port, database, user and password to access the historical database.
  • Pandora FMS コンソールにて、設定(setup) -> ヒストリデータベース(History database) を選択し、データベースのホスト名、ポート番号、データベース名、ユーザ名、パスワードを入力します。


ファイル:History db.png


The last fields of this form (Days, step and delay) will define the way in which the data will be sent to the historical database, that is, the oldest data (those with more Days) will be moved to the historical database in blocks of made of rows (Step) waiting for seconds (Delay) between one block and the next to avoid overloads.

このフォームの最後のフィールド(Days, step, delay)は、どのデータをヒストリデータベースへ送るかを定義します。Days に指定した日より古いデータを、Step に指定した行ブロックごとにヒストリデータベースに移動します。高負荷になることを防ぐために、一つのブロックを処理したあとは、次の処理までに Delay に指定した時間待ちます。

In the same screen, it is also possible to decide whether to send the events with more Event days to the historical database, although it must be taken into account that including the events will considerably increase the growth rate of the historical database, and that these will only be consulted when generating reports, not in the event view.

同じ画面で、イベント日数(Event days) に指定するイベントの履歴をヒストリデータベースに送信するかどうかを設定することもできます。ただし、イベントを含めるとヒストリデータベースが大幅に大きくなることを考慮する必要があります。また、このデータはイベント表示ではなく、レポートの生成時にのみ参照されます。

Info.png

The historical database is a feature of the Enterprise version that uses the /usr/bin/pandora_db binary to transfer data


Info.png

ヒストリデータベースの機能は Enterprise 版の機能で、データを転送するのに /usr/bin/pandora_db バイナリを用います。


ヒストリデータベースの削除と圧縮設定

History database is supposed to contains "all history data", but if you want to delete old data, or compact them, you will need to execute pandora_db script with a "fake" configuration data, to let it think is the "normal" behaviour. To do this, you need to enter some data in your History Database.

ヒストリデータベースは、"過去の全データ" を保存することを想定しています。しかし、古いデータを削除したり圧縮したい場合は、pandora_db スクリプトを通常の DB に対する動作に見せかけて実行する必要があります。そのためには、ヒストリデータベースに何らかのデータが入っている必要があります。

First, you need to "recreate" a functional table values in tconfig, with useful values to be used by pandora_db tool. Use this SQL queries ON YOUR history database to create a minimal configuration for the behaviour of the pandora_db running against history database. You fist, need to connect your database, using mysql CLI tool.

最初に、pandora_db ツールによって利用できるように、tconfig テーブルを適切な値を入れた状態で用意する必要があります。pandora_db の実行に必要な最小限の設定を行うために、ヒストリデータベースに対して以下の SQL を実行します。まずは、mysql の CLI を利用して、データベースに接続する必要があります。

This is an example, replace values as you needed (but let history_db_enabled to zero):

以下が例です。値は必要に応じて書き換えてください。(ただし、history_db_enabled は 0 にしてください)

INSERT INTO `tconfig` VALUES (1,'days_purge','180');
INSERT INTO `tconfig` VALUES (2,'history_db_enabled','0');
INSERT INTO `tconfig` VALUES (3,'days_compact','120');
INSERT INTO `tconfig` VALUES (4,'step_compact','1');
INSERT INTO `tconfig` VALUES (5,'event_purge','180');
INSERT INTO `tconfig` VALUES (6,'string_purge','180');

This means data in history is stored for 6 months (starting from NOW), and compacted from 4th month. If you have 1 month of data in your "main" database, you will have a total of 6 months of data, because the last month is coming from the main database, and the other five from the history database. You can put any value here, there is no limit of data storage in history database. Just remember, history database MUST BE IN A DIFFERENT PHYSICAL SERVER, not in the same host/system where is the main database and/or running Pandora FMS server or console.

これは、ヒストリデータベースに(現在からさかのぼること) 6ヶ月間データを保存し、4ヶ月前のデータを圧縮することを意味します。メインのデータベースに 1ヶ月間のデータがあるとしても、トータルで 6ヶ月間のデータとなります。なぜなら、直近 1ヶ月のデータはメインデータベースから読まれ、それ以外はヒストリデータベースから読まれるためです。これらには任意の値を設定できます。ヒストリデータベースにはデータ量の上限はありません。ただし、ヒストリデータベースは、メインデータベースおよび Pandora FMS サーバやコンソールが動作しているマシンとは物理的に異なるマシンに配置しなければいけないことを理解してください。

Second, you need to create an aditional pandora_server.conf file, use this "small version" to create your own (replace the values for your history database values), name it /etc/pandora/pandora_server_history_db.conf :

次に、追加の pandora_server.conf ファイルを作成する必要があります。以下に示す簡単な例を利用して(各値は実際のヒストリデータベースに合わせて書き換えてください) /etc/pandora/pandora_server_history_db.conf として作成してください。

dbengine mysql
dbname pandora4_history
dbuser pandora4_history
dbpass 1234
dbhost 192.168.50.23
log_file /var/log/pandora/pandora_db_history.log


Now you can execute pandora_db tool against the "fake" configuration:

以上で、通常の DB に対する処理に見せかけた設定を使って pandora_db を実行することができます。

/usr/share/pandora_server/util/pandora_db.pl /etc/pandora/pandora_server_history_db.conf

The INSERT values can be also entered in the console as explained in the following link: Historical database maintenance options

また、設定値は以下に説明しているようにコンソールからも入力できます。ヒストリデータベースメンテナンスオプション

Info.png

This process SHOULD NOT affect your main operation because is running against a different database in a different server. The only possible delay should be if someone is trying to render a big ammount of data from history, that will take more time than usual.


Info.png

この処理は、メインのデータベースには影響しません。なぜなら、異なるサーバの異なるデータベースに対して行っているためです。ただし、ヒストリデータベースにおいて大量のデータ処理をしようとしている場合には、通常よりも応答が遅くなる可能性があります。