====== GIS 監視 ======
{{indexmenu_n>20}}
[[:ja:documentation:start|Pandora FMS ドキュメント一覧に戻る]]
===== Pandora FMS GIS =====
GIS マップは、Pandora FMS のエージェントの地理的な場所を視覚的に表現したものです。このマップで、エージェントの現在の位置と、これまでの位置履歴の概要を見ることができます。
GIS マップを利用できるようにするには、エージェント、サーバ、コンソールの設定が必要です。
===== Pandora FMS GIS =====
==== エージェント設定 ====
[[:ja:documentation:pandorafms:installation:05_configuration_agents|ソフトウエアエージェント]] の ''pandora_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 40.37346827
# longitude
longitude -3.6418548
# altitude
altitude 637
# Position description
position_description Madrid, Vallecas
==== サーバ設定 ====
GIS 機能はサーバの ''[[:ja:documentation:pandorafms:installation:04_configuration#activate_gis|activate_gis]]'' パラメータで有効化できます。このフラグを **1** に設定することにより、サーバがエージェントから受け取った GIS 情報を処理するようになります。
位置情報により Pandora FMS にエージェントの位置を保存することができますが、このデータは完全には信頼できないソースから届くため、大きく移動していないのにエージェントが場所移動の情報を送信する可能性があります。これを避けるために、''[[:ja:documentation:pandorafms:installation:04_configuration#location_error|location_error]]'' パラメータに同じ位置であるとみなす距離を設定します。これは閾値によるエラー許容であり、エージェントの位置が閾値内にとどまっていれば同じ位置であると認識します。
=== 自動検出サーバと位置情報 ===
逆ジオロケーションアルゴリズム(位置情報からの住所検索)と IP アドレスおよび位置情報のデータベースを利用することにより、自動検出サーバは検出したエージェントの位置を推測することができます。利用のためには [[http://www.maxmind.com/app/geolitecity|MaxMind GeoIP GeoLiteCity]] フォーマットか、データベース内の IP アドレスと位置情報のテーブルの組み合わせを利用します。
自動検出サーバの動作を定義する、2つのパラメータがあります。''[[:ja:documentation:pandorafms:installation:04_configuration#recon_reverse_geolocation_file|recon_reverse_geolocation_file]]'' は、MaxMind ''GeoLiteCity.dat'' を用いた逆ジオロケーションを含むファイルを指し示すのみに使われます。''[[:ja:documentation:pandorafms:installation:04_configuration#recon_location_scatter_radius|recon_location_scatter_radius]]'' は、 検出したエージェントのおおよその位置をアルゴリズムで推測する際、推測位置から ''recon_location_scatter_radius'' のパラメータによって定義される半径(メートル単位)の中でランダムに配置するために利用されます。
また、Google API® および OpenStreetMaps® により提供される位置情報変換 (リバースジオロケーション) サービスを利用することもできます。
* Google® のジオロケーションを有効にするには、''google_maps_description'' を ''1'' に設定します。
* OpenstreetMaps® のリバースジオロケーションを有効にするには、''openstreetmaps_description'' を ''1'' に設定します。
* この機能は **Pandora FMS サーバのパフォーマンスを低下させます** 。
* Google® や Openstreet Maps® の API を利用するためには**インターネット接続が必要** であり、もちろん本機能はこれらのサービス提供者の可用性に依存しています。
# Flag to activate GIS (positional information for agents and maps) by default it is deactivated
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 with the reverse geolocation information using
# 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 where the agents will be place randomly when found by a recon task
# The center of the cicle is guessed by geolocating the IP address.
recon_location_scatter_radius 1000
# This enables realtime reverse geocoding using Google Maps public API.
# This requires internet access, and could have performance penalties processing GIS
# information due the connection needed to resolve all GIS input.
google_maps_description 1
# This enables realtime reverse geocoding using OpenStreetMaps public API.
# This requires internet access, and could have performance penalties processing GIS
# information due the connection needed to resolve all GIS input.
# You can alter the code to use a local (your own) OpenStreetMaps server.
openstreetmaps_description 1
==== コンソール設定 ====
コンソールで GIS 機能を利用するには、最初にメインの設定で有効にする必要があります。
**管理(Management) → 設定(Setup) → システム設定(Setup) → 基本設定(General Setup)** **→ GIS 機能の有効化(Enable GIS features) → 更新(Update)** へ進みます。
すると、ユーザインタフェースに新たなメニューが追加されます。
=== 基本設定 ===
**設定(Setup) → システム設定(Setup) → 利用 GIS マップ(GIS map connection) ** にて、GIS で利用するマップを提供する地図サーバへの接続を定義する必要があります。
* **グループ(Group)** は所属するグループです。**GIS 接続マップを作成しようとしているユーザが明示的に "すべて" グループに属していない場合** でも、接続として[[:ja:documentation:pandorafms:management_and_operation:11_managing_and_administration#すべて_グループ|"すべて"グループ]]を割り当てることができます。
* **選択可能な拡大率の数(Number of zoom levels)** はマップ上に定義される拡大率の数です。
* **デフォルト拡大レベル(Default zoom level)** はデフォルトのマップのズーム倍率です。(マップ上で再定義できます)
基本パラメータを設定したら、利用マップのタイプを選択する必要があります。タイプによりオプションが異なります。
=== OpenStreet マップ ===
Pandora FMS のデフォルトインストール状態では、[[http://www.openstreetmap.org/|Open Street マップ]] を利用するようになっています。これを使って直接 GIS 機能を確認することができます。
マップに OpenStreet マップを利用するのに必要なパラメータは **タイルサーバの URL** のみです。
{{ :wiki:pfms-setup-setup-gis_map_connection-create_new-openstreetmaps.png }}
例:
http://tiles.example.com/${z}/${x}/${y}.png
http://tile.example.com/${z}/${x}/${y}.png
サーバの名前と認定についての説明は [[https://wiki.openstreetmap.org/wiki/Tile_servers|OpenStreetMap® の公式サーバ一覧]]サイトを確認してください。
=== Google マップ ===
また Pandora FMS はGoogle Maps® もサポートしています。これを利用するには、正しい **パスワード** を Google から取得し、接続設定の対応するフィールドに設定する必要があります。(詳細は、[[http://developers.google.com/maps/documentation/directions/#api_key|Google マップ API ポリシー]] を参照)
{{ :wiki:pfms-setup-setup-gis_map_connection-create_new-google.png?nolink& }}
このパスワードで、ベースのマップの種類 (//航空写真// 、//地形// 、//地図//) を設定することができます。
このパスワードは取得してから利用できるまでに数分かかる場合があります。
=== 静的画像 ===
ほかには、マップとして静的画像の利用をサポートしています。この種類のマップを利用するには、画像ファイルは、[[http://en.wikipedia.org/wiki/EPSG:4326|EPSG:4326]] である必要があります。
マップの定義に必要なパラメータは、画像の **URL** 、**高さ** 、**幅** および、マップ画像の境界 (**右** 、**左** 、**上** 、**下**) の位置情報 (**経度** 、**緯度**) です。
{{ :wiki:pfms-setup-setup-gis_map_connection-create_new-static_image.png?nolink& }}
=== WMS サーバ ===
ローカル WMS マップサーバをインストールし、オンラインマップサービスを利用できない際に使用できます。これは高速処理のために [[http://wiki.pandorafms.jp/doku.php?id=ja:documentation:pandorafms:introduction:03_glossary#モザイク|モザイク]] タイプの 定義を行うこともできます。
バージョン 723 から、[[http://geoserver.org/|GeoServer]] のような WMS サーバ(Web マップサービス)への接続を追加できるようになりました。それには、サービスが提供されているアドレスを入力し、そこから取得したいレイヤの名前を入力する必要があります。
{{ :wiki:pfms-setup-setup-gis_map_connection-create_new-wms_server.png?nolink& }}
GeoServer サーバの最小限のインストールと設定は、[[:ja:documentation:pandorafms:technical_annexes:13_geoserver_installation|こちら]] を参照してください。
=== マップの中心とデフォルトの位置 ===
マップ接続定義の最後は、位置情報を持っていないエージェントに対するマップの中心とデフォルトの位置の定義です。それらを定義するには、マップをプレビューし、マップをクリックして、**マップ内での変更(Change in the Map)** セレクタで選択されているパラメータ (**マップの中心(****Map center****)** もしくは **GIS データが無い場合のエージェントのデフォルト位置(****Default position for agents without GIS data)**) に応じて、このパラメータを設定します。
このプレビューマップでは、左上の緑色の矢印を使用して移動したり、**+** または **-** アイコンでズームレベルを変更したり、 虫眼鏡アイコンでフルズームにしたりすることができます。
入力セルに値(小数点はドットです)を入れることによって、位置を設定することもできます。
{{ :wiki:connection_configruation_set_center_default.png?nolink& }}
すべての接続パラメータを設定したら、**保存(Save)** ボタンをクリックすることにより、マップビルダから利用できるように接続を保存できます。
==== GIS マップ ====
接続の設定を行うと、**GIS マップ(GIS Map)** で利用することができるようになります。
{{ :wiki:gis_map_menu.png }}
定義済のマップを含む画面が表示されます。ここでは、マップの編集、マップの表示、デフォルトマップの定義、マップの削除ができます。
{{ :wiki:pfms-topology_maps-gis_maps-list_of_gis_maps_sample.png }}
新たなマップを作成するボタン(**作成(Create)** ボタン)もあります。
**デフォルトマップ** を設定する必要があります。これは、エージェント表示でその位置を表示するために使用されます。
{{ :wiki:pfms-topology_maps-gis_maps-list_of_gis_maps-default_map.png }}
**GIS マップの作成**
マップ作成ページにアクセスして最初に行うことは、**マップ名(Map Name)** と **利用マップの追加(Add Map connection)** を既に利用可能なものの中から追加することです。一つ以上を追加することができますが、これらは後ほどベースレイヤーとして利用可能になります。(同時には一つのみが有効です)
{{ :wiki:gis_map_builder_main.png }}
利用マップを選択すると (またはデフォルトの利用マップを変更すると) 、Pandora FMS コンソールが利用マップのデフォルトデータを利用したいかどうかを尋ねてきます。それを'受け入れる'と、コンソールは **全ての位置データ** を利用マップに設定されている値に設定 (更新) します。ユーザは **デフォルトの拡大率** のみ設定する必要があります。キャンセルすると、これらのフィールドの**変更は行われず** 、利用マップの設定のみが追加されます。
**レイヤ定義**{{ :wiki:gis_grupo.png }}
基本的なマップのパラメータを設定したら、どのエレメントをマップに表示するかを選択するための、マップの**レイヤ** を定義します。ただし、**デフォルトマップでは** レイヤを定義する必要がありません。なぜならエージェントビューにおいて、エージェントの位置を表示するのに利用されるためです。
それぞれのマップは、エージェントを表示するための一つ以上のレイヤを持っています。それぞれのレイヤは、**グループに属するエージェント** や **エージェント一覧** 、**代表エージェント付きのグループ** を表示することができます。これにより、それぞれのレイヤに表示するエージェントを簡単に設定できます。
レイヤは、'表示' または '非表示' を定義できます。また、
* エージェント追加のためにグループを選択できます。
* エージェントを個別に追加できます。
* 代表の一エージェントが添えられたグループを追加できます。
代表エージェントを持つレイヤにグループを作成したら、 他のエージェントで別のグループを作成することはできません。
レイヤが定義されると(**マップの保存** をクリックするまで、完全には保存されません)、定義されたレイヤーの左の列に移動します。ここでレイヤの並び替えやレイヤの削除、または編集が再度可能になります。
マップのレイヤ定義が完了したら、**マップの保存(Save Map)** ボタンにて全てを保存することができます。マップを編集する場合は、**マップの更新(Update Map)** ボタンが表示されます。
===== 操作 =====
==== GIS マップ ====
GIS マップメニューは、すべての定義済マップを表示します。それぞれマップに定義されたパラメータでマップを表示できます。また、開いたマップは上端にある **設定(Setup)** ボタンをクリックして編集できます。
{{ :wiki:pfms-topology_maps-gis_maps-list_of_gis_maps-setup_gear.png }}
=== マップの移動 ===
左上にマップ操作のための4つの緑の矢印があり、それぞれの方向へマップを動かすことができます。**+** と **-** は拡大率を増減させるアイコンで、ズームバーで直接設定したい拡大率を選択することができます。
マップをドラッグすることによっても、動かすことができます。
マップ上に表示されているエージェントをクリックすると、そのエージェントに関する詳細情報を表示できます。追加情報のバルーンが表示される場合、エージェントの名前はエージェント表示へのリンクになっています。
{{ :wiki:pfms-topology_maps-gis_maps-list_of_gis_maps-control_navigation.png }}
=== レイヤ ===
**+** アイコンをクリックすると、レイヤの操作パネルが開きます。緑色のボックスが表示され、ベースのレイヤ (マップが一つ以上定義されている場合は利用マップ) および、表示するレイヤを選択することができます。
{{ :wiki:pfms-topology_maps-gis_maps-list_of_gis_maps-control_layers.png }}
**エージェントの階層(Agent Hierarchy)** と呼ばれる特別なシステム定義レイヤもあります。 このレイヤーが表示されている場合は、エージェントとその親要素をつなぐ赤い点線が表示されます。(両方が表示されている場合のみ)
=== フィルタ ===
マップ上には、エージェントの状態のフィルタオプションがあります。
* 正常(Ok)
* 障害(Critical)
* 警告(Warning)
* その他(Other)
{{ :wiki:pfms-topology_maps-gis_maps-list_of_gis_maps-filter_status.png }}
=== マップの更新 ===
フィルタボタンの隣に、マップの更新間隔を設定する **更新(Refresh)** というコンボボックスがあります。マップは、指定した間隔でエージェントを更新するために AJAX を呼び出します。
==== エージェントビュー ====
Pandora FMS コンソールのエージェント表示にもまた GIS 機能があります。その1つはメイン画面でのエージェントの経度、緯度、高度の表示です。
=== GIS 履歴表示 ===
トップバーに、エージェントの **GISビュー** を表示するためのボタンがあります。(GIS が有効な場合)
ここで**デフォルトマップ** でのエージェントの位置が表示されます。エージェントから届いた全情報が、国名、町名、通り名の逆ジオロケーション情報と共に表形式で表示されます。
{{ :wiki:pandroid_gis22.png?800 }}
==== エージェントの GIS 設定 ====
エージェント管理タブの中に、新たにエージェントの位置を手動で設定する項目があります。また、GIS 機能に関連するいくつかのタブがあります。
=== GIS データの更新 ===
エージェント管理 メニューに、**新たな GIS データを更新(Update new GIS data)** というオプションがあります。
* 有効にするとサーバはエージェントから受信した全ての位置情報を更新し、最後に設定された位置は使用しなくなります。
* エージェントが間違った位置情報を送信してくる場合や、位置が固定されている場合には無効とすると便利です。
{{ :wiki:agent_management_icon_ignore_gis_data2.png }}
=== エージェントの手動での位置決め ===
**GIS データ(GIS Data)** タブでデフォルトのマップを表示します。クリックすることによりエージェントの新たな位置を設定することができます。また、位置情報を下部のボックスから入力することもできます。
{{ :wiki:pos_manual.png }}
エージェントの位置を手動で設定すると、同時に **GISデータを無視** オプションが有効になります。([[:ja:documentation:pandorafms:monitoring:20_gis#gis_データの更新|新たな GIS データを更新(Update new GIS data)]] と逆の値です) そのため、エージェントから次の位置情報データが来ても、エージェントの位置情報をリセットしなくなります。
これが望む動作でない場合は、**更新(Update)** をクリックする前に **GISデータを無視する(Ignore new GIS data)** オプションを無効にすることをお勧めします。