Pandora: Documentation ja: GIS

From Pandora FMS Wiki
Jump to: navigation, search

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

Pandora GIS

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

設定

エージェント設定

エージェントは、新たに位置データを送信することができます。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

サーバ設定

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

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

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

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

自動検出サーバの動作を定義する、3つの新たなパラメータがあります。recon_reverse_geolocation_mode [disabled, file または sql] および、位置情報を定義した MaxMind GPL GeoLiteCity.dat フォーマットファイルの場所を示す recon_reverse_geolocation_file、また、位置情報特定アルゴリズムで定義された場所の周辺をランダムに探索し、エージェントの位置決めに使う 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 infomration for agents and maps) by default it is desactivated
activate_gis 1

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

# Recon reverse geolocation mode [disabled, sql, file]
#	* disabled: The recon task doesn't try to geolocate the ip discovered.
#	* sql: The recon task trys to query the SQL database to geolocate the ip discovered
#	* file: The recon task trys to find the geolocation information of the ip discovered in 
# 			the file indicated in the recon_reverse_geolocation_file parameter 
recon_reverse_geolocation_mode file

# Recon reverse geolocation file (databases with the reverse geolocation information using
# MaxMind GPL GeoLiteCity.dat format).

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

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

# This enable realtime reverse geocoding using Google Maps public api. 
# This requires internet access, and could have performance penalties processing GIS
# information due the connetion needed to resolve all GIS input.

google_maps_description 1

# This enable realtime reverse geocoding using Openstreet Maps public api.
# This requires internet access, and could have performance penalties processing GIS
# information due the connetion needed to resolve all GIS input.
# You can alter the code to use a local (your own) openstreet maps server.

openstreetmaps_description 1

コンソール設定

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



Enable GIS.png



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

GIS 利用マップ

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

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



Connection configuration basic.png



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

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

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
Google マップ

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



Connection configruation goole.png



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

静的画像

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

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



Connection configruation static image.png



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

マップの最後の設定は、マップの 中心 と、位置情報が無いエージェントを配置する デフォルトの位置 です。これらの設定は、マップのプレビューでクリックすることにより行えます。どちらのパラメータを設定するかは、マップ内での変更(Change in the Map) で選択します。

マップのプレビューでは、左上の緑の矢印を使ってマップを移動させることができます。拡大率を変更するには、+ および - アイコンを使います。最大の拡大率にするには、虫めがねアイコンを使います。

もちろん、入力フィールドに位置情報を直接入力することもできます。



Connection configruation set center default.png



利用マップの全ての設定を行ったら、マップビルダーで利用できるように、保存ボタンをクリックして 保存 することができます。

GIS マップビルダー

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



Gis map builder menu.png



メニューにて、(名前をクリックすることにより) マップを 編集 したり、(参照アイコンをクリックすることにより)マップを 参照 することができます。また、ラジオボタンで デフォルト マップを設定したり、削除アイコンでマップを 削除 することができます。

また、新たなマップを作成するボタンもあります。

管理者は、エージェントの位置を表示するデフォルトマップを一つ設定する必要があります。

GIS マップの作成

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



Gis map builder main.png



レイヤ定義

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

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

レイヤは、表示'非表示 を設定できます。また、グループを選択し、一覧からエージェントを追加出来ます。レイヤを定義したら (マップ全体を保存するまで保存されません)、定義した例やの左側のカラムで、順番 (上もしくは下へ) を変更することができます。また、削除や、再度編集することもできます。



GIS map builder layers save.png



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

操作

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

GIS マップ

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



Gis maps menu.png



マップの移動

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

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

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

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

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

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

フィルタ

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

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

マップの更新

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

マップ編集と全画面

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



Gis maps default all controls.png



エージェントビュー

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

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

GIS 履歴表示

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

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

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



Pandroid GIS.png



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



Pandroid GIS2.png



エージェントの GIS 設定

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

GIS データの無視

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



Agent management icon ignore gis data.png



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

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

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

リンク

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

OpenLayers

Mapnik

OpenStreetMap

OS Geo

Geo Server

PostgreSQL

Blogs (スペイン語のみ)