Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Modelos de calor vMX para OpenStack

Modelos de calor definem instâncias e topologias vMX no OpenStack. Leia este tópico para entender como criar instâncias vMX que podem ser usadas com um modelo de topologia para definir a interconexão de instâncias vMX.

Modelos de calor vMX

Modelos de calor definem instâncias e topologias vMX no OpenStack. O modelo vmx.yaml define uma instância vMX, incluindo o VCP, o VFP e a ponte entre eles. Ele também define quaisquer portas e pontes WAN. Um modelo de topologia pode ter várias instâncias vMX interconectadas por pontes. Os modelos de calor obtêm os parâmetros de entrada do arquivo de ambiente correspondente.

Você pode baixar o pacote de software vMX na página vMX e descomprimir o pacote para modelos de amostra.

Modelo de instância vMX

Você pode personalizar o modelo vmx.yaml para criar instâncias vMX. O modelo Heat obtém seus parâmetros de entrada do arquivo de ambiente correspondente.

No modelo de instância vMX, você modifica esses recursos:

  • OS:Networking::VmxPort — define a porta WAN do FPC para interfaces virtio como ge-x/x/x ou xe/0/0/0. Os parâmetros de entrada obtidos no arquivo do ambiente são iD de rede da rede na qual a porta WAN é adicionada (vnetwork_id) e o nome da porta (pname). Isso stack_name não muda.

  • OS:Networking::VmxSriovPort — define a porta WAN do FPC para interfaces SR-IOV como ge-x/x/x ou xe/0/0/0/ 0. Os parâmetros de entrada obtidos no arquivo do ambiente são iD de rede da rede na qual a porta WAN é adicionada (vnetwork_id) e o nome da porta (pname). Isso stack_name não muda.

Você pode encontrar os modelos de instâncias de exemplo em package-location/openstack.

Modelo de topologia vMX

Você pode personalizar o modelo vmx.yaml para criar instâncias vMX que podem ser usadas com um arquivo de topologia para definir como interconectar instâncias vMX. O modelo Heat obtém seus parâmetros de entrada do arquivo de ambiente correspondente.

No modelo de topologia, você modifica esses recursos:

  • OS:Networking::VmxNet — define a instância de ponte OVS. Os parâmetros de entrada obtidos no arquivo de ambiente são o CIDR da rede (net_cidr) e o nome da ponte (bname). O stack_name está sempre definido para get_param: 'OS::stack_name'.

  • OS:Nova::Vmx — define a instância vMX. Os parâmetros de entrada obtidos no arquivo do ambiente são o ID de rede da ponte (net_id1) e o stack_name.

Você pode encontrar os modelos de instâncias de exemplo em package-location/openstack/vmx-topologias/osp-topologias.

Arquivo de ambiente

O modelo Heat obtém seus parâmetros de entrada do arquivo de ambiente correspondente. O arquivo de ambiente está no formato YAML.

O arquivo de ambiente para a instância vMX tem o net_id1 parâmetro:

onde net_id1 está a ID de rede da rede de nêutrons existente com uma determinada ID VLAN usada para a porta WAN.

O arquivo de ambiente para topologia tem o n1 parâmetro, que é o nome da instância.

Começando pelo Junos OS Release 17.4R1, o arquivo do ambiente tem esses padrões de parâmetro.

Onde

  • public_network— ID de rede da rede de nêutrons existente usada para a porta de gerenciamento (fxp0).

  • fpc_img— Altere esse parâmetro para linux-img. Nome da imagem de olhar para o VFP que foi criado por script para instalar imagens vMX.

    Para as versões do Junos OS 17.3R1 e anteriores, vfp_image é o parâmetro. Nome da imagem de olhar para o VFP que foi criado por script para instalar as imagens vMX.

  • fpc_flav— Altere esse parâmetro para linux-flav. Nome do novo sabor para o VFP que foi criado por script para criar sabores OpenStack.

    Para as versões do Junos OS 17.3R1 e anteriores, vfp_flavor é o parâmetro. Nome do novo sabor para o VFP que foi criado por script para criar sabores OpenStack.

  • junos_flav— Nome do novo sabor para o VCP que foi criado por script para criar sabores OpenStack.

    Para as versões do Junos OS 17.3R1 e anteriores, vcp_flavor é o parâmetro. Nome do novo sabor para o VCP que foi criado por script para criar sabores OpenStack.

  • junos_img— Nome da imagem de olhar para o VCP que foi criado por script para instalar imagens vMX.

    Para as versões do Junos OS 17.3R1 e anteriores, vcp_image é o parâmetro. Nome da imagem de olhar para o VCP que foi criado por script para instalar as imagens vMX.

  • project_name— Qualquer nome do projeto. Todos os recursos usarão esse nome como prefixo.

  • gateway_ip— Endereço IP do gateway.

Na versão do Junos OS antes do 17.4R1, o arquivo do ambiente tem os seguintes padrões de parâmetro.

Onde

  • public_network— ID de rede da rede de nêutrons existente usada para a porta de gerenciamento (fxp0).

  • vfp_image— Nome da imagem de olhar para o VFP que foi criado por script para instalar imagens vMX.

  • vfp_flavor— Nome do novo sabor para o VFP que foi criado por script para criar sabores OpenStack.

  • vcp_flavor— Nome do novo sabor para o VCP que foi criado por script para criar sabores OpenStack.

  • vcp_image— Nome da imagem de olhar para o VCP que foi criado por script para instalar imagens vMX.

  • project_name— Qualquer nome do projeto. Todos os recursos usarão esse nome como prefixo.

  • gateway_ip— Endereço IP do gateway.

Modificando as portas em um modelo de calor para uma instância

Você pode modificar o modelo de instância vMX para adicionar ou excluir portas e alterar entre interfaces virtio e SR-IOV. Por exemplo, o package-locationarquivo /openstack/1vmx.yaml cria uma única instância.

Para adicionar uma porta ao modelo:

  1. Baixe o pacote de software vMX KVM na página vMX e descompacte o pacote.

    tar xvf package-name

  2. Altere o diretório para a localização dos arquivos.

    cd package-location/openstack

  3. Edite o arquivo 1vmx.yaml para modificar o os::Networking::recurso VmxPort.

    Para adicionar uma porta virtio, adicione outro OS:Networking::Entrada VmxPort, mas altere o número de porta para o próximo número, o vnetwork_id parâmetro para net_id2 e o pname parâmetro para o nome da nova porta. Por exemplo:

    Nota:

    Se você estiver adicionando entradas de porta virtio (OS::Networking::recurso VmxPort), certifique-se de não incluir entradas de porta SR-IOV (OS:Networking::recurso VmxSriovPort) porque interfaces mistas não são suportadas.

  4. Para adicionar uma porta SR-IOV, altere o type parâmetro para OS::Networking::VmxSriovPort para o OS::Networking::Entrada VmxPort.

    Para adicionar outra porta SR-IOV, adicione outro OS: Networking::Entrada do VmxSriovPort, mas altere o número de porta para o próximo número, o vnetwork_id parâmetro para o próximo número e o pname parâmetro para o nome da nova porta. Por exemplo, se o arquivo modelo já tiver duas portas:

    Nota:

    Se você estiver adicionando entradas de porta SR-IOV (OS::Networking::recurso VmxSriovPort), certifique-se de não incluir entradas de porta virtio (OS:Networking::recurso de VmxPort) porque interfaces mistas não são suportadas.

  5. Se você tiver mais de uma porta, você deve modificar o package-locationarquivo /openstack/vmx.yaml para adicionar outra {get_attr: [fpc0_ge_port1, port]} entrada (separada por uma vírgula) na fpc0 seção de recursos sob all_ports propriedades para cada porta adicional e alterar o número de porta para o próximo número. Por exemplo, essa configuração tem duas portas.
  6. Adicione parâmetros adicionais net_id na seção de parâmetros do arquivo de modelo para cada vnetwork_id que você adicionou para os recursos da VmxPort ou VmxSriovPort.
  7. Adicione parâmetros adicionais net_id na seção de parâmetros do arquivo de ambiente correspondente para cada vnetwork_id que você adicionou para os recursos VmxPort ou VmxSriovPort.
    Nota:

    Se você estiver adicionando interfaces SR-IOV, certifique-se de ter preparado os nós do controlador e da computação corretamente. Veja a instalação do vMX no OpenStack.

  8. Crie a instância vMX com o heat stack-create –f heat-filename –e environment-filename vmx-name comando.
  9. Verifique se a instância vMX foi criada com o heat stack-list | grep vmx-name comando.

Para excluir uma porta, remova todas as linhas que você incluiu para adicionar uma porta.

Definir uma topologia

Você pode criar instâncias vMX que podem ser usadas com um modelo de topologia para definir como interconectar instâncias vMX. O modelo Heat obtém seus parâmetros de entrada do arquivo de ambiente correspondente. Os exemplos a seguir demonstram como modificar topologias.

Criação de uma instância vMX em uma rede WAN existente

O package-locationarquivo /openstack/vmx-topologias/osp-topologias/1vmx1net.yaml cria uma instância vMX com portas em uma ponte existente.

Para adicionar uma instância vMX a este modelo:

  1. Copie o arquivo e o arquivo do ambiente do modelo de topologia de amostra para o diretório de alto nível.
  2. Edite o arquivo 1vmx1net.yaml para adicionar outro OS:Nova::Entrada Vmx, mas altere o último stack_name parâmetro para o próximo número. Por exemplo:
  3. Certifique-se de que o net_id parâmetro esteja listado na seção de parâmetros do arquivo de ambiente correspondente para a instância vMX (neste caso, 1vmx.env).
    Nota:

    Se você estiver adicionando interfaces SR-IOV, certifique-se de ter preparado os nós do controlador e da computação corretamente.

  4. Inicie as instâncias vMX com o heat stack-create –f heat-filename –e environment-filename stack-name comando.
  5. Verifique se a instância vMX foi criada com o heat stack-list | grep vmx-name comando.

Conexão de instâncias vMX com duas pontes OVS

O package-locationarquivo /openstack/vmx-topologias/osp-topologias/2vmx1net.yaml cria duas instâncias com uma porta cada uma que compartilham uma ponte.

Para adicionar uma ponte que conecta uma segunda porta em cada instância vMX:

  1. Copie o arquivo e o arquivo do ambiente do modelo de topologia de amostra para o diretório de alto nível.
  2. Edite o arquivo 2vmx1net.yaml para adicionar outro OS::Networking::Entrada VmxNet, mas altere o CIDR da rede (net_cidr) e o nome da ponte (bname) para o próximo número. Por exemplo:
  3. A cada OS:Nova::Entrada Vmx, adicione o próximo ID da rede da ponte. Por exemplo:
  4. Adicione ge_cidr parâmetro sob a seção de parâmetros para a porta.
  5. Certifique-se de que a seção de parâmetros do arquivo de ambiente correspondente para a instância vMX (neste caso, 1vmx.env) lista todos os net_id parâmetros.
    Nota:

    Se você estiver adicionando interfaces SR-IOV, certifique-se de ter preparado os nós do controlador e da computação corretamente.

  6. Inicie as instâncias vMX com o heat stack-create –f heat-filename –e environment-filename stack-name comando.
  7. Verifique se a instância vMX foi criada com o heat stack-list | grep vmx-name comando.