Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

정적 경로

요약 Juniper 클라우드 네이티브 Contrail Networking(CN2) 릴리스 23.1은 클러스터에 대한 정적 경로를 지원합니다. 이 문서에서는 CN2 클러스터에 대한 정적 경로를 구성하는 방법에 대한 정보를 제공합니다.

정적 경로 이해하기

네트워크에 동적 라우팅 프로토콜의 복잡성이 필요하지 않은 경우 정적 경로를 사용할 수 있습니다. 라우팅 및 포워딩 테이블의 영구적인 비품인 경로는 종종 정적 경로로 구성됩니다. 스텁 네트워크의 내부 트래픽은 정적 경로의 이점을 누릴 수 있습니다.

경로는 대상 접두사와 다음 홉 포워딩 주소로 구성됩니다. 고정 경로는 라우팅 테이블 활성화되고 다음 홉 주소에 도달할 수 있을 때 포워딩 테이블 삽입됩니다. 정적 경로와 일치하는 트래픽은 지정된 다음 홉 주소로 전달됩니다.

CN2의 정적 경로

CN2는 다음 두 개의 사용자 지정 리소스(RS)를 통해 정적 경로를 구현합니다.
  • RouteTable: 다음 홉 트래픽을 식별하기 위해 대상 접두사와 함께 사용자 정의 다음 홉 대상(nextHop)을 포함합니다. IP 주소는 nextHop 다른 VMI 개체의 IP 주소여야 합니다. 접두사에서는 트래픽 일치를 위한 다음 홉 역할을 하는 대상 네트워크를 정의합니다. A를 RouteTable 사용하면 정적 경로를 정의할 수 있습니다. 가상 네트워크(VN)와 연결할 RouteTable 수 있습니다. 다음은 CR의 예입니다 RouteTable .

    필드에 nextHopTypeip-address이 있어야 합니다. 다른 값이 있으면 사용자 입력 오류가 발생합니다. communityAttributes 필드는 BGP를 통해 경로 학습을 제어할 수 있도록 해줍니다.
  • InterfaceRouteTable: 은InterfaceRouteTable(는) 가상 머신 인터페이스(VMI)에 대한 정적 라우팅을 구성합니다. InterfaceRouteTable 은(는) 다음 홉 항목 없이 대상 접두사 포함. 와 RouteTable마찬가지로 접두사에서는 대상 네트워크 또는 다음 홉을 정의합니다. RouteTable와 달리, VMI와 연결할 InterfaceRouteTable 때 연결된 VMI가 이 접두사의 다음 홉으로 작동하기 때문에 IP 주소를 정의 nextHop 할 필요가 없습니다.

    다음은 CR의 예입니다 InterfaceRouteTable .

    필드에 nextHopTypeip-address이 있어야 합니다. 다른 값이 있으면 사용자 입력 오류가 발생합니다.
이러한 RS는 해당 네임스페이스에 적용되며, 정적 경로에 필요한 속성을 구성할 수 있습니다.

가상 네트워크를 위한 정적 경로 구성

VN에 RouteTable 정적 경로를 적용하도록 CR을 구성합니다. VN은 사양에서 을 RouteTable(를) 참조합니다. 결과적으로, 은( RouteTable는) 해당 VN과 연결되고 정적 경로가 구성됩니다. 다음은 연결된 RouteTable VN 객체입니다.

VMI에 대한 정적 경로 구성

InterfaceRouteTable 구성하여 VMI에 정적 경로를 적용합니다. VMI는 섹션 내의 InterfaceRouteTableReference 을(를) 참조합니다 InterfaceRouteTable. 다음은 을(를) 참조하는 VMI 객체입니다 InterfaceRouteTable .

Pod 인터페이스에서 정적 경로 구성

포드 매니페스트의 주석 섹션을 사용하여 포드의 기본 또는 보조 인터페이스에 대한 정적 경로를 구성할 수 있습니다. pod 조정자는 주석 섹션을 처리하여 연결된 을(를) 가진 VMI 개체를 만듭니다 InterfaceRouteTable. 화해자는 주석 섹션에서 문자열 키를 "core.juniper.net/interface-route-table"을 찾습니다. pod의 VMI는 이 문자열을 메타데이터 레이블로 사용하여 와(과) 연결합니다 InterfaceRouteTable.

다음은 기본 인터페이스에 대해 정의된 포드 매니페스트 InterfaceRouteTable 의 예입니다.

다음은 보조 인터페이스에 대해 정의된 포드 매니페스트 InterfaceRouteTable 의 예입니다. name 기본 인터페이스의 경우 은(는) 이며 vmi-rt name, 2차 인터페이스 InterfaceRouteTable 의 경우 입니다 vn-route. 동일한 namespace 에서 다른 names 2 InterfaceRouteTables 개를 정의하면 해당 포드의 기본 및 2차 인터페이스에 대한 이(가) 자동으로 생성됩니다 InterfaceRouteTable.

NAD를 사용하여 가상 네트워크에 대한 정적 경로 구성

또한 네트워크 첨부 정의(NAD) 개체에서 정적 경로 속성을 지정할 수 있습니다. NAD가 조정되거나 적용된 후, RouteTable 은(는) 생성되고 결과 VN 개체는 RouteTable을(를) 참조합니다. 다음은 정적 경로 정보가 정의된 NAD의 예입니다.

Pod 인터페이스의 여러 정적 경로

를 사용하면 InterfaceRouteTable, 여러 정적 경로를 단일 포드 인터페이스(VMI)에 연결할 수 있습니다. 즉, VMI 개체에는 IP 접두사에 따라 여러 개의 기본 다음 홉 목적지가 있습니다. 클러스터 서비스 버전(CSV) 구문 또는 JSON 구문을 annotations사용하여 여러 InterfaceRouteTable 참조를 지정할 수 있습니다.

참고:

"네임스페이 InterfaceRouteTable 스/이름" 형식으로 을(를) 참조해야 합니다. 다음 예 static-route 시에서 은(는) 네임스페이스이며 to-right to-zone-1 , 은(는) VMI의 InterfaceRouteTable left-vn 객체 또는 다음 홉 대상입니다.

다음 예는 여러 InterfaceRouteTable 참조를 Deployment 갖는 것입니다.

다음 예는 JSON 구문을 사용하여 여러 InterfaceRouteTable 참조가 있는 포드 매니페스트입니다.

참고:

JSON 구문에서 역 슬래시를 사용해야 합니다. 다른 JSON 문자열 안에 JSON 문자열을 인코딩하려면 역 슬래시가 필요합니다.

RouteTable 및 InterfaceRouteTable 문제 해결

다음 섹션에는 다양한 RouteTable 문제 및 문제를 해결할 때 유용한 명령이 포함되어 있습니다 InterfaceRouteTable .

구성 플레인 검증

  • InterfaceRouteTable 객체의 RouteTable 상태를 확인합니다.

    • 개체에 대한 InterfaceRouteTable 조정자의 상태를 확인합니다.

    • 개체에 대한 RouteTable 조정자의 상태를 확인합니다.

  • RouteTable 연결된 VN에서 참조를 확인합니다. InterfaceRouteTable 연결된 VMI에서 참조를 확인합니다.

    • VMI에 대한 조정자의 상태를 확인합니다. 연결된 UUID(universally unique identifier)가 있는 VMI에서 Contrail FQ(, namespacekindname) 이름과 같은 apiversion메타 정보를 볼 InterfaceRouteTable 수 있습니다.

데이터플레인 검증

  • 내성에서 VN의 VRF가 다음 단계를 사용하여 RT에 지정된 일치하는 정적 경로 접두사를 가진 행을 보여주는지 확인합니다.

    • VRF가 VN과 연결되어 있는지 확인합니다.

      https://%3Cvroute_ip%3E:8085/Snh_VrfListReq

    • VRF 유니캐스트 RouteTable의 ucindex 열로 이동합니다.

    • 테이블에 올바른 정적 경로 접두사를 가진 행이 포함되어 있는지 확인합니다.

  • 내성에서 VN의 다음 홉 속성이 유효한지 확인합니다. 내성에서 접두사의 다음 홉 열에는 다음이 포함되어야 합니다.
    • 다음 홉 인터페이스 이름은 유효한 탭 인터페이스여야 합니다.

    • label (는) 양의 정수여야 합니다.

    • 값은 resolved 이어야 true합니다.

    • 값은 route-type: 이어야 InterfaceStaticRoute합니다.