Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

OpenStack을 위한 vMX Heat 템플릿

Heat 템플릿은 OpenStack에서 vMX 인스턴스 및 토폴로지를 정의합니다. 이 주제를 읽고 vMX 인스턴스의 상호 연결을 정의하는 토폴로지 템플릿과 함께 사용할 수 있는 vMX 인스턴스를 만드는 방법을 알아보십시오.

vMX Heat 템플릿

Heat 템플릿은 OpenStack에서 vMX 인스턴스 및 토폴로지를 정의합니다. vmx.yaml 템플릿은 VCP, VFP 및 이들 간의 브리지를 포함하여 vMX 인스턴스를 정의합니다. 또한 모든 WAN 포트와 브리지를 정의합니다. 토폴로지 템플릿은 브리지로 상호 연결된 여러 vMX 인스턴스를 가질 수 있습니다. Heat 템플릿은 해당 환경 파일에서 입력 매개 변수를 가져옵니다.

vMX 페이지에서 vMX 소프트웨어 패키지를 다운로드하고 샘플 템플릿에 대한 패키지를 압축 해제할 수 있습니다.

vMX 인스턴스 템플릿

vmx.yaml 템플릿을 커스터마이즈하여 vMX 인스턴스를 생성할 수 있습니다. Heat 템플릿은 해당 환경 파일에서 입력 매개 변수를 입수합니다.

vMX 인스턴스 템플릿에서 다음 리소스를 수정합니다.

  • OS::네트워킹::VmxPort—virtio 인터페이스를 위한 FPC의 WAN 포트를 ge-x/x/x 또는 xe/0/0/0으로 정의합니다. 환경 파일에서 얻은 입력 매개 변수는 WAN 포트가 추가되는 네트워크의 네트워크 ID와 포트 이름(vnetwork_idpname)입니다. 변경하지 stack_name 않습니다.

  • OS::네트워킹::VmxSriovPort—sR-IOV 인터페이스용 FPC의 WAN 포트를 ge-x/x/x 또는 xe/0/0/0으로 정의합니다. 환경 파일에서 얻은 입력 매개 변수는 WAN 포트가 추가되는 네트워크의 네트워크 ID와 포트 이름(vnetwork_idpname)입니다. 변경하지 stack_name 않습니다.

샘플 인스턴스 템플릿은 /openstack에서package-location 찾을 수 있습니다.

vMX 토폴로지 템플릿

vmx.yaml 템플릿을 커스터마이즈하여 토폴로지 파일과 함께 사용할 수 있는 vMX 인스턴스를 생성하여 vMX 인스턴스를 상호 연결하는 방법을 정의할 수 있습니다. Heat 템플릿은 해당 환경 파일에서 입력 매개 변수를 입수합니다.

토폴로지 템플릿에서 다음 리소스를 수정합니다.

  • OS::네트워킹::VmxNet—OVS 브리지 인스턴스를 정의합니다. 환경 파일에서 얻은 입력 매개 변수는 네트워크의 CIDR(net_cidr)과 브리지 이름(bname)입니다. 항상 stack_name 으로 설정됩니다 get_param: 'OS::stack_name'.

  • OS::Nova::Vmx—vMX 인스턴스를 정의합니다. 환경 파일에서 얻은 입력 매개 변수는 브리지(net_id1) 및 stack_name.

샘플 인스턴스 템플릿은 /openstack/vmx-topologies/osp-topologies에서package-location 찾을 수 있습니다.

환경 파일

Heat 템플릿은 해당 환경 파일에서 입력 매개 변수를 입수합니다. 환경 파일은 YAML 형식입니다.

vMX 인스턴스의 환경 파일에는 다음과 같은 매개 변수가 있습니다 net_id1 .

WAN 포트에 사용되는 VLAN ID가 지정된 기존 중성자 네트워크의 네트워크 ID가 있는 위치 net_id1 입니다.

토폴로지의 환경 파일에는 n1 인스턴스 이름인 매개 변수가 있습니다.

Junos OS 릴리스 17.4R1부터 환경 파일에는 이러한 매개 변수 기본값이 있습니다.

어디

  • public_network—관리(fxp0) 포트에 사용되는 기존 중성자 네트워크의 네트워크 ID.

  • fpc_img—이 매개 변수를 linux-img. vMX 이미지를 설치하기 위해 스크립트로 만든 VFP의 개요 이미지 이름입니다.

    Junos OS 릴리스 17.3R1 이전의 경우 매개 vfp_image 변수입니다. vMX 이미지를 설치하기 위해 스크립트로 만든 VFP의 개요 이미지 이름입니다.

  • fpc_flav—이 매개 변수를 linux-flav. OpenStack 맛을 만들기 위해 스크립트에 의해 만들어진 VFP의 nova 맛의 이름입니다.

    Junos OS 릴리스 17.3R1 이전의 경우 매개 vfp_flavor 변수입니다. OpenStack 맛을 만들기 위해 스크립트에 의해 만들어진 VFP의 nova 맛의 이름입니다.

  • junos_flav—OpenStack 풍미를 생성하기 위해 스크립트로 만든 VCP의 nova 맛 이름입니다.

    Junos OS 릴리스 17.3R1 이전의 경우 매개 vcp_flavor 변수입니다. OpenStack 맛을 만들기 위해 스크립트에 의해 만들어진 VCP의 nova 맛의 이름입니다.

  • junos_img—vMX 이미지를 설치하기 위해 스크립트에 의해 생성된 VCP의 개요 이미지 이름입니다.

    Junos OS 릴리스 17.3R1 이전의 경우 매개 vcp_image 변수입니다. vMX 이미지를 설치하기 위해 스크립트로 만든 VCP의 개요 이미지 이름입니다.

  • project_name—모든 프로젝트 이름. 모든 리소스는 이 이름을 Prefix로 사용합니다.

  • gateway_ip—게이트웨이 IP 주소.

17.4R1 이전의 Junos OS 릴리스에서 환경 파일에는 다음과 같은 매개 변수 기본값이 있습니다.

어디

  • public_network—관리(fxp0) 포트에 사용되는 기존 중성자 네트워크의 네트워크 ID.

  • vfp_image—vMX 이미지를 설치하기 위해 스크립트로 만든 VFP의 개요 이미지 이름입니다.

  • vfp_flavor—OpenStack 맛을 생성하기 위해 스크립트로 만든 VFP의 nova 맛 이름입니다.

  • vcp_flavor—OpenStack 풍미를 생성하기 위해 스크립트로 만든 VCP의 nova 맛 이름입니다.

  • vcp_image—vMX 이미지를 설치하기 위해 스크립트에 의해 생성된 VCP의 개요 이미지 이름입니다.

  • project_name—모든 프로젝트 이름. 모든 리소스는 이 이름을 Prefix로 사용합니다.

  • gateway_ip—게이트웨이 IP 주소.

인스턴스를 위한 Heat 템플릿의 포트 수정

vMX 인스턴스 템플릿을 수정하여 포트를 추가 또는 삭제하고 virtio와 SR-IOV 인터페이스 간을 변경할 수 있습니다. 예를 들어/package-locationopenstack/1vmx.yaml 파일은 단일 인스턴스를 만듭니다.

템플릿에 포트를 추가하려면 다음을 수행합니다.

  1. vMX 페이지에서 vMX KVM 소프트웨어 패키지를 다운로드하고 패키지를 압축 해제합니다.

    tar xvf package-name

  2. 파일 위치로 디렉토리를 변경합니다.

    cd package-location/openstack

  3. 1vmx.yaml 파일을 편집하여 OS::네트워킹::VmxPort 리소스를 수정합니다.

    virtio 포트를 추가하려면 다른 OS::Networking::VmxPort 엔트리를 추가하지만 포트 번호를 다음 번호로 vnetwork_id 변경하고 net_id2 매개 변수와 pname 새 포트 이름에 대한 매개 변수를 변경합니다. 예를 들어:

    참고:

    virtio 포트 엔트리(OS::Networking::VmxPort 리소스)를 추가하는 경우 혼합 인터페이스가 지원되지 않기 때문에 SR-IOV 포트 항목(OS::네트워킹::VmxSriovPort 리소스)을 포함하지 않는지 확인하십시오.

  4. SR-IOV 포트를 추가하려면 OS::Networking::OS를 위한 VmxSriovPort::Networking::VmxPort 항목으로 매개 변수를 변경 type 합니다.

    다른 SR-IOV 포트를 추가하려면 다른 OS::Networking::VmxSriovPort 엔트리를 추가하지만 포트 번호를 다음 번호로 변경하고 다음 번호 vnetwork_id 로 매개 변수를 지정하고 pname 새 포트 이름에 대한 매개 변수를 변경합니다. 예를 들어 템플릿 파일에 이미 두 개의 포트가 있는 경우

    참고:

    SR-IOV 포트 엔트리(OS::Networking::VmxSriovPort 리소스)를 추가하는 경우 혼합 인터페이스가 지원되지 않기 때문에 virtio 포트 항목(OS::네트워킹::VmxPort 리소스)을 포함하지 않는지 확인하십시오.

  5. 두 개 이상의 포트가 있는 경우 리소스 섹션에서 각 추가 포트에 대한 속성에 all_ports 있는 다른 {get_attr: [fpc0_ge_port1, port]} 항목(쉼표로 구분)fpc0을 추가하도록 /openstack/vmx.yaml 파일을 수정package-location하고 포트 번호를 다음 번호로 변경해야 합니다. 예를 들어 이 구성에는 포트가 두 개 있습니다.
  6. VmxPort 또는 VmxSriovPort 리소스에 추가한 각 vnetwork_id 대해 템플릿 파일의 매개 변수 섹션에 추가 net_id 매개 변수를 추가합니다.
  7. VmxPort 또는 VmxSriovPort 리소스에 추가한 각 vnetwork_id 대해 해당 환경 파일의 매개 변수 섹션에 추가 net_id 매개 변수를 추가합니다.
    참고:

    SR-IOV 인터페이스를 추가하는 경우 컨트롤러와 컴퓨팅 노드를 올바르게 준비했는지 확인하십시오. OpenStack에 vMX 설치를 참조하십시오.

  8. 명령으로 vMX 인스턴스를 만듭니다 heat stack-create –f heat-filename –e environment-filename vmx-name .
  9. vMX 인스턴스가 명령어로 생성되었는지 확인합니다 heat stack-list | grep vmx-name .

포트를 삭제하려면 포함된 모든 라인을 제거하여 포트를 추가하십시오.

토폴로지 정의

토폴로지 템플릿과 함께 사용할 수 있는 vMX 인스턴스를 생성하여 vMX 인스턴스를 상호 연결하는 방법을 정의할 수 있습니다. Heat 템플릿은 해당 환경 파일에서 입력 매개 변수를 입수합니다. 다음 예제에서는 토폴로지를 수정하는 방법을 보여줍니다.

기존 WAN 네트워크에서 vMX 인스턴스 생성

/openstack/vmx-topologies/osp-topologies/1vmx1net.yaml 파일은package-location 기존 브리지에 포트가 있는 하나의 vMX 인스턴스를 만듭니다.

이 템플릿에 vMX 인스턴스를 추가하려면 다음을 수행합니다.

  1. 샘플 토폴로지 템플릿 파일 및 환경 파일을 최상위 디렉토리에 복사합니다.
  2. 1vmx1net.yaml 파일을 편집하여 다른 OS::Nova::Vmx 엔트리를 추가하지만 마지막 stack_name 매개 변수를 다음 번호로 변경합니다. 예를 들어:
  3. 매개 변수가 vMX 인스턴스에 대한 해당 환경 파일의 매개 변수 섹션 아래에 나열되어 있는지 확인 net_id 합니다(이 경우 1vmx.env).
    참고:

    SR-IOV 인터페이스를 추가하는 경우 컨트롤러와 컴퓨팅 노드를 올바르게 준비했는지 확인하십시오.

  4. 명령으로 vMX 인스턴스를 heat stack-create –f heat-filename –e environment-filename stack-name 시작합니다.
  5. vMX 인스턴스가 명령어로 생성되었는지 확인합니다 heat stack-list | grep vmx-name .

2개의 OVS 브리지로 vMX 인스턴스 연결

/openstack/vmx-topologies/osp-topologies/2vmx1net.yaml 파일은package-location 브리지를 공유하는 각 포트 1개와 함께 2개의 인스턴스를 만듭니다.

각 vMX 인스턴스에서 두 번째 포트를 연결하는 브리지를 추가하려면 다음을 수행합니다.

  1. 샘플 토폴로지 템플릿 파일 및 환경 파일을 최상위 디렉토리에 복사합니다.
  2. 2vmx1net.yaml 파일을 편집하여 다른 OS:::Networking::VmxNet 엔트리를 추가하지만 네트워크의 CIDR()과 브리지 이름(net_cidrbname)을 다음 번호로 변경합니다. 예를 들어:
  3. 각 OS::Nova::Vmx 항목에 다음 브리지 네트워크 ID를 추가합니다. 예를 들어:
  4. 포트의 매개변수 섹션에 매개 변수를 추가 ge_cidr 합니다.
  5. vMX 인스턴스(이 경우 1vmx.env)에 대한 해당 환경 파일의 매개 변수 섹션에 모든 매개 변수가 net_id 나열되는지 확인합니다.
    참고:

    SR-IOV 인터페이스를 추가하는 경우 컨트롤러와 컴퓨팅 노드를 올바르게 준비했는지 확인하십시오.

  6. 명령으로 vMX 인스턴스를 heat stack-create –f heat-filename –e environment-filename stack-name 시작합니다.
  7. vMX 인스턴스가 명령어로 생성되었는지 확인합니다 heat stack-list | grep vmx-name .