1.32. Submariner 엔드 투 엔드 테스트 실패 문제 해결
Submariner 엔드 투 엔드 테스트를 실행한 후 오류가 발생할 수 있습니다. 다음 섹션을 사용하여 이러한 엔드 투 엔드 테스트 실패 문제를 해결하는 데 도움이 됩니다.
1.32.1. 증상: 하위 계층 데이터 플레인 테스트가 실패했습니다. 링크 복사링크가 클립보드에 복사되었습니다!
엔드 투 엔드 데이터 플레인 테스트에 실패하면 Submariner 테스트에서 커넥터
Pod가 리스너
Pod에 연결할 수 있지만 나중에 커넥터
Pod가 수신 대기
단계에서 중단되는 것을 보여줍니다.
1.32.2. 문제 해결: Submariner end-to-end data plane test fails 링크 복사링크가 클립보드에 복사되었습니다!
MTU(최대 전송 단위)는 엔드 투 엔드 데이터 플레인 테스트 실패를 유발할 수 있습니다. 예를 들어 MTU로 인해 IPsec(Internet Protocol Security)을 통한 클러스터 간
트래픽이 실패할 수 있습니다. 작은 패킷 크기를 사용하는 엔드 투 엔드 데이터 플레인 테스트를 실행하여 MTU가 실패했는지 확인합니다.
이 유형의 테스트를 실행하려면 Submariner 작업 영역에서 다음 명령을 실행합니다.
subctl verify --verbose --only connectivity --context <from_context> --tocontext <to_context> --image-override submariner-nettest=quay.io/submariner/nettest:devel --packet-size 200
subctl verify --verbose --only connectivity --context <from_context> --tocontext <to_context> --image-override submariner-nettest=quay.io/submariner/nettest:devel --packet-size 200
테스트에 이 작은 패킷 크기로 성공하면 TCP(전송 제어 프로토콜) 최대 세그먼트 크기(MSS)를 설정하여 연결 문제를 해결할 수 있습니다. 다음 단계를 완료하여 TCP MSS를 설정합니다.
게이트웨이 노드에 주석을 달아 TCP MSS
클
amping 값을 설정합니다. 예를 들어 값1200
을 사용하여 다음 명령을 실행합니다.oc annotate node <node_name> submariner.io/tcp-clamp-mss=1200
oc annotate node <node_name> submariner.io/tcp-clamp-mss=1200
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 모든
RouteAgent
Pod를 다시 시작합니다.oc delete pod -n submariner-operator -l app=submariner-routeagent
oc delete pod -n submariner-operator -l app=submariner-routeagent
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.32.3. 증상: 베어 메탈 클러스터에서 하위 계층 간 테스트가 실패했습니다. 링크 복사링크가 클립보드에 복사되었습니다!
컨테이너 네트워크 인터페이스(CNI)가 OpenShiftSDN인 경우 엔드 투 엔드 데이터 플레인 테스트가 없거나 클러스터 간 터널에 가상 확장 가능한 로컬 영역 네트워크(VXLAN)가 사용되는 경우 베어 메탈 클러스터에
실패할 수 있습니다.
1.32.4. 문제 해결: 베어 메탈 클러스터에서 하위 계층 간 테스트가 실패했습니다. 링크 복사링크가 클립보드에 복사되었습니다!
하드웨어에서 UDP(User Datagram Protocal) 체크섬 계산의 버그는 베어 메탈 클러스터의 엔드 투 엔드 데이터 플레인 테스트 실패의 근본 원인이 될 수 있습니다. 이 버그 문제를 해결하려면 다음 YAML 파일을 적용하여 하드웨어 오프로드를 비활성화합니다.