Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Modèles de heat vMX pour OpenStack

Les modèles heat définissent les instances et topologies vMX sur OpenStack. Lisez ce sujet pour découvrir comment créer des instances vMX pouvant être utilisées avec un modèle de topologie pour définir l’interconnexion des instances vMX.

Modèles de heat vMX

Les modèles heat définissent les instances et topologies vMX sur OpenStack. Le modèle vmx.yaml définit une instance vMX, y compris le VCP, le VFP et le pont entre eux. Elle définit également tous les ports et ponts WAN. Un modèle de topologie peut avoir plusieurs instances vMX interconnectées par des ponts. Les modèles Heat obtiennent leurs paramètres d’entrée dans le fichier d’environnement correspondant.

Vous pouvez télécharger le package logiciel vMX à partir de la page vMX et le décompresser pour obtenir des modèles d’exemple.

Modèle d’instance vMX

Vous pouvez personnaliser le modèle vmx.yaml pour créer des instances vMX. Le modèle Heat obtient ses paramètres d’entrée dans le fichier d’environnement correspondant.

Dans le modèle d’instance vMX, vous modifiez ces ressources :

  • OS::Networking::VmxPort : définit le port WAN du FPC pour les interfaces virtio comme ge-x/x/x ou xe/0/0. Les paramètres d’entrée obtenus à partir du fichier d’environnement sont l’ID du réseau sur lequel le port WAN est ajouté (vnetwork_id) et le nom du port (pname). Le stack_name ne change pas.

  • OS::Networking::VmxSriovPort : définit le port WAN du FPC pour les interfaces SR-IOV comme ge-x/x/x ou xe/0/0. Les paramètres d’entrée obtenus à partir du fichier d’environnement sont l’ID du réseau sur lequel le port WAN est ajouté (vnetwork_id) et le nom du port (pname). Le stack_name ne change pas.

Vous trouverez les exemples de modèles d’instance sur package-location/openstack.

Modèle de topologie vMX

Vous pouvez personnaliser le modèle vmx.yaml pour créer des instances vMX qui peuvent être utilisées avec un fichier de topologie pour définir comment interconnecter les instances vMX. Le modèle Heat obtient ses paramètres d’entrée dans le fichier d’environnement correspondant.

Dans le modèle de topologie, vous modifiez ces ressources :

  • OS::Networking::VmxNet : définit l’instance de pont OVS. Les paramètres d’entrée obtenus à partir du fichier d’environnement sont le CIDR du réseau (net_cidr) et le nom du pont (bname). Le stack_name est toujours défini sur get_param: 'OS::stack_name'.

  • OS::Nova::Vmx : définit l’instance vMX. Les paramètres d’entrée obtenus à partir du fichier d’environnement sont l’ID réseau du pont (net_id1) et le stack_name.

Vous trouverez les modèles d’instance à l’adressepackage-location /openstack/vmx-topologies/osp-topologies.

Fichier d’environnement

Le modèle Heat obtient ses paramètres d’entrée dans le fichier d’environnement correspondant. Le fichier d’environnement est au format YAML.

Le fichier d’environnement de l’instance vMX comporte les net_id1 paramètres suivants :

net_id1 est l’ID réseau du réseau à neutrons existant avec un ID VLAN donné utilisé pour le port WAN.

Le fichier d’environnement de la topologie a le n1 paramètre, qui est le nom de l’instance.

À partir de Junos OS version 17.4R1, le fichier d’environnement possède ces paramètres par défaut.

  • public_network— ID réseau du réseau de neutrons existant utilisé pour le port de gestion (fxp0).

  • fpc_img: remplacez ce paramètre par linux-img. Nom de l’image du coup d’œil pour le VFP créé par script pour installer des images vMX.

    Pour Junos OS versions 17.3R1 et antérieures, vfp_image est le paramètre. Nom de l’image du coup d’œil pour le VFP créé par script pour installer les images vMX.

  • fpc_flav: remplacez ce paramètre par linux-flav. Nom de la saveur nova pour le VFP qui a été créé par script pour créer des saveurs OpenStack.

    Pour Junos OS versions 17.3R1 et antérieures, vfp_flavor est le paramètre. Nom de la saveur nova pour le VFP qui a été créé par script pour créer des saveurs OpenStack.

  • junos_flav— Nom de la saveur nova pour le VCP qui a été créé par script pour créer des saveurs OpenStack.

    Pour Junos OS versions 17.3R1 et antérieures, vcp_flavor est le paramètre. Nom de la saveur nova pour le VCP qui a été créé par script pour créer des saveurs OpenStack.

  • junos_img: nom de l’image du VCP créé par script pour installer des images vMX.

    Pour Junos OS versions 17.3R1 et antérieures, vcp_image est le paramètre. Nom de l’image du VCP créé par script pour installer les images vMX.

  • project_name— N’importe quel nom de projet. Toutes les ressources utiliseront ce nom comme préfixe.

  • gateway_ip— Adresse IP de la passerelle.

Dans la version Junos OS antérieure à 17.4R1, le fichier d’environnement possède les paramètres par défaut suivants.

  • public_network— ID réseau du réseau de neutrons existant utilisé pour le port de gestion (fxp0).

  • vfp_image— Nom de l’image du regard pour le VFP créé par script pour installer des images vMX.

  • vfp_flavor: nom de la saveur nova pour le VFP créé par script pour créer des saveurs OpenStack.

  • vcp_flavor— Nom de la saveur nova pour le VCP qui a été créé par script pour créer des saveurs OpenStack.

  • vcp_image: nom de l’image du VCP créé par script pour installer des images vMX.

  • project_name— N’importe quel nom de projet. Toutes les ressources utiliseront ce nom comme préfixe.

  • gateway_ip— Adresse IP de la passerelle.

Modification des ports dans un modèle Heat pour une instance

Vous pouvez modifier le modèle d’instance vMX pour ajouter ou supprimer des ports et changer entre les interfaces virtio et SR-IOV. Par exemple, le package-locationfichier /openstack/1vmx.yaml crée une seule instance.

Pour ajouter un port au modèle :

  1. Téléchargez le package logiciel vMX KVM à partir de la page vMX et décochez le package.

    tar xvf package-name

  2. Remplacez le répertoire par l’emplacement des fichiers.

    cd package-location/openstack

  3. Modifiez le fichier 1vmx.yaml pour modifier la ressource OS::Networking::VmxPort.

    Pour ajouter un port virtio, ajoutez une autre entrée OS::Networking::VmxPort, mais remplacez le numéro de port suivant, le vnetwork_id paramètre par net_id2 et le pname paramètre par le nom du nouveau port. Par exemple :

    Note:

    Si vous ajoutez des entrées de port virtio (ressource OS::Networking::VmxPort), assurez-vous de ne pas inclure d’entrées de port SR-IOV (OS::Networking::Ressource VmxSriovPort) car les interfaces mixtes ne sont pas prises en charge.

  4. Pour ajouter un port SR-IOV, remplacez le type paramètre OS::Networking::VmxSriovPort pour l’entrée OS::Networking::VmxPort.

    Pour ajouter un autre port SR-IOV, ajoutez une autre entrée OS::Networking::VmxSriovPort, mais changez le numéro de port par le numéro suivant, le vnetwork_id paramètre par le numéro suivant et le pname paramètre par le nom du nouveau port. Par exemple, si le fichier modèle possède déjà deux ports :

    Note:

    Si vous ajoutez des entrées de port SR-IOV (OS::Networking::VmxSriovPort ressource), assurez-vous de ne pas inclure d’entrées de port virtio (OS::Networking::Ressource VmxPort) car les interfaces mixtes ne sont pas prises en charge.

  5. Si vous disposez de plusieurs ports, vous devez modifier le package-locationfichier /openstack/vmx.yaml pour ajouter une autre {get_attr: [fpc0_ge_port1, port]} entrée (séparée par une virgule) dans la fpc0 section ressources sous all_ports propriétés pour chaque port supplémentaire et en changeant le numéro de port par le numéro suivant. Par exemple, cette configuration a deux ports.
  6. Ajoutez des paramètres supplémentaires net_id dans la section paramètres du fichier de modèle pour chaque vnetwork_id que vous avez ajouté pour les ressources VmxPort ou VmxSriovPort.
  7. Ajoutez des paramètres supplémentaires net_id dans la section paramètres du fichier d’environnement correspondant pour chaque vnetwork_id que vous avez ajouté pour les ressources VmxPort ou VmxSriovPort.
    Note:

    Si vous ajoutez des interfaces SR-IOV, assurez-vous d’avoir bien préparé le contrôleur et les nœuds de calcul. Voir installation de vMX sur OpenStack.

  8. Créez l’instance vMX avec la heat stack-create –f heat-filename –e environment-filename vmx-name commande.
  9. Vérifiez que l’instance vMX est créée à l’aide de la heat stack-list | grep vmx-name commande.

Pour supprimer un port, retirez toutes les lignes que vous avez incluses pour ajouter un port.

Définition d’une topologie

Vous pouvez créer des instances vMX qui peuvent être utilisées avec un modèle de topologie pour définir comment interconnecter des instances vMX. Le modèle Heat obtient ses paramètres d’entrée dans le fichier d’environnement correspondant. Les exemples suivants illustrent comment modifier les topologies.

Création d’une instance vMX dans un réseau WAN existant

Le package-locationfichier /openstack/vmx-topologies/osp-topologies/1vmx1net.yaml crée une instance vMX avec des ports sur un pont existant.

Pour ajouter une instance vMX à ce modèle :

  1. Copiez l’exemple de fichier de modèle de topologie et de fichier d’environnement dans le répertoire de premier niveau.
  2. Modifiez le fichier 1vmx1net.yaml pour ajouter une autre entrée OS::Nova::Vmx, mais remplacez le dernier stack_name paramètre par le numéro suivant. Par exemple :
  3. Assurez-vous que le net_id paramètre est répertorié dans la section paramètres du fichier d’environnement correspondant pour l’instance vMX (dans ce cas, 1vmx.env).
    Note:

    Si vous ajoutez des interfaces SR-IOV, assurez-vous d’avoir bien préparé le contrôleur et les nœuds de calcul.

  4. Démarrez les instances vMX avec la heat stack-create –f heat-filename –e environment-filename stack-name commande.
  5. Vérifiez que l’instance vMX est créée à l’aide de la heat stack-list | grep vmx-name commande.

Connexion d’instances vMX avec deux ponts OVS

Le package-locationfichier /openstack/vmx-topologies/osp-topologies/2vmx1net.yaml crée deux instances avec un port chacune qui partagent un pont.

Pour ajouter un pont qui connecte un deuxième port sur chaque instance vMX :

  1. Copiez l’exemple de fichier de modèle de topologie et de fichier d’environnement dans le répertoire de premier niveau.
  2. Modifiez le fichier 2vmx1net.yaml pour ajouter une autre entrée OS::Networking::VmxNet, mais modifiez le CIDR du réseau (net_cidr) et le nom du pont (bname) au numéro suivant. Par exemple :
  3. À chaque entrée OS::Nova::Vmx, ajoutez l’ID de réseau de pont suivant. Par exemple :
  4. Ajoutez un ge_cidr paramètre dans la section paramètres du port.
  5. Assurez-vous que la section de paramètres du fichier d’environnement correspondant pour l’instance vMX (dans ce cas, 1vmx.env) répertorie tous les net_id paramètres.
    Note:

    Si vous ajoutez des interfaces SR-IOV, assurez-vous d’avoir bien préparé le contrôleur et les nœuds de calcul.

  6. Démarrez les instances vMX avec la heat stack-create –f heat-filename –e environment-filename stack-name commande.
  7. Vérifiez que l’instance vMX est créée à l’aide de la heat stack-list | grep vmx-name commande.