4장. ovnkube-trace를 사용하여 Openflow 추적


OVN 및 OVS 트래픽 흐름은 ovnkube-trace 라는 단일 유틸리티에서 시뮬레이션할 수 있습니다. ovnkube-trace 유틸리티는 ovn-trace,ovs-appctl ofproto/traceovn-detrace 를 실행하고 단일 출력에서 해당 정보와 관련이 있습니다.

전용 컨테이너에서 ovnkube-trace 바이너리를 실행할 수 있습니다. OpenShift Container Platform 4.7 이후 릴리스의 경우 바이너리를 로컬 호스트에 복사하고 해당 호스트에서 실행할 수도 있습니다.

4.1. 로컬 호스트에 ovnkube-trace 설치

ovnkube-trace 툴은 OVN-Kubernetes 기반 OpenShift Container Platform 클러스터의 지점 간 임의의 UDP 또는 TCP 트래픽에 대한 패킷 시뮬레이션을 추적합니다. ovnkube-trace 바이너리를 로컬 호스트에 복사하여 클러스터에 대해 실행할 수 있도록 합니다.

사전 요구 사항

  • OpenShift CLI(oc)를 설치합니다.
  • cluster-admin 권한이 있는 사용자로 클러스터에 로그인합니다.

프로세스

  1. 다음 명령을 사용하여 Pod 변수를 생성합니다.

    $  POD=$(oc get pods -n openshift-ovn-kubernetes -l app=ovnkube-control-plane -o name | head -1 | awk -F '/' '{print $NF}')
    Copy to Clipboard Toggle word wrap
  2. 로컬 호스트에서 다음 명령을 실행하여 ovnkube-control-plane Pod에서 바이너리를 복사합니다.

    $  oc cp -n openshift-ovn-kubernetes $POD:/usr/bin/ovnkube-trace -c ovnkube-cluster-manager ovnkube-trace
    Copy to Clipboard Toggle word wrap
    참고

    RHEL(Red Hat Enterprise Linux) 8을 사용하여 ovnkube-trace 툴을 실행하는 경우 /usr/lib/rhel8/ovnkube-trace 파일을 로컬 호스트에 복사해야 합니다.

  3. 다음 명령을 실행하여 ovnkube-trace 를 실행 가능하게 만듭니다.

    $  chmod +x ovnkube-trace
    Copy to Clipboard Toggle word wrap
  4. 다음 명령을 실행하여 ovnkube-trace 에서 사용할 수 있는 옵션을 표시합니다.

    $  ./ovnkube-trace -help
    Copy to Clipboard Toggle word wrap

    예상 출력

    Usage of ./ovnkube-trace:
      -addr-family string
        	Address family (ip4 or ip6) to be used for tracing (default "ip4")
      -dst string
        	dest: destination pod name
      -dst-ip string
        	destination IP address (meant for tests to external targets)
      -dst-namespace string
        	k8s namespace of dest pod (default "default")
      -dst-port string
        	dst-port: destination port (default "80")
      -kubeconfig string
        	absolute path to the kubeconfig file
      -loglevel string
        	loglevel: klog level (default "0")
      -ovn-config-namespace string
        	namespace used by ovn-config itself
      -service string
        	service: destination service name
      -skip-detrace
        	skip ovn-detrace command
      -src string
        	src: source pod name
      -src-namespace string
        	k8s namespace of source pod (default "default")
      -tcp
        	use tcp transport protocol
      -udp
        	use udp transport protocol
    Copy to Clipboard Toggle word wrap

    지원되는 명령줄 인수는 네임스페이스, 포드, 서비스와 같이 친숙한 Kubernetes 구성이므로 MAC 주소, 대상 노드의 IP 주소 또는 ICMP 유형을 찾을 필요가 없습니다.

    로그 수준은 다음과 같습니다.

    • 0 (최소 출력)
    • 2 (추적 명령의 결과를 보여주는 더 자세한 출력)
    • 5 (디버그 출력)
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat