18.3. Network Observability CLI (oc netobserv) 참조
Network Observability CLI(oc netobserv)는 Network Observability Operator와 기능 및 필터링 패리티를 제공합니다. 명령줄 인수를 사용하여 기능을 동적으로 전환하고 특정 클러스터 네트워크 트래픽 흐름을 분리합니다.
18.3.1. Network Observability CLI 사용 링크 복사링크가 클립보드에 복사되었습니다!
Network Observability CLI(oc netobserv)를 사용하여 명령줄 인수를 전달하여 추가 분석을 위해 흐름 데이터, 패킷 데이터 및 메트릭을 캡처하고 Network Observability Operator에서 지원하는 기능을 활성화할 수 있습니다.
18.3.1.1. 구문 링크 복사링크가 클립보드에 복사되었습니다!
oc netobserv 명령의 기본 구문:
oc netobserv 구문
$ oc netobserv [<command>] [<feature_option>] [<command_options>]
- 1
- 기능 옵션은
oc netobserv flows명령과 함께만 사용할 수 있습니다.oc netobserv packets명령과 함께 사용할 수 없습니다.
18.3.1.2. 기본 명령 링크 복사링크가 클립보드에 복사되었습니다!
| 명령 | 설명 |
|---|---|
| flows | 흐름 정보를 캡처합니다. 하위 명령의 경우 "Flows capture options" 표를 참조하십시오. |
| 패킷 | 패킷 데이터를 캡처합니다. 하위 명령의 경우 "Packets capture options" 표를 참조하십시오. |
| metrics | 지표 데이터를 캡처합니다. 하위 명령의 경우 "Metrics capture options" 표를 참조하십시오. |
| 팔로우 | 백그라운드에서 실행할 때 수집기 로그를 따릅니다. |
| 중지 | 에이전트 daemonset를 제거하여 컬렉션을 중지합니다. |
| 복사 | 수집기에서 로컬로 생성된 파일을 복사합니다. |
| cleanup | Network Observability CLI 구성 요소를 제거합니다. |
| version | 소프트웨어 버전을 출력합니다. |
| help | 도움말 표시. |
18.3.1.3. 흐름 캡처 옵션 링크 복사링크가 클립보드에 복사되었습니다!
흐름 캡처에는 패킷 드롭에 대한 추가 기능 활성화, DNS 대기 시간, Round-trip 시간, 필터링 등 필수 명령과 추가 옵션이 있습니다.
oc netobserv flows 구문
$ oc netobserv flows [<feature_option>] [<command_options>]
| 옵션 | 설명 | 기본 |
|---|---|---|
| --enable_all | 모든 eBPF 기능 활성화 | false |
| --enable_dns | DNS 추적 활성화 | false |
| --enable_ipsec | IPsec 추적 활성화 | false |
| --enable_network_events | 네트워크 이벤트 모니터링 활성화 | false |
| --enable_pkt_translation | 패킷 변환 활성화 | false |
| --enable_pkt_drop | 패킷 삭제 활성화 | false |
| --enable_rtt | RTT 추적 활성화 | false |
| --enable_udn_mapping | 사용자 정의 네트워크 매핑 활성화 | false |
| --get-subnets | 서브넷 정보 가져오기 | false |
| --privileged | 강제 eBPF 에이전트 권한 모드 | auto |
| --sampling | 패킷 샘플링 간격 | 1 |
| --backRepository | 백그라운드에서 실행 | false |
| --copy | 출력 파일을 로컬로 복사 | prompt |
| --log-level | 구성 요소 로그 | info |
| --max-time | 최대 캡처 시간 | 5m |
| --max-bytes | 최대 캡처 바이트 | 50000000 = 50MB |
| --action | 필터 작업 | accept |
| --cidr | CIDR 필터링 | 0.0.0.0/0 |
| --direction | 필터 방향 | - |
| --dport | 대상 포트 필터링 | - |
| --dport_range | 대상 포트 범위 필터링 | - |
| --dports | 두 대상 포트 중 하나에서 필터링 | - |
| --drops | 삭제된 패킷만 포함된 필터 흐름 | false |
| --icmp_code | ICMP 코드 필터링 | - |
| --icmp_type | 필터 ICMP 유형 | - |
| --node-selector | 특정 노드에서 캡처 | - |
| --peer_ip | 피어 IP 필터링 | - |
| --peer_cidr | 피어 CIDR 필터링 | - |
| --port_range | 포트 범위 필터링 | - |
| --port | 필터 포트 | - |
| --ports | 두 포트 중 하나에서 필터링 | - |
| --protocol | 필터 프로토콜 | - |
| --query | 사용자 정의 쿼리를 사용하여 흐름을 필터링 | - |
| --sport_range | 소스 포트 범위 필터링 | - |
| --sport | 소스 포트 필터링 | - |
| --sports | 두 개의 소스 포트 중 하나에서 필터링 | - |
| --tcp_flags | 필터 TCP 플래그 | - |
| --interfaces | 모니터링할 인터페이스 목록, 쉼표로 구분됨 | - |
| --exclude_interfaces | 제외할 인터페이스 목록, 쉼표로 구분 | Lo |
PacketDrop 및 RTT 기능이 활성화된 TCP 프로토콜 및 포트 49051에서 흐름 캡처를 실행하는 예:
$ oc netobserv flows --enable_pkt_drop --enable_rtt --action=Accept --cidr=0.0.0.0/0 --protocol=TCP --port=49051
18.3.1.4. 패킷 캡처 옵션 링크 복사링크가 클립보드에 복사되었습니다!
필터를 사용하여 패킷 캡처와 동일한 데이터를 캡처할 수 있습니다. 패킷 드롭, DNS, RTT 및 네트워크 이벤트와 같은 특정 기능은 흐름 및 메트릭 캡처에만 사용할 수 있습니다.
oc netobserv 패킷 구문
$ oc netobserv packets [<option>]
| 옵션 | 설명 | 기본 |
|---|---|---|
| --backRepository | 백그라운드에서 실행 | false |
| --copy | 출력 파일을 로컬로 복사 | prompt |
| --log-level | 구성 요소 로그 | info |
| --max-time | 최대 캡처 시간 | 5m |
| --max-bytes | 최대 캡처 바이트 | 50000000 = 50MB |
| --action | 필터 작업 | accept |
| --cidr | CIDR 필터링 | 0.0.0.0/0 |
| --direction | 필터 방향 | - |
| --dport | 대상 포트 필터링 | - |
| --dport_range | 대상 포트 범위 필터링 | - |
| --dports | 두 대상 포트 중 하나에서 필터링 | - |
| --drops | 삭제된 패킷만 포함된 필터 흐름 | false |
| --icmp_code | ICMP 코드 필터링 | - |
| --icmp_type | 필터 ICMP 유형 | - |
| --node-selector | 특정 노드에서 캡처 | - |
| --peer_ip | 피어 IP 필터링 | - |
| --peer_cidr | 피어 CIDR 필터링 | - |
| --port_range | 포트 범위 필터링 | - |
| --port | 필터 포트 | - |
| --ports | 두 포트 중 하나에서 필터링 | - |
| --protocol | 필터 프로토콜 | - |
| --query | 사용자 정의 쿼리를 사용하여 흐름을 필터링 | - |
| --sport_range | 소스 포트 범위 필터링 | - |
| --sport | 소스 포트 필터링 | - |
| --sports | 두 개의 소스 포트 중 하나에서 필터링 | - |
| --tcp_flags | 필터 TCP 플래그 | - |
TCP 프로토콜 및 포트 49051에서 패킷 캡처를 실행하는 예:
$ oc netobserv packets --action=Accept --cidr=0.0.0.0/0 --protocol=TCP --port=49051
18.3.1.5. 메트릭 캡처 옵션 링크 복사링크가 클립보드에 복사되었습니다!
흐름 캡처와 동일한 메트릭 캡처에서 기능을 활성화하고 필터를 사용할 수 있습니다. 생성된 그래프는 그에 따라 대시보드에 채워집니다.
oc netobserv 메트릭 구문
$ oc netobserv metrics [<option>]
| 옵션 | 설명 | 기본 |
|---|---|---|
| --enable_all | 모든 eBPF 기능 활성화 | false |
| --enable_dns | DNS 추적 활성화 | false |
| --enable_ipsec | IPsec 추적 활성화 | false |
| --enable_network_events | 네트워크 이벤트 모니터링 활성화 | false |
| --enable_pkt_translation | 패킷 변환 활성화 | false |
| --enable_pkt_drop | 패킷 삭제 활성화 | false |
| --enable_rtt | RTT 추적 활성화 | false |
| --enable_udn_mapping | 사용자 정의 네트워크 매핑 활성화 | false |
| --get-subnets | 서브넷 정보 가져오기 | false |
| --privileged | 강제 eBPF 에이전트 권한 모드 | auto |
| --sampling | 패킷 샘플링 간격 | 1 |
| --backRepository | 백그라운드에서 실행 | false |
| --log-level | 구성 요소 로그 | info |
| --max-time | 최대 캡처 시간 | 1h |
| --action | 필터 작업 | accept |
| --cidr | CIDR 필터링 | 0.0.0.0/0 |
| --direction | 필터 방향 | - |
| --dport | 대상 포트 필터링 | - |
| --dport_range | 대상 포트 범위 필터링 | - |
| --dports | 두 대상 포트 중 하나에서 필터링 | - |
| --drops | 삭제된 패킷만 포함된 필터 흐름 | false |
| --icmp_code | ICMP 코드 필터링 | - |
| --icmp_type | 필터 ICMP 유형 | - |
| --node-selector | 특정 노드에서 캡처 | - |
| --peer_ip | 피어 IP 필터링 | - |
| --peer_cidr | 피어 CIDR 필터링 | - |
| --port_range | 포트 범위 필터링 | - |
| --port | 필터 포트 | - |
| --ports | 두 포트 중 하나에서 필터링 | - |
| --protocol | 필터 프로토콜 | - |
| --query | 사용자 정의 쿼리를 사용하여 흐름을 필터링 | - |
| --sport_range | 소스 포트 범위 필터링 | - |
| --sport | 소스 포트 필터링 | - |
| --sports | 두 개의 소스 포트 중 하나에서 필터링 | - |
| --tcp_flags | 필터 TCP 플래그 | - |
| --include_list | 생성할 메트릭 이름 목록, 쉼표로 구분 | namespace_flows_total,node_ingress_bytes_total,node_egress_bytes_total,workload_ingress_bytes_total |
| --interfaces | 모니터링할 인터페이스 목록, 쉼표로 구분됨 | - |
| --exclude_interfaces | 제외할 인터페이스 목록, 쉼표로 구분 | Lo |
TCP 드롭 다운에 대한 메트릭 캡처 실행 예
$ oc netobserv metrics --enable_pkt_drop --protocol=TCP