web-dev-qa-db-ja.com

断続的に接続されているサイトからSNMP読み取り値を収集するにはどうすればよいですか?

現在Cactiを使用している多くのシステムのSNMPデータをオンサイトで収集しています。これらのシステムは、常にインターネットに接続されているとは限らない多くのサイトに分散していますが、データを単一のシステム(データセンターに収容されたサーバー)に集中させ、そこからグラフを取得する必要もあります。

一元化されたCactiを使用してリモートシステムを直接ポーリングすると、サイトがインターネットに接続されていないときにデータが失われます。データをオンサイトで記録し(各サイトにサーバーがあり、必要なものは何でも実行できます)、すべてを中央システムに「同期」する必要があります。

1つのハックはサボテンまたは直接サイトのrrdtoolであり、その後定期的にrsync RRDデータを中央のサボテンシステムに送信しますが、それは「クリーンな」ソリューションのようには聞こえません。すべてのRRDは両方の場所で定義する必要があり、特定のファイル名でrsyncスクリプトを設定する必要があります。

より良い解決策を提案できますか?サボテンは必須ではありませんが、中央システムでそのようなものを使用したいと思います。オンサイトシステムはデータを収集するだけでよく、そこでグラフを作成したり、データを表示するためのユーザー権限を管理したりする必要はありません。ユーザーは集中型システムにのみアクセスします。

7
Luke404

データをリモートに保存し、httpまたはssh経由で接続できるリモート収集システム(単純なsnmpポーラー)をセットアップします...中央サーバーは定期的にリモートサービスサービスに接続しようとします。接続を管理すると、その間に収集された更新を取得します...

Rrdtoolはタイムスタンプ付きの更新で適切に機能するため、中央サイトのrrdsで更新を再生できます...

ボーナスとして、1回の呼び出しでrrdに複数の更新を実行する方が、段階的に実行するよりもかなり効果的であるため、非常に優れたパフォーマンスが得られる場合もあります。

1
Tobi Oetiker

ストアアンドフォワードには何らかのメカニズムが必要です。 RRDにはrrdcachedがあるので、キャッシュしてから、特定の時間にNFSマウントされたディスクにフラッシュすることができます。

また、ファイルをダンプして送信し、復元することもできます。これは、ファイル全体を移動するよりも安全な場合があります。

1
Thomas

私が使用した同様の状況のサイトの1つは、接続が確立されたときにファイルをrsyncすることです。彼らはサボテンを使用していませんが、基本的なMRTGだけを使用しています。 nagiosとそのpnp4nagiosベースのrrdファイルについても同じことを行うことを検討します。これにより、衛星が稼働していないときに履歴目的でそれらを確認できます。

問題は似ています-これらのインスタンスを中央サーバーに存在させることはできますが、実際にはポーリングを行わないので、読み取り専用のインスタンスを持つことができますか?更新するたびにすべてのチェック処理をオフにするには、nagios構成ファイルをその場で編集する必要があると思います。また、チェックが誤って実行された場合に備えて、安全のために通知とpnp4nagios入力を無効にすることもできます。

したがって、サイトの質問は、(中央サーバー上の)cactiにこれを行う方法があるかどうかです。これにより、監視対象のホストの一部は存在できますが、実際にはポーリングを実行していません。このようにして、各リモートオブジェクトの構成ファイルをrsyncすることもできます。

それ以外の場合は、リモートサイトを表示するためだけにdrrawまたは同様のツールを使用できますか? 1つのコンソールインターフェイスを持つことが望ましいですが!

0
tex