7.2. 트래픽 흐름 보기에서 네트워크 트래픽 관찰
트래픽 흐름 보기에는 네트워크 흐름의 데이터와 테이블의 트래픽 양이 표시됩니다. 관리자는 트래픽 흐름 테이블을 사용하여 애플리케이션 간 트래픽 양을 모니터링할 수 있습니다.
7.2.1. 트래픽 흐름 보기 작업
관리자는 트래픽 흐름 테이블로 이동하여 네트워크 흐름 정보를 볼 수 있습니다.
프로세스
-
모니터링
네트워크 트래픽 으로 이동합니다. - 네트워크 트래픽 페이지에서 트래픽 흐름 탭을 클릭합니다.
각 행을 클릭하면 해당 흐름 정보를 얻을 수 있습니다.
7.2.2. 트래픽 흐름 보기에 대한 고급 옵션 구성
고급 옵션 표시를 사용하여 보기를 사용자 지정하고 내보낼 수 있습니다. 표시 옵션 드롭다운 메뉴를 사용하여 행 크기를 설정할 수 있습니다. 기본값은 Normal 입니다.
7.2.2.1. 열 관리
표시할 필수 열을 선택하고 순서를 다시 정렬할 수 있습니다. 열을 관리하려면 열 관리를 클릭합니다.
7.2.2.2. 트래픽 흐름 데이터 내보내기
트래픽 흐름 보기에서 데이터를 내보낼 수 있습니다.
프로세스
- 데이터 내보내기 를 클릭합니다.
- 팝업 창에서 모든 데이터를 내보내려면 모든 데이터 내보내기 확인란을 선택하고 확인란의 선택을 해제하여 내보낼 필수 필드를 선택할 수 있습니다.
- 내보내기 를 클릭합니다.
7.2.3. 대화 추적 작업
관리자는 동일한 대화의 일부인 네트워크 흐름을 그룹화할 수 있습니다. 대화는 IP 주소, 포트 및 프로토콜로 식별되는 피어 그룹화로 정의되므로 고유한 대화 ID가 생성됩니다. 웹 콘솔에서 대화 이벤트를 쿼리할 수 있습니다. 이러한 이벤트는 웹 콘솔에서 다음과 같이 표시됩니다.
- 대화 시작: 이 이벤트는 연결이 시작되거나 TCP 플래그가 인터셉트될 때 발생합니다.
-
대화 눈금: 이 이벤트는 연결이 활성화된 동안
FlowCollector
spec.processor.conversationHeartbeatInterval
매개변수에 정의된 각 지정된 간격으로 수행됩니다. -
대화 종료: 이 이벤트는
FlowCollector
spec.processor.conversationEndTimeout
매개변수에 도달하거나 TCP 플래그를 가로챌 때 발생합니다. - flow: 지정된 간격 내에 발생하는 네트워크 트래픽 흐름입니다.
프로세스
-
웹 콘솔에서 Operator
설치된 Operator 로 이동합니다. - NetObserv Operator 의 제공된 API 제목에서 흐름 수집기 를 선택합니다.
- 클러스터를 선택한 다음 YAML 탭을 선택합니다.
spec.processor.logTypes
,conversationEndTimeout
및conversationHeartbeatInterval
매개변수가 관찰 요구 사항에 따라 설정되도록FlowCollector
사용자 지정 리소스를 구성합니다. 샘플 구성은 다음과 같습니다.대화 추적을 위한
FlowCollector
구성Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: processor: logTypes: Flows advanced: conversationEndTimeout: 10s conversationHeartbeatInterval: 30s
apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: processor: logTypes: Flows
1 advanced: conversationEndTimeout: 10s
2 conversationHeartbeatInterval: 30s
3 - 1
logTypes
를 Flow로
설정하면 Flow 이벤트만 내보냅니다. 값을All
으로 설정하면 대화 및 흐름 이벤트가 모두 내보내 네트워크 트래픽 페이지에 표시됩니다. 대화 이벤트에만 집중하기 위해 대화 시작, 대화틱 및 대화 끝 이벤트 또는 대화 끝점 이벤트만 내보내는Conversations
EndedConversations
의 경우 스토리지 요구 사항이All
및 lowest에서 가장 높습니다.- 2
- Conversation end 이벤트는
conversationEndTimeout
에 도달하거나 TCP 플래그가 가로채는 시점을 나타냅니다. - 3
- Conversation tick 이벤트는 네트워크 연결이 활성화된 동안
FlowCollector
conversationHeartbeatInterval
매개변수에 정의된 각 지정된 간격을 나타냅니다.
참고logType
옵션을 업데이트하면 이전 선택의 흐름이 콘솔 플러그인에서 명확하지 않습니다. 예를 들어, 처음에logType
을 오전 10시까지 시간 범위에 대한Conversations
로 설정한 다음EndedConversations
로 이동하는 경우 콘솔 플러그인은 오전 10시 이전의 모든 대화 이벤트를 표시하고 10 AM 이후의 대화만 종료합니다.-
트래픽 흐름 탭에서 네트워크 트래픽 페이지를 새로 고칩니다. 두 개의 새 열인 Event/Type 및 Conversation Id 가 있습니다. 모든 이벤트/유형 필드는
Flow
가 선택한 쿼리 옵션인 경우 Flow 입니다. - 쿼리 옵션을 선택하고 로그 유형,대화 유형을 선택합니다. 이제 이벤트/유형 이 원하는 대화 이벤트를 모두 표시합니다.
- 다음으로 특정 대화 ID를 필터링하거나 측면 패널에서 대화 및 흐름 로그 유형 옵션을 전환할 수 있습니다.
7.2.4. 패킷 드롭 작업
패킷 손실은 하나 이상의 네트워크 흐름 데이터가 대상에 도달하지 못하는 경우 발생합니다. 다음 YAML 예제의 사양에 대해 FlowCollector
를 편집하여 이러한 드롭을 추적할 수 있습니다.
이 기능이 활성화되면 CPU 및 메모리 사용량이 증가합니다.
프로세스
-
웹 콘솔에서 Operator
설치된 Operator 로 이동합니다. - NetObserv Operator 의 제공된 API 제목에서 흐름 수집기 를 선택합니다.
- 클러스터를 선택한 다음 YAML 탭을 선택합니다.
패킷 드롭에 대한
FlowCollector
사용자 정의 리소스를 구성합니다. 예를 들면 다음과 같습니다.FlowCollector
구성 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: namespace: netobserv deploymentModel: Direct agent: type: eBPF ebpf: features: - PacketDrop privileged: true
apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: namespace: netobserv deploymentModel: Direct agent: type: eBPF ebpf: features: - PacketDrop
1 privileged: true
2
검증
네트워크 트래픽 페이지를 새로 고칠 때 개요,트래픽 흐름 및 토폴로지 보기에 패킷 삭제에 대한 새 정보가 표시됩니다.
- 패널 관리에서 새 선택 항목을 선택하여 개요 에 표시할 패킷의 그래픽 시각화를 선택합니다.
열 관리에서 새 선택 항목을 선택하여 트래픽 흐름 테이블에 표시할 패킷 드롭 정보를 선택합니다.
-
트래픽 흐름 보기에서 측면 패널을 확장하여 패킷 드롭에 대한 자세한 정보를 볼 수도 있습니다. 호스트 삭제에는
SKB_DROP
접두사가 붙고 OVS 드롭이OVS_DROP
접두사가 붙습니다.
-
트래픽 흐름 보기에서 측면 패널을 확장하여 패킷 드롭에 대한 자세한 정보를 볼 수도 있습니다. 호스트 삭제에는
- 토폴로지 보기에서 드롭이 있는 빨간색 행이 표시됩니다.
7.2.5. DNS 추적 작업
DNS 추적을 사용하면 네트워크를 모니터링하고 보안 분석을 수행하고 DNS 문제를 해결할 수 있습니다. 다음 YAML 예제의 사양으로 FlowCollector
를 편집하여 DNS를 추적할 수 있습니다.
이 기능이 활성화되면 CPU 및 메모리 사용량 증가가 eBPF 에이전트에서 관찰됩니다.
프로세스
-
웹 콘솔에서 Operator
설치된 Operator 로 이동합니다. - 네트워크 Observa bility 에 대해 제공된 API 제목에서 흐름 수집기 를 선택합니다.
- 클러스터를 선택한 다음 YAML 탭을 선택합니다.
FlowCollector
사용자 지정 리소스를 구성합니다. 샘플 구성은 다음과 같습니다.DNS 추적을 위한
FlowCollector
구성Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: namespace: netobserv deploymentModel: Direct agent: type: eBPF ebpf: features: - DNSTracking sampling: 1
apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: namespace: netobserv deploymentModel: Direct agent: type: eBPF ebpf: features: - DNSTracking
1 sampling: 1
2 네트워크 트래픽 페이지를 새로 고칠 때 개요 및 트래픽 흐름 보기 및 적용할 수 있는 새 필터에서 볼 수 있는 새로운 DNS 표현이 있습니다.
- 패널 관리에서 새 DNS 선택 사항을 선택하여 개요 에 그래픽 시각화 및 DNS 지표를 표시합니다.
- 열 관리에서 새 선택 항목을 선택하여 트래픽 흐름 보기에 DNS 열을 추가합니다.
- DNS Id,DNS Error DNS Latency 및 DNS Response Code 와 같은 특정 DNS 메트릭을 필터링하고 사이드 패널에서 자세한 정보를 확인합니다. DNS 대기 시간 및 DNS 응답 코드 열이 기본적으로 표시됩니다.
TCP 핸드셰이크 패킷에는 DNS 헤더가 없습니다. DNS 헤더가 없는 TCP 프로토콜은 "n/a"의 DNS 대기 시간,ID 및 응답 코드 값을 사용하여 트래픽 흐름 데이터에 표시됩니다. 흐름 데이터를 필터링하여 "0"과 같은 Common filter "DNSError"를 사용하여 DNS 헤더가 있는 흐름만 볼 수 있습니다.
7.2.6. RTT 추적 작업
다음 YAML 예제의 사양으로 FlowCollector
를 편집하여 RTT를 추적할 수 있습니다.
프로세스
-
웹 콘솔에서 Operator
설치된 Operator 로 이동합니다. - NetObserv Operator 의 제공된 API 제목에서 흐름 수집기 를 선택합니다.
- 클러스터를 선택한 다음 YAML 탭을 선택합니다.
RTT 추적을 위한
FlowCollector
사용자 정의 리소스를 구성합니다. 예를 들면 다음과 같습니다.FlowCollector
구성 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: namespace: netobserv deploymentModel: Direct agent: type: eBPF ebpf: features: - FlowRTT
apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: namespace: netobserv deploymentModel: Direct agent: type: eBPF ebpf: features: - FlowRTT
1 - 1
spec.agent.ebpf.features
사양 목록에FlowRTT
매개변수를 나열하여 RTT 네트워크 흐름 추적을 시작할 수 있습니다.
검증
네트워크 트래픽 페이지를 새로 고칠 때 개요,트래픽 흐름 및 토폴로지 보기에 RTT에 대한 새 정보가 표시됩니다.
- 개요 에서 패널 관리에서 새 선택 사항을 선택하여 표시할 RTT의 그래픽 시각화를 선택합니다.
- 트래픽 흐름 테이블에서는 흐름 RTT 열을 볼 수 있으며 열 관리에서 디스플레이를 관리할 수 있습니다.
트래픽 흐름 보기에서 측면 패널을 확장하여 RTT에 대한 자세한 정보를 볼 수도 있습니다.
필터링 예
-
공통 필터
프로토콜 을 클릭합니다. - TCP,Ingress 방향을 기반으로 네트워크 흐름 데이터를 필터링하고 10,000,000 나노초(10ms)보다 큰 FlowRTT 값을 찾습니다.
- 프로토콜 필터를 제거합니다.
- Common Filter에서 0보다 큰 Flow RTT 값을 필터링합니다.
-
공통 필터
- 토폴로지 보기에서 표시 옵션 드롭다운을 클릭합니다. 그런 다음 에지 레이블 드롭다운 목록에서 RTT 를 클릭합니다.
7.2.6.1. 히스토그램 사용
히스토그램 표시를 클릭하여 흐름 기록을 가로 막대형 차트로 시각화하기 위한 도구 모음 보기를 표시할 수 있습니다. 히스토그램은 시간에 따른 로그 수를 보여줍니다. 히스토그램의 일부를 선택하여 도구 모음을 따르는 테이블에서 네트워크 흐름 데이터를 필터링할 수 있습니다.
7.2.7. 가용성 영역 작업
클러스터 가용성 영역에 대한 정보를 수집하도록 FlowCollector
를 구성할 수 있습니다. 이를 통해 노드에 적용된 topology.kubernetes.io/zone
레이블 값을 사용하여 네트워크 흐름 데이터를 강화할 수 있습니다.
프로세스
-
웹 콘솔에서 Operator
설치된 Operator 로 이동합니다. - NetObserv Operator 의 제공된 API 제목에서 흐름 수집기 를 선택합니다.
- 클러스터를 선택한 다음 YAML 탭을 선택합니다.
spec.processor.addZone
매개변수가true
로 설정되도록FlowCollector
사용자 지정 리소스를 구성합니다. 샘플 구성은 다음과 같습니다.가용성 영역 컬렉션에 대한
FlowCollector
구성Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: # ... processor: addZone: true # ...
apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: # ... processor: addZone: true # ...
검증
네트워크 트래픽 페이지를 새로 고칠 때 개요,트래픽 흐름 및 토폴로지 보기에 가용성 영역에 대한 새 정보가 표시됩니다.
- 개요 탭에서 영역을 사용 가능한 범위로 볼 수 있습니다.
-
네트워크 트래픽
트래픽 흐름에서 영역은 SrcK8S_Zone 및 DstK8S_Zone 필드에서 볼 수 있습니다. - 토폴로지 보기에서 영역을 범위 또는 그룹으로 설정할 수 있습니다.