28.7. ネットワークトラフィックの監視
管理者は、OpenShift Container Platform コンソールでネットワークトラフィックを観察して、詳細なトラブルシューティングと分析を行うことができます。この機能は、トラフィックフローのさまざまなグラフィカル表現から洞察を得るのに役立ちます。ネットワークトラフィックを観察するために使用できるビューがいくつかあります。
28.7.1. 概要ビューからのネットワークトラフィックの監視
Overview ビューには、クラスター上のネットワークトラフィックフローの集約された全体的なメトリクスが表示されます。管理者は、使用可能な表示オプションを使用して統計を監視できます。
28.7.1.1. 概要ビューの操作
管理者は、Overview ビューに移動して、フローレートの統計をグラフィカルに表示できます。
手順
-
Observe
Network Traffic に移動します。 - ネットワークトラフィック ページで、Overview タブをクリックします。
メニューアイコンをクリックすると、各流量データの範囲を設定できます。
28.7.1.2. 概要ビューの詳細オプションの設定
詳細オプションを使用して、グラフィカルビューをカスタマイズできます。詳細オプションにアクセスするには、Show advanced options をクリックします。Display options ドロップダウンメニューを使用して、グラフの詳細を設定できます。利用可能なオプションは次のとおりです。
- Metric type: Bytes または Packets 単位で表示されるメトリクス。デフォルト値は Bytes です。
- Scope: ネットワークトラフィックが流れるコンポーネントの詳細を選択します。スコープを Node、Namespace、Owner、または Resource に設定できます。Owner はリソースの集合体です。Resource は、ホストネットワークトラフィックの場合は Pod、サービス、ノード、または不明な IP アドレスです。デフォルト値は Namespace です。
- Truncate labels: ドロップダウンリストから必要なラベルの幅を選択します。デフォルト値は M です。
28.7.1.2.1. パネルの管理
必要な統計を選択して表示し、並べ替えることができます。列を管理するには、Manage panels をクリックします。
28.7.2. トラフィックフロービューからのネットワークトラフィックの観察
Traffic flows ビューには、ネットワークフローのデータとトラフィックの量がテーブルに表示されます。管理者は、トラフィックフローテーブルを使用して、アプリケーション全体のトラフィック量を監視できます。
28.7.2.1. トラフィックフロービューの操作
管理者は、Traffic flows テーブルに移動して、ネットワークフロー情報を確認できます。
手順
-
Observe
Network Traffic に移動します。 - Network Traffic ページで、Traffic flows タブをクリックします。
各行をクリックして、対応するフロー情報を取得できます。
28.7.2.2. トラフィックフロービューの詳細オプションの設定
Show advanced options を使用して、ビューをカスタマイズおよびエクスポートできます。Display options ドロップダウンメニューを使用して、行サイズを設定できます。デフォルト値は Normal です。
28.7.2.2.1. 列の管理
表示する必要のある列を選択し、並べ替えることができます。列を管理するには、Manage columns をクリックします。
28.7.2.2.2. トラフィックフローデータのエクスポート
Traffic flows ビューからデータをエクスポートできます。
手順
- Export data をクリックします。
- ポップアップウィンドウで、Export all data チェックボックスを選択してすべてのデータをエクスポートし、チェックボックスをオフにしてエクスポートする必要のあるフィールドを選択できます。
- Export をクリックします。
28.7.2.3. 会話追跡の使用
管理者は、同じ会話の一部であるネットワークフローをグループ化できます。会話は、IP アドレス、ポート、プロトコルによって識別されるピアのグループとして定義され、その結果、一意の Conversation ID が得られます。Web コンソールで対話イベントをクエリーできます。これらのイベントは、Web コンソールでは次のように表示されます。
- Conversation start: このイベントは、接続が開始されているか、TCP フラグがインターセプトされたときに発生します。
-
会話ティック: このイベントは、接続がアクティブである間、
FlowCollector
spec.processor.conversationHeartbeatInterval
パラメーターで定義された指定された間隔ごとに発生します。 -
Conversation end: このイベントは、
FlowCollector
spec.processor.conversationEndTimeout
パラメーターに達するか、TCP フラグがインターセプトされたときに発生します。 - Flow: これは、指定された間隔内に発生するネットワークトラフィックフローです。
手順
-
Web コンソールで、Operators
Installed Operators に移動します。 - NetObserv Operator の Provided APIs 見出しの下で、Flow Collector を選択します。
- cluster を選択し、YAML タブを選択します。
spec.processor.logTypes
、conversationEndTimeout
、およびconversationHeartbeatInterval
パラメーターが観察のニーズに応じて設定されるように、FlowCollector
カスタムリソースを設定します。設定例は次のとおりです。会話追跡用に
FlowCollector
を設定するapiVersion: flows.netobserv.io/v1alpha1 kind: FlowCollector metadata: name: cluster spec: processor: conversationEndTimeout: 10s 1 logTypes: FLOWS 2 conversationHeartbeatInterval: 30s 3
- 1
- Conversation end イベントは、
conversationEndTimeout
に達するか、TCP フラグがインターセプトされた時点を表します。 - 2
logTypes
がFLOWS
に設定されている場合、フロー イベントのみがエクスポートされます。値をALL
に設定すると、会話イベントとフローイベントの両方がエクスポートされ、Network Traffic ページに表示されます。会話イベントのみに焦点を当てるには、Conversation start、Conversation tick、および Conversation end イベントをエクスポートするCONVERSATIONS
を指定できます。またはENDED_CONVERSATIONS
は Conversation end イベントのみをエクスポートします。ストレージ要件はALL
で最も高く、ENDED_CONVERSATIONS
で最も低くなります。- 3
- Conversation tick イベントは、ネットワーク接続がアクティブである間の、
FlowCollector
のconversationHeartbeatInterval
パラメーターで定義された各指定間隔を表します。
注記logType
オプションを更新しても、以前の選択によるフローはコンソールプラグインから消去されません。たとえば、最初に午前 10 時までの期間logType
をCONVERSATIONS
に設定し、その後ENDED_CONVERSATIONS
に移動すると、コンソールプラグインは午前 10 時までのすべての会話イベントを表示し、午前 10 時以降に終了した会話のみを表示します。-
Traffic flows タブの Network Traffic ページを更新します。Event/Type と Conversation Id という 2 つの新しい列があることに注意してください。クエリーオプションとして Flow が選択されている場合、すべての Event/Type フィールドは
Flow
になります。 - Query Options を選択し、Log Type として Conversation を選択します。Event/Type は、必要なすべての会話イベントを表示するようになりました。
- 次に、特定の会話 ID でフィルタリングするか、サイドパネルから Conversation と Flow ログタイプのオプションを切り替えることができます。
28.7.2.3.1. ヒストグラムの使用
Show histogram をクリックすると、フローの履歴を棒グラフとして視覚化するためのツールバービューが表示されます。ヒストグラムは、時間の経過に伴うログの数を示します。ヒストグラムの一部を選択して、ツールバーに続く表でネットワークフローデータをフィルタリングできます。
28.7.3. トポロジービューからのネットワークトラフィックの観察
Topology ビューには、ネットワークフローとトラフィック量がグラフィカルに表示されます。管理者は、Topology ビューを使用して、アプリケーション全体のトラフィックデータを監視できます。
28.7.3.1. トポロジービューの操作
管理者は、Topology ビューに移動して、コンポーネントの詳細とメトリクスを確認できます。
手順
-
Observe
Network Traffic に移動します。 - Network Traffic ページで、Topology タブをクリックします。
Topology 内の各コンポーネントをクリックして、コンポーネントの詳細とメトリクスを表示できます。
28.7.3.2. トポロジービューの詳細オプションの設定
Show advanced options を使用して、ビューをカスタマイズおよびエクスポートできます。詳細オプションビューには、次の機能があります。
- Find in view で必要なコンポーネントを検索します。
Display options: 次のオプションを設定するには:
- Layout: グラフィック表示のレイアウトを選択します。デフォルト値は ColaNoForce です。
- スコープ: ネットワークトラフィックが流れるコンポーネントのスコープを選択します。デフォルト値は Namespace です。
- Groups: コンポーネントをグループ化することにより、所有権の理解を深めます。デフォルト値は None です。
- グループを Collapse groups をデプロイメントまたは折りたたむ。グループはデフォルトでデプロイメントされています。Groups の値が None の場合、このオプションは無効になります。
- 表示: 表示する必要がある詳細を選択します。デフォルトでは、すべてのオプションがチェックされています。使用可能なオプションは、Edges、Edges label、および Badges です。
- Truncate labels: ドロップダウンリストから必要なラベルの幅を選択します。デフォルト値は M です。
28.7.3.2.1. トポロジービューのエクスポート
ビューをエクスポートするには、トポロジービューのエクスポート をクリックします。ビューは PNG 形式でダウンロードされます。
28.7.4. ネットワークトラフィックのフィルタリング
デフォルトでは、ネットワークトラフィックページには、FlowCollector
インスタンスで設定されたデフォルトフィルターに基づいて、クラスター内のトラフィックフローデータが表示されます。フィルターオプションを使用して、プリセットフィルターを変更することにより、必要なデータを観察できます。
- クエリーオプション
以下に示すように、Query Options を使用して検索結果を最適化できます。
- Log Type: 利用可能なオプション Conversation と Flows では、フローログ、新しい会話、完了した会話、および長い会話の更新を含む定期的なレコードであるハートビートなどのログタイプ別にフローをクエリーする機能が提供されます。会話は、同じピア間のフローの集合体です。
- Reporter Node: すべてのフローは、送信元ノードと宛先ノードの両方からレポートできます。クラスターのイングレスの場合、フローは宛先ノードから報告され、クラスターのイーグレスの場合、フローはソースノードから報告されます。Source または Destination のいずれかを選択できます。Overview ビューと Topology ビューでは、オプション 両方 が無効になっています。デフォルトで選択される値は Destination です。
- Match filters: 高度なフィルターで選択されたさまざまなフィルターパラメーター間の関係を決定できます。利用可能なオプションは、Match all と Match any です。Match all はすべての値に一致する結果を提供し、Match any は入力された値のいずれかに一致する結果を提供します。デフォルト値は Match all です。
- Limit: 内部バックエンドクエリーのデータ制限。マッチングやフィルターの設定に応じて、トラフィックフローデータの数が指定した制限内で表示されます。
- クイックフィルター
-
クイックフィルター ドロップダウンメニューのデフォルト値は、
FlowCollector
設定で定義されます。コンソールからオプションを変更できます。 - 高度なフィルター
- フィルタリングするパラメーターとそれに対応するテキスト値を指定することで、高度なフィルターを設定できます。パラメータードロップダウンリストの Common セクションは、Source または Destination のいずれかに一致する結果をフィルター処理します。適用されたフィルターを有効または無効にするには、フィルターオプションの下にリストされている適用されたフィルターをクリックします。
テキスト値を指定する規則を理解するには、詳細 をクリックします。
Reset default filter をクリックして既存のフィルターを削除し、FlowCollector
設定で定義されたフィルターを適用できます。
または、Namespaces、Services、Routes、Nodes、および Workloads ページの Network Traffic タブでトラフィックフローデータにアクセスして、対応する集約のフィルタリングされたデータを提供します。
関連情報
FlowCollector
でのクイックフィルターの設定の詳細は、クイックフィルターの設定 および Flow Collector サンプルリソース を参照してください。