第5章 Network Observability Operator の設定
FlowCollector
API リソースを更新して、Network Observability Operator とそのマネージドコンポーネントを設定できます。FlowCollector
はインストール中に明示的に作成されます。このリソースはクラスター全体で動作するため、単一の FlowCollector
のみが許可され、cluster
という名前を付ける必要があります。詳細は、FlowCollector API リファレンス を参照してください。
5.1. FlowCollector リソースを表示する
OpenShift Container Platform Web コンソールで YAML を直接表示および編集できます。
手順
-
Web コンソールで、Operators
Installed Operators に移動します。 - NetObserv Operator の Provided APIs 見出しの下で、Flow Collector を選択します。
-
cluster を選択し、YAML タブを選択します。そこで、
FlowCollector
リソースを変更して Network Observability Operator を設定できます。
以下の例は、OpenShift Container Platform Network Observability Operator のサンプル FlowCollector
リソースを示しています。
FlowCollector
リソースのサンプル
apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: namespace: netobserv deploymentModel: Direct agent: type: eBPF 1 ebpf: sampling: 50 2 logLevel: info privileged: false resources: requests: memory: 50Mi cpu: 100m limits: memory: 800Mi processor: 3 logLevel: info resources: requests: memory: 100Mi cpu: 100m limits: memory: 800Mi logTypes: Flows advanced: conversationEndTimeout: 10s conversationHeartbeatInterval: 30s loki: 4 mode: LokiStack 5 consolePlugin: register: true logLevel: info portNaming: enable: true portNames: "3100": loki quickFilters: 6 - name: Applications filter: src_namespace!: 'openshift-,netobserv' dst_namespace!: 'openshift-,netobserv' default: true - name: Infrastructure filter: src_namespace: 'openshift-,netobserv' dst_namespace: 'openshift-,netobserv' - name: Pods network filter: src_kind: 'Pod' dst_kind: 'Pod' default: true - name: Services network filter: dst_kind: 'Service'
- 1
- エージェント仕様
spec.agent.type
はEBPF
でなければなりません。eBPF は、OpenShift Container Platform でサポートされる唯一のオプションです。 - 2
- サンプリング仕様
spec.agent.ebpf.sampling
を設定して、リソースを管理できます。サンプリング値が低いと、大量の計算、メモリー、およびストレージリソースが消費される可能性があります。これは、サンプリング比の値を指定することで軽減できます。値 100 は、100 ごとに 1 つのフローがサンプリングされることを意味します。0 または 1 の値は、すべてのフローがキャプチャーされることを意味します。値が低いほど、返されるフローが増加し、派生メトリクスの精度が向上します。デフォルトでは、eBPF サンプリングは値 50 に設定されているため、50 ごとに 1 つのフローがサンプリングされます。より多くのサンプルフローは、より多くのストレージが必要になることにも注意してください。デフォルト値から始めて経験的に調整し、クラスターが管理できる設定を決定することを推奨します。 - 3
- プロセッサー仕様
spec.processor
を設定すると、会話追跡を有効にできます。有効にすると、Web コンソールで会話イベントをクエリーできるようになります。spec.processor.logTypes
の値はFlows
です。spec.processor.advanced
の値は、Conversations
、EndedConversations
、またはALL
です。ストレージ要件はAll
で最も高く、EndedConversations
で最も低くなります。 - 4
- Loki 仕様である
spec.loki
は、Loki クライアントを指定します。デフォルト値は、Loki Operator のインストールセクションに記載されている Loki インストールパスと一致します。Loki の別のインストール方法を使用した場合は、インストールに適切なクライアント情報を指定します。 - 5
LokiStack
モードは、いくつかの設定 (querierUrl
、ingesterUrl
、statusUrl
、tenantID
、および対応する TLS 設定) を自動的に設定します。クラスターロールとクラスターロールバインディングが、Loki へのログの読み取りと書き込みのために作成されます。authToken
はForward
に設定されます。Manual
モードを使用すると、これらを手動で設定できます。- 6
spec.quickFilters
仕様は、Web コンソールに表示されるフィルターを定義します。Application
フィルターキー、src_namespace
およびdst_namespace
は否定 (!
) されているため、Application
フィルターは、openshift-
またはnetobserv
namespace から発信されて いない、または宛先がないすべてのトラフィックを表示します。詳細は、以下のクイックフィルターの設定を参照してください。