sFlow® エージェントの設定およびトラブルシューティングガイド
概要
このチュートリアルでは、Traffic Sentinelに新しいsFlowエージェントを追加するためのステップバイステップガイドと、発生する可能性のある問題の詳細を提供します。
新しいsFlowエージェントの追加
推奨手順-スイッチ側
- スイッチのCLIを使用して、サンプリングレート(例:1/2048)、ポーリング間隔(例:30秒)、コレクターIPアドレスを設定します。
ここで、いくつかのメーカーの例を参照ください - 必要であれば、スイッチが適切なsFlowエージェントアドレスを設定しているかを確認します。これは通常、loopbackアドレスを選択して自動的に設定されますが、設定出来ないケースもあります。 sFlowエージェントアドレスはsFlowフォーマットの情報をして伝送され、TrafficSentinelに送信されるsFlowデータグラムそのものの送信元アドレスとは異なる場合があることに注意してください。
- スイッチのすべての物理ポートの入力(Ingress)でサンプリングを適用します。
- ”shows flow”コマンドまたは同等のものを使用して、スイッチがUDPデータグラムを送信していることを確認します。
推奨手順-サーバー(マネージャー)側
- Traffic Sentinelサーバーで、以下コマンドで、パケットが到着していることを確認します。
sudo /usr/sbin/tcpdump -i any udp port 6343 - ソフトウェアファイアウォールが6343/udpのパケットの通過を許可していることを確認します。
sudo iptables –list - Traffic Sentinel Web UIで、[イベント]>[コンフィグレーション]>[リスト]で、新しいエージェントイベントが表示されることを確認します。コメントフィールドには、データグラムの送信元アドレスが示されます。
- 数分経過したのち、新しいエージェントが[トラフィック]>[ステータス]画面の、設定された[ゾーン]>[グループ]に表示されることを確認します。
優先ルールは次のとおりです。
sflowエージェントアドレスに一致する<agent>セクション
sflowエージェントアドレスを含む<agentrange>セクション
sflowエージェントアドレスを含む<subnet>(CIDR)セクション
sflowエージェントアドレスとは別のアドレスで、ICMPやSNMP通信行う場合や個別のしきい値設定する場合では、必要に応じてオーバーライド用に<agent>セクションのコンタクト・アドレスを指定し、CIDRを利用することをお勧めします。 - SNMPでの接続機能が動作することを確認します;
([ファイル]> [設定]> [ステータス]> [ディスカバー・エージェント]の選択> [SNMPのテスト])
一般的な問題
- ファイアウォール:iptablesファイアウォールは、6343/udpへのパケットを許可する必要があります。 受信確認の為のtcpdumpコマンドは、パケットがファイアウォールに到達する前のパケットの状態を表示することに注意してください。
- sFlowエージェントアドレス:sFlowエージェントアドレスが予期しない値で設定され、エージェントが間違ったゾーン+グループに表示されることがあります。 sflowエージェントアドレスがCIDR、エージェント範囲、またはエージェントのいずれとも一致しない場合、「other」ゾーンに表示されます。デバイスと通信するためのパラメータが未定義になるため、これは問題のある状態です。
稀な問題
- Martians:パケットをサーバーの間違ったインターフェースで受信した場合、つまり、そのソースIP上のスイッチとの応答に使用されるものではない場合:
sudo ip route get <sourceIP>
その後、それらは「Martians」としてサーバーのOSによってドロップされます。スイッチCLIを使用して、別のソースIPまたはコレクターIPに変更する必要があります。 - 管理ポート(Management Port):いくつかのスイッチは、sFlowを管理ポートに送信することを躊躇します。スイッチCLIにより回避策を実施する必要がある場合があります。たとえば、直接経路をオーバーライドすることや、管理ポートをデータ側のポートの1つとして指定するなど。