Rechercher

23.6. Configuration d'une connexion au réseau InfiniBand SR-IOV

download PDF

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

23.6.1. Objet de configuration du dispositif InfiniBand

Vous pouvez configurer un périphérique réseau InfiniBand (IB) en définissant un objet SriovIBNetwork.

Le fichier YAML suivant décrit un objet SriovIBNetwork:

apiVersion: sriovnetwork.openshift.io/v1
kind: SriovIBNetwork
metadata:
  name: <name> 1
  namespace: openshift-sriov-network-operator 2
spec:
  resourceName: <sriov_resource_name> 3
  networkNamespace: <target_namespace> 4
  ipam: |- 5
    {}
  linkState: <link_state> 6
  capabilities: <capabilities> 7
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 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 SriovIBNetwork. Seuls les pods de l'espace de noms cible peuvent s'attacher au périphérique réseau.
5
Facultatif : 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.
6
Facultatif : L'état de la liaison de la fonction virtuelle (VF). Les valeurs autorisées sont enable, disable et auto.
7
Facultatif : Les capacités à configurer pour ce réseau. Vous pouvez spécifier "{ "ips": true }" pour activer la prise en charge des adresses IP ou "{ "infinibandGUID": true }" pour activer la prise en charge des identificateurs uniques globaux (GUID) de l'IB.

23.6.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.6.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.9. 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.10. 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.11. 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.12. 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.6.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.

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.13. 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.6.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.14. 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.6.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 SriovIBNetwork. Lorsque vous créez un objet SriovIBNetwork, l'opérateur de réseau SR-IOV crée automatiquement un objet NetworkAttachmentDefinition.

Note

Ne pas modifier ou supprimer un objet SriovIBNetwork 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 SriovIBNetwork, 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: SriovIBNetwork
    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 SriovIBNetwork créé à l'étape précédente, entrez la commande suivante. Remplacez <namespace> par le networkNamespace que vous avez spécifié dans l'objet SriovIBNetwork.

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

23.6.3. Prochaines étapes

23.6.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.