SNMPポーラーでは、ポーラーからDBへのトラフィックが確実に到達するように、DBの近くに配置する方が良いでしょう。または、ポーラーを監視対象デバイスの近くに配置して、遅延とデバイスへのトラフィックに関してトラフィックがより正確になるようにしますか?
たとえば、3つのリージョンと3つのポーラー、および1つのDBがあります。4つのデバイスすべてを1つの場所に配置しますか、それともポーラーを配布しますか?
私はいくつかの意見を持っていますが、話の反対側を取得したいと思いました。
SNMPポーラーでは、ポーラーからDBへのトラフィックが確実に到達するように、DBの近くに配置する方が良いでしょう。または、ポーラーを監視対象デバイスの近くに配置して、遅延とデバイスへのトラフィックに関してトラフィックがより正確になるようにしますか?
たとえば、3つのリージョンと3つのポーラー、および1つのDBがあります。4つのデバイスすべてを1つの場所に配置しますか、それともポーラーを配布しますか?
私はいくつかの意見を持っていますが、話の反対側を取得したいと思いました。
回答:
FWIWこれは素晴らしい質問です。これは、理論/学界のうさぎの穴を掘る可能性が非常に高いという点で、@ yttiに同意できません。
実用的な観点から、ポーリング対象のオブジェクトの近くにポーラーを配置することは、実行したいことです。私は分散システムの専門家/ SDEではありませんが、分散するように設計されたすべてのNMSには、実際のポーリングされたSNMPデータとその独自のタイムスタンプからdb挿入タイムスタンプを分離する機能がすでにあるはずです。それはまだ解決するのは簡単な問題ではありませんが、yttiがすでに言ったように(そして私も同意します)、db挿入の実行は、ポーリングから収集されたデータよりも優先されるべきではありません。データの整合性保護を強化するために、TCPにラップされるという贅沢があります。実際のSNMPポーリングとトラップでは、2つの「ベストエフォート」時間で2倍に対処します。1番目は明らかにUDPで、2番目はプロセス管理/「データ整合性」です。(つまり、カウンターが正確であるなど)ポーリングしているボックス。時々、ボックスがちょうど窒息し始め、SNMP経由で番号を返すと、他のものに後戻りします。
ポーリング対象のデバイスに近いことは、待ち時間が短いため、ポーリング頻度を高くできることも意味します。大西洋横断回路を介して5秒または10秒間隔でデバイスをポーリングしようとすると、テーブルを歩くのに時間がかかりすぎることがわかりました。