Rechercher

23.5. Configuration d'une connexion au réseau Ethernet SR-IOV

download PDF

Vous pouvez configurer une connexion réseau Ethernet pour un périphérique de virtualisation d'E/S à racine unique (SR-IOV) dans le cluster.

23.5.1. Objet de configuration de l'appareil Ethernet

Vous pouvez configurer un périphérique de réseau Ethernet en définissant un objet SriovNetwork.

Le fichier YAML suivant décrit un objet SriovNetwork:

apiVersion: sriovnetwork.openshift.io/v1
kind: SriovNetwork
metadata:
  name: <name> 1
  namespace: openshift-sriov-network-operator 2
spec:
  resourceName: <sriov_resource_name> 3
  networkNamespace: <target_namespace> 4
  vlan: <vlan> 5
  spoofChk: "<spoof_check>" 6
  ipam: |- 7
    {}
  linkState: <link_state> 8
  maxTxRate: <max_tx_rate> 9
  minTxRate: <min_tx_rate> 10
  vlanQoS: <vlan_qos> 11
  trust: "<trust_vf>" 12
  capabilities: <capabilities> 13
1
Un nom pour l'objet. L'opérateur de réseau SR-IOV crée un objet NetworkAttachmentDefinition portant le même nom.
2
L'espace de noms dans lequel l'opérateur de réseau SR-IOV est installé.
3
La valeur du paramètre spec.resourceName de l'objet SriovNetworkNodePolicy qui définit le matériel SR-IOV pour ce réseau supplémentaire.
4
L'espace de noms cible pour l'objet SriovNetwork. Seuls les pods de l'espace de noms cible peuvent s'attacher au réseau supplémentaire.
5
Facultatif : Un ID de réseau local virtuel (VLAN) pour le réseau supplémentaire. La valeur entière doit être comprise entre 0 et 4095. La valeur par défaut est 0.
6
Facultatif : Le mode de vérification de l'usurpation d'identité du VF. Les valeurs autorisées sont les chaînes "on" et "off".
Important

Vous devez mettre la valeur que vous indiquez entre guillemets, sinon l'objet est rejeté par l'opérateur de réseau SR-IOV.

7
Un objet de configuration pour le plugin IPAM CNI sous la forme d'un bloc YAML scalaire. Le plugin gère l'attribution des adresses IP pour la définition de l'attachement.
8
Facultatif : L'état de la liaison de la fonction virtuelle (VF). Les valeurs autorisées sont enable, disable et auto.
9
Facultatif : Vitesse de transmission maximale, en Mbps, pour le VF.
10
Facultatif : Un taux de transmission minimum, en Mbps, pour le VF. Cette valeur doit être inférieure ou égale à la vitesse de transmission maximale.
Note

Les cartes réseau Intel ne prennent pas en charge le paramètre minTxRate. Pour plus d'informations, voir BZ#1772847.

11
Facultatif : Un niveau de priorité IEEE 802.1p pour le VF. La valeur par défaut est 0.
12
Facultatif : Le mode de confiance du VF. Les valeurs autorisées sont les chaînes "on" et "off".
Important

Vous devez mettre la valeur que vous indiquez entre guillemets, sinon l'opérateur de réseau SR-IOV rejette l'objet.

13
Facultatif : Les capacités à configurer pour ce réseau supplémentaire. Vous pouvez spécifier "{ "ips": true }" pour activer la prise en charge des adresses IP ou "{ "mac": true }" pour activer la prise en charge des adresses MAC.

23.5.1.1. Configuration de l'attribution d'adresses IP pour un réseau supplémentaire

Le module de gestion des adresses IP (IPAM) Container Network Interface (CNI) fournit des adresses IP aux autres modules CNI.

Vous pouvez utiliser les types d'attribution d'adresses IP suivants :

  • Affectation statique.
  • Attribution dynamique par le biais d'un serveur DHCP. Le serveur DHCP que vous spécifiez doit être accessible depuis le réseau supplémentaire.
  • Affectation dynamique via le plugin CNI de Whereabouts IPAM.
23.5.1.1.1. Configuration de l'attribution d'une adresse IP statique

Le tableau suivant décrit la configuration pour l'attribution d'une adresse IP statique :

Tableau 23.3. ipam objet de configuration statique
FieldTypeDescription

type

string

Le type d'adresse IPAM. La valeur static est obligatoire.

addresses

array

Un tableau d'objets spécifiant les adresses IP à attribuer à l'interface virtuelle. Les adresses IPv4 et IPv6 sont prises en charge.

routes

array

Un tableau d'objets spécifiant les routes à configurer dans le pod.

dns

array

Facultatif : Un tableau d'objets spécifiant la configuration DNS.

Le tableau addresses nécessite des objets avec les champs suivants :

Tableau 23.4. ipam.addresses[] réseau
FieldTypeDescription

address

string

Une adresse IP et un préfixe de réseau que vous spécifiez. Par exemple, si vous spécifiez 10.10.21.10/24, le réseau supplémentaire se voit attribuer une adresse IP de 10.10.21.10 et le masque de réseau est 255.255.255.0.

gateway

string

Passerelle par défaut vers laquelle acheminer le trafic réseau sortant.

Tableau 23.5. ipam.routes[] réseau
FieldTypeDescription

dst

string

La plage d'adresses IP au format CIDR, par exemple 192.168.17.0/24 ou 0.0.0.0/0 pour la route par défaut.

gw

string

La passerelle où le trafic réseau est acheminé.

Tableau 23.6. ipam.dns objet
FieldTypeDescription

nameservers

array

Un tableau d'une ou plusieurs adresses IP auxquelles envoyer les requêtes DNS.

domain

array

Le domaine par défaut à ajouter à un nom d'hôte. Par exemple, si le domaine est défini sur example.com, une requête DNS pour example-host est réécrite en example-host.example.com.

search

array

Un tableau de noms de domaine à ajouter à un nom d'hôte non qualifié, tel que example-host, lors d'une requête de recherche DNS.

Exemple de configuration de l'attribution d'une adresse IP statique

{
  "ipam": {
    "type": "static",
      "addresses": [
        {
          "address": "191.168.1.7/24"
        }
      ]
  }
}

23.5.1.1.2. Configuration de l'attribution dynamique d'adresses IP (DHCP)

Le JSON suivant décrit la configuration pour l'attribution dynamique d'adresses IP avec DHCP.

Renouvellement des baux DHCP

Un pod obtient son bail DHCP d'origine lors de sa création. Le bail doit être renouvelé périodiquement par un serveur DHCP minimal déployé sur le cluster.

L'opérateur réseau SR-IOV ne crée pas de déploiement de serveur DHCP ; l'opérateur réseau du cluster est responsable de la création du déploiement minimal de serveur DHCP.

Pour déclencher le déploiement du serveur DHCP, vous devez créer un attachement réseau shim en modifiant la configuration de l'opérateur réseau du cluster, comme dans l'exemple suivant :

Exemple de définition de l'attachement au réseau de cales

apiVersion: operator.openshift.io/v1
kind: Network
metadata:
  name: cluster
spec:
  additionalNetworks:
  - name: dhcp-shim
    namespace: default
    type: Raw
    rawCNIConfig: |-
      {
        "name": "dhcp-shim",
        "cniVersion": "0.3.1",
        "type": "bridge",
        "ipam": {
          "type": "dhcp"
        }
      }
  # ...

Tableau 23.7. ipam Objet de configuration DHCP
FieldTypeDescription

type

string

Le type d'adresse IPAM. La valeur dhcp est obligatoire.

Exemple de configuration de l'attribution dynamique d'une adresse IP (DHCP)

{
  "ipam": {
    "type": "dhcp"
  }
}

23.5.1.1.3. Configuration de l'attribution dynamique d'adresses IP avec Whereabouts

Le plugin Whereabouts CNI permet l'attribution dynamique d'une adresse IP à un réseau supplémentaire sans utiliser de serveur DHCP.

Le tableau suivant décrit la configuration pour l'attribution dynamique d'adresses IP avec Whereabouts :

Tableau 23.8. ipam objet de configuration de la localisation
FieldTypeDescription

type

string

Le type d'adresse IPAM. La valeur whereabouts est obligatoire.

range

string

Une adresse IP et une plage d'adresses en notation CIDR. Les adresses IP sont attribuées à partir de cette plage d'adresses.

exclude

array

Facultatif : Une liste de zéro ou plusieurs adresses IP et plages d'adresses en notation CIDR. Les adresses IP situées dans une plage d'adresses exclue ne sont pas attribuées.

Exemple de configuration de l'attribution dynamique d'adresses IP à l'aide de Whereabouts

{
  "ipam": {
    "type": "whereabouts",
    "range": "192.0.2.192/27",
    "exclude": [
       "192.0.2.192/30",
       "192.0.2.196/32"
    ]
  }
}

23.5.2. Configuration du réseau supplémentaire SR-IOV

Vous pouvez configurer un réseau supplémentaire qui utilise le matériel SR-IOV en créant un objet SriovNetwork. Lorsque vous créez un objet SriovNetwork, l'opérateur de réseau SR-IOV crée automatiquement un objet NetworkAttachmentDefinition.

Note

Ne pas modifier ou supprimer un objet SriovNetwork s'il est rattaché à un pod en état running.

Conditions préalables

  • Installez le CLI OpenShift (oc).
  • Connectez-vous en tant qu'utilisateur disposant des privilèges cluster-admin.

Procédure

  1. Créez un objet SriovNetwork, puis enregistrez le fichier YAML dans le fichier <name>.yaml, où <name> est le nom de ce réseau supplémentaire. La spécification de l'objet peut ressembler à l'exemple suivant :

    apiVersion: sriovnetwork.openshift.io/v1
    kind: SriovNetwork
    metadata:
      name: attach1
      namespace: openshift-sriov-network-operator
    spec:
      resourceName: net1
      networkNamespace: project2
      ipam: |-
        {
          "type": "host-local",
          "subnet": "10.56.217.0/24",
          "rangeStart": "10.56.217.171",
          "rangeEnd": "10.56.217.181",
          "gateway": "10.56.217.1"
        }
  2. Pour créer l'objet, entrez la commande suivante :

    $ oc create -f <name>.yaml

    <name> indique le nom du réseau supplémentaire.

  3. Facultatif : Pour confirmer l'existence de l'objet NetworkAttachmentDefinition associé à l'objet SriovNetwork créé à l'étape précédente, entrez la commande suivante. Remplacez <namespace> par le networkNamespace que vous avez spécifié dans l'objet SriovNetwork.

    oc get net-attach-def -n <namespace>

23.5.3. Prochaines étapes

23.5.4. Ressources supplémentaires

Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.