Pandora: Documentation ja: GIS

From Pandora FMS Wiki
Jump to: navigation, search

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

1 Pandora GIS

Pandora FMS 3.1 から、エージェントの位置を表示するための、位置情報およびインタラクティブマップをサポートしています。この機能はすべてオープンソースです。UNIXエージェントのみの機能です。

1.1 設定

1.1.1 エージェント設定

エージェントは、新たに位置データを送信することができます。agent.conf 内に、経度、緯度、高度および、位置の説明を設定できます。また、gis_exec で別途パラメータを設定するスクリプトを指定することもできます。これには、"緯度,経度,高度" というフォーマットの文字列を返すスクリプトのパスを指定します。

以下に設定例を示します。

# Agent position parameters
# Those parameters define the geographical position of the agent 

# gis_exec: Call a script that returns a string with "latitude,longitude,altitude"
# i.e.: 41.377,-5.105,2.365

#gis_exec /tmp/gis.sh

# latitude 
latitude 42.70456
# longitude
longitude -3.897187 
# altitude
altitude 600

# Position description
position_description Madrid, centro

1.1.2 サーバ設定

GIS 機能は、サーバで有効にする必要があります。activate_gis フラグを 1 に設定することにより、サーバが、エージェントから受け取った GIS 情報を処理するようになります。

位置情報により、Pandora FMS にエージェントの位置を保存することができます。しかし、このデータには高い正確性はありません。重要な違いを考慮することなく、近い位置の多くの異なるデータが保存されます。これを避けるために、location_error パラメータに 同じ 位置であると認識する距離を設定します。これは位置が変わったと認識する閾値です。エージェントから新たに受け取った位置データが、この距離 (メートル単位) 内であれば同じ位置であると認識し、指定した距離よりも離れていれば、位置が変わったと認識します。

自動検出サーバと位置情報

IP アドレスの位置情報データベースとその検索アルゴリズムを利用することにより、自動検出サーバは、検出したエージェントの位置を推測することができます。このために、MaxMind GeoIP GeoLiteCity フォーマットや、データベースのテーブルの組み合わせを利用します。

自動検出サーバの動作を定義する、2つの新たなパラメータがあります。'recon_reverse_geolocation_file' は、'MaxMind GPL GeoLiteCity.dat' を用いた逆ジオロケーションを含むファイルを指し示すのみに使われます。'recon_location_scatter_radius' は、検出したエージェントを、逆ジオロケーションアルゴリズムおよび 'recon_location_scatter_radius' のパラメータによって定義される範囲(メートル単位)に従い、指定された場所の周辺にランダムに配置するために利用されます。

また、Google API および Openstreet マップにより提供される位置情報変換 (リバースジオロケーション) を利用することもできます。Google のジオロケーションを有効にするには、google_maps_description を 1 に設定します。Openstreet マップのリバースジオロケーションを有効にするには、openstreetmaps_description を 1に設定します。

この機能を利用する場合は、十分注意してください。なぜなら、Pandora FMS サーバのパフォーマンスを低下させるためです。また、Google API および Openstreet マップを利用するためには、インターネットへ直接接続している必要があることに注意してください。もちろん、それらのサービスが動作している必要もあります

設定例:

# Flag to activate GIS (positional information for agents and maps). It's deactivated by default.
activate_gis 1

# Radius of the Error in meters to consider two GIS locations as the same location.
location_error 10

# Recon reverse geolocation file (databases containing the reverse geolocation information using
# the 'MaxMind GPL GeoLiteCity.dat' format).
# Comment it to disable the IP geolocation on agent creation.

recon_reverse_geolocation_file /usr/local/share/GeoIP/GeoLiteCity.dat

# Radius (in meters) of the circle in which the agents will be place randomly when found by a recon task.
# The center of the cycle is guessed by geolocating the IP.
recon_location_scatter_radius 1000

# This enables real time reverse geocoding using the Google Maps public API.
# This requires internet access and could have performance penalties because of having to process GIS
# information due the connection required to resolve all GIS input.

google_maps_description 1

# This enables real time reverse geocoding using OpenStreetMaps public API.
# This requires internet access and could have performance penalties because of having to process GIS
# information due the connection required to resolve all GIS input.
# You may alter the code to use a local or your own OpenStreetMaps server.

openstreetmaps_description 1

利用例:

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

プラグインのデフォルトパスは、/usr/share/pandora_server/util/agent_gis_update.pl ですが、任意の場所に配置することができます。



Ejemplo GIS.png



1.1.3 コンソール設定

コンソールで GIS 機能を利用するには、最初にメインの設定で有効にする必要があります。

Enable GIS.png

これにより、ユーザインタフェースに新たなメニューが追加されます。

1.1.3.1 GIS 利用マップ

設定で最初に行うことは、GIS 機能のマップを提供するマップサーバに、どれを使うかです。

利用マップにはいくつかの基本パラメータがあります。

Connection configuration basic.png

  • 利用マップ名(Connection name) は、マップ設定画面で利用マップを選択する時の名前です。
  • グループ(group) は、ACL に依存してマップビルダーに出てくる利用マップのフィルタに使います。
  • 選択可能な拡大率の数(number of zoom levels) はマップ上で定義します。
  • デフォルト拡大レベル(default zoom level) は、必須パラメータで、マップを開いたときの拡大レベルを指定します。(マップ上で再定義できます)

基本パラメータを設定したら、利用マップのタイプを選択する必要があります。タイプによりオプションが異なります。以下に、それぞれのタイプとオプションを示します。

1.1.3.1.1 Open Street マップ

Pandora FMS のデフォルトインストール状態では、Open Street マップ を利用するようになっています。これを使って直接 GIS 機能を確認することができます。ただし、Pandora FMS サーバが直接インターネットにアクセス出来なかったり、柔軟性や速度を求めてユーザ独自のマップサーバを利用したい場合もあるかもしれません。(出きることの詳細は Pandora:Current_development:Pandora_GIS_Backend を確認してください)

マップに、Open Street マップを利用するには、以下に示すように、画像サーバの URL のみをパラメータとして設定する必要があります。

Connection configruation openstreetmaps.png

例えば、次のように指定します。

http://tiles.example.com/${z}/${x}/${y}.png
1.1.3.1.2 Google マップ

Pandora FMS はまた、Google マップもサポートしています。これを利用するには、Pandora コンソールで利用する正しい key を Google から取得し、入力フィールドに設定する必要があります。(詳細は、Google マップ API ポリシー を参照)

Connection configruation goole.png

このキーで、ベースのマップの種類 (航空写真地形地図) を設定することができます。

1.1.3.1.3 静的画像

ほかには、マップとして静的画像の利用をサポートしています。この種類のマップを利用するには、画像ファイルは、EPSG:4326 である必要があります。

マップの定義に必要なパラメータは、画像の URL高さ および、マップ画像の位置情報 (経度緯度) と座標 () です。

Connection configruation static image.png

1.1.3.1.4 WMS サーバ

バージョン 7.0 ビルド 723 から、GeoServer の WMS サーバ(Web マップサービス)への接続を追加できるようになりました。それには、サービスが提供されているアドレスを入力し、そこから取得したいレイヤの名前を入力する必要があります。



Gis-connection-wms-server.png



GeoServer サーバの最小限のインストールと設定は、こちら を参照してください。

マップの中心とデフォルトの位置

マップ接続の最後は、位置情報を持っていないエージェントに対するマップの中心とデフォルトの位置の定義です。それらを定義するには、マップをプレビューし、マップをクリックして、'Change in the Map' セレクタで選択されているパラメータに応じて、このパラメータを設定します。

プレビューマップでは、左上の緑の矢印を使ってマップを動かし、'+' および '-' で拡大率を変更または '虫眼鏡' で最大の拡大率にすることができます。

入力ボックスに値を入れることによって、位置を設定することもできます。

Connection configruation set center default.png

すべての接続パラメータを設定したら、'保存(Save)' ボタンをクリックすることにより、マップビルダから利用できるように接続を保存できます。

1.1.3.2 GIS マップ

接続の設定を行うと、GIS マップ(GIS Map) で利用することができるようになります。

Gis map menu.png

定義済のマップを含む画面が表示されます。ここでは、名前をクリックすることによりマップを編集することができます。マップを参照するには、'表示' アイコンをクリックします。デフォルトマップを定義するにはラジオボタンでの選択をします。マップの削除には '削除' アイコンを使います。新規のマップを作製するボタンもあります。

Template warning.png

エージェントの位置を表示するエージェント表示でマップを利用できるようにするためには、管理者権限が必要です。

 


1.1.3.2.1 GIS マップの作成

マップ作成ページで最初に行うことは、マップ名 の設定と、定義されている 利用マップの指定 (後述するベースのレイヤとして、一つ以上を設定することができますが、同時には一つのみが有効です) です。利用マップを選択すると (デフォルトのマップを変更すると) 、Pandora FMS コンソールが、利用マップのデフォルトデータを利用したいかどうかを尋ねてきます。それを受け入れると、コンソールは全ての位置データ (中心の経度中心の緯度中心の高度デフォルトの経度デフォルトの緯度デフォルトの高度) を利用マップに設定されている値に設定 (更新) します。ユーザは デフォルトの拡大率 のみ設定する必要があります。キャンセルすると、これらのフィールドの変更は行われず、利用マップの設定のみが追加されます。

Gis map builder main.png

1.1.3.2.2 レイヤ定義

基本的なマップのパラメータを設定したら、どのエレメントをマップに表示するかを選択するためのマップのレイヤを定義します。(ただし、デフォルトマップではレイヤを定義する必要がありません。なぜならエージェントビューにおいて、エージェントの位置を表示するのに利用されるためです。)

それぞれのマップは、エージェントを表示するための 一つ以上のレイヤ を持っています。それぞれのレイヤは、グループに属するエージェント や、エージェント一覧 を表示することができます。これにより、それぞれのレイヤに表示するエージェントの設定は簡単です。

レイヤは、'表示' または '非表示' を定義できます。

  • エージェント追加のためにグループを選択します。



GIS grupo.png



  • または、エージェントを手動で追加します。



GIS agente.png



  • または、一つのエージェントのみを表現するグループを追加します。



GIS grupoU.png



Info.png

代表エージェントを持つレイヤにグループを作成したら、他のエージェントで同じグループは生成できません。

 


レイヤが定義されると、定義されたレイヤーの左の列に移動し、レイヤの削除、または編集が再度可能になります。 レイヤはマップ全体が保存されるまで完全に保存されません。

マップのレイヤ定義が完了したら、保存(save) ボタンにて全てを保存することができます。マップを編集する場合は、更新(update) ボタンが表示されます。

1.2 操作

少なくとも一つのマップを定義すると、GIS 機能を使い始めることができます。

1.2.1 GIS マップ

aGIS マップメニューは、すべての定義済マップを表示します。それぞれのリンクは、GIS マップビルダー で定義されたパラメータを使ってマップを開きます。

Gis maps menu.png

1.2.1.1 マップの移動

左上にマップ操作のための、4つの緑の矢印があります。それぞれの方向の矢印をクリックすることにより、マップを動かすことができます。+- は、拡大率を増減させるアイコンです。また、ズームバー で直接設定したい拡大率を選択することができます。

マップをドラッグすることによっても、動かすことができます。

マップに表示されているエージェントは、クリックすることができ、ポップアップでエージェントの詳細情報が表示されます。追加情報も表示され、エージェントの名前はエージェントビューへのリンクになっています。ポップアップは赤い×印をクリックすると閉じます。

また、エージェントの階層構造 と呼ばれるシステムに定義された特別のレイヤがあります。このレイヤが表示状態になっている場合、エージェントとその親 (両方が表示状態の場合) の間を赤い線でつなぎます。

1.2.1.2 隠す / 表示する / レイヤの選択

右側の緑の背景に白の + をクリックすると、レイヤの操作パネルが開きます。緑色のボックス が表示され、ベースのレイヤ (利用マップが一つ以上定義されている場合) および、表示するレイヤを選択することができます。

1.2.1.3 フィルタ

マップの上にはまた、エージェントの状態表示をフィルタするための 5つのボタンがあります。

  • ボタンは、正常 状態のエージェントを表示します。
  • グレー ボタンは、不明 状態のエージェントを表示します。
  • 黄色 ボタンは、警告 状態のエージェントを表示します。
  • ボタンは、障害 状態のエージェントを表示します。
  • 全て(All) ボタンは、状態に関わらずレイヤに定義されているエージェント全てを表示します。

1.2.1.4 マップの更新

フィルタボタンの隣に、マップの更新間隔を設定する 更新(Refresh) というコンボボックスがあります。マップは、指定した間隔でエージェントを更新するために、[AJAX] を呼び出します。

1.2.1.5 マップ編集と全画面

マップの上にある最後の 2つのボタンは、マップを編集するための、GIS マップビルダー(GIS Map Builder) へのリンクと、マップを全画面表示させるためのボタンです。

Gis maps default all controls.png

1.2.2 エージェントビュー

Pandora FMS コンソールのエージェントビューにもまた、新たな GIS 機能があります。

まず最初に、メイン画面でエージェントの 経度緯度高度 を表示します。

1.2.2.1 GIS 履歴表示

トップバーに、エージェントの GISビュー を表示するためのボタンがあります。(GIS が有効な場合)

ここで、デフォルトマップでのエージェントの現在の位置が表示されます。また、エージェントの過去の位置の履歴およびマップ上に位置のパスが表示されます。

マップにおけるそれぞれの位置は、ドット で表現されます(現在の位置は、エージェントアイコンもしくは、エージェントのアイコンが定義されていない場合はグループアイコンで表されます)。ドットをクリックすることによって、その位置にあった時の情報を表示することができます。また、エージェントアイコンをクリックすると、エージェントの現在の情報が表示されます。以下の画像では、Android デバイス向け Pandora FMS エージェントによって通知されたパスを表示しています。

Pandroid GIS.png

また、エージェントから通知された全ての情報を表形式で表示することができます。位置情報変換 (reverse geolocation) システムにより、Pandora FMS エージェントがいる場所が、国、都市、通りの名前と共に表示されます。

Pandroid GIS2.png

1.2.3 エージェントの GIS 設定

エージェント管理メニューの中に、新たにエージェントの位置を手動で設定する項目があります。また、GIS 機能に関連するいくつかのパラメータがあります。

1.2.3.1 GIS データの無視

エージェント管理 メニューに、新たに GIS データを無視する(Ignore GIS data) という選択があります。これを有効にすると、エージェントから受け取る位置情報をサーバが無視し、最後に設定された位置を維持するようになります。エージェントが間違った位置情報を送信してくる場合や、位置が固定されている場合に便利です。

Agent management icon ignore gis data.png

1.2.3.2 エージェントの手動での位置決め

デフォルトのマップで、クリックすることによりエージェントの新たな位置を設定することができます。また、位置情報を入力ボックスから入力することもできます。

注意: エージェントの位置を設定すると、エージェントから送られてくる位置情報データにより位置がmリセットされることを防ぐために、GIS データを無視するオプションが有効になります。そうしたくない場合は、更新ボタンをクリックする前に、GIS データを無視する(Ignora GIS data) オプションを無効にしてください。

1.3 リンク

以下に、独自のマップサーバの設定および、現在のコードの機能をより理解するために参考になるリンクを示します。

1.3.1 OpenLayers

1.3.2 Mapnik

1.3.3 OpenStreetMap

1.3.4 OS Geo

1.3.5 Geo Server

1.3.6 PostgreSQL

1.3.7 Blogs (スペイン語のみ)