22.2. Configuration d'un réseau supplémentaire
En tant qu'administrateur de cluster, vous pouvez configurer un réseau supplémentaire pour votre cluster. Les types de réseaux suivants sont pris en charge :
22.2.1. Approches de la gestion d'un réseau supplémentaire Copier lienLien copié sur presse-papiers!
Vous pouvez gérer le cycle de vie d'un réseau supplémentaire selon deux approches. Chaque approche est mutuellement exclusive et vous ne pouvez utiliser qu'une seule approche à la fois pour gérer un réseau supplémentaire. Dans les deux cas, le réseau supplémentaire est géré par un plugin CNI (Container Network Interface) que vous configurez.
Pour un réseau supplémentaire, les adresses IP sont fournies par un plugin CNI de gestion des adresses IP (IPAM) que vous configurez dans le cadre du réseau supplémentaire. Le plugin IPAM prend en charge une variété d'approches d'attribution d'adresses IP, y compris l'attribution DHCP et l'attribution statique.
-
Modifier la configuration du Cluster Network Operator (CNO) : Le CNO crée et gère automatiquement l'objet
NetworkAttachmentDefinition
. En plus de gérer le cycle de vie de l'objet, le CNO s'assure qu'un DHCP est disponible pour un réseau supplémentaire qui utilise une adresse IP attribuée par DHCP. -
Appliquer un manifeste YAML : Vous pouvez gérer le réseau supplémentaire directement en créant un objet
NetworkAttachmentDefinition
. Cette approche permet le chaînage des plugins CNI.
Lors du déploiement de nœuds OpenShift Container Platform avec plusieurs interfaces réseau sur Red Hat OpenStack Platform (RHOSP) avec OVN SDN, la configuration DNS de l'interface secondaire peut être prioritaire sur la configuration DNS de l'interface primaire. Dans ce cas, supprimez les serveurs de noms DNS pour l'identifiant de sous-réseau qui est attaché à l'interface secondaire :
openstack subnet set --dns-nameserver 0.0.0.0 <subnet_id>
$ openstack subnet set --dns-nameserver 0.0.0.0 <subnet_id>
22.2.2. Configuration pour une connexion réseau supplémentaire Copier lienLien copié sur presse-papiers!
Un réseau supplémentaire est configuré en utilisant l'API NetworkAttachmentDefinition
dans le groupe d'API k8s.cni.cncf.io
.
Ne stockez pas d'informations sensibles ou secrètes dans l'objet NetworkAttachmentDefinition
car ces informations sont accessibles à l'utilisateur de l'administration du projet.
La configuration de l'API est décrite dans le tableau suivant :
Field | Type | Description |
---|---|---|
|
| Nom du réseau supplémentaire. |
|
| L'espace de noms auquel l'objet est associé. |
|
| La configuration du plugin CNI au format JSON. |
22.2.2.1. Configuration d'un réseau supplémentaire par l'intermédiaire de l'opérateur de réseau du cluster Copier lienLien copié sur presse-papiers!
La configuration d'une connexion réseau supplémentaire est spécifiée dans le cadre de la configuration de l'opérateur de réseau de cluster (CNO).
Le fichier YAML suivant décrit les paramètres de configuration pour la gestion d'un réseau supplémentaire avec le CNO :
Cluster Network Operator configuration
- 1
- Un tableau d'une ou plusieurs configurations de réseau supplémentaires.
- 2
- Le nom de la pièce jointe réseau supplémentaire que vous créez. Le nom doit être unique au sein de l'adresse
namespace
. - 3
- L'espace de noms dans lequel l'attachement au réseau doit être créé. Si vous ne spécifiez pas de valeur, l'espace de noms
default
est utilisé. - 4
- Une configuration du plugin CNI au format JSON.
22.2.2.2. Configuration d'un réseau supplémentaire à partir d'un manifeste YAML Copier lienLien copié sur presse-papiers!
La configuration d'un réseau supplémentaire est spécifiée dans un fichier de configuration YAML, comme dans l'exemple suivant :
22.2.3. Configurations pour des types de réseaux supplémentaires Copier lienLien copié sur presse-papiers!
Les champs de configuration spécifiques aux réseaux supplémentaires sont décrits dans les sections suivantes.
22.2.3.1. Configuration d'un réseau supplémentaire de ponts Copier lienLien copié sur presse-papiers!
L'objet suivant décrit les paramètres de configuration du plugin CNI bridge :
Field | Type | Description |
---|---|---|
|
|
La version de la spécification CNI. La valeur |
|
|
La valeur du paramètre |
|
| |
|
|
Indiquez le nom du pont virtuel à utiliser. Si l'interface du pont n'existe pas sur l'hôte, elle est créée. La valeur par défaut est |
|
| L'objet de configuration pour le plugin IPAM CNI. Le plugin gère l'attribution des adresses IP pour la définition des pièces jointes. |
|
|
La valeur |
|
|
La valeur |
|
|
La valeur |
|
|
Défini sur |
|
|
La valeur |
|
|
La valeur |
|
| Spécifiez une balise de réseau local virtuel (VLAN) sous la forme d'une valeur entière. Par défaut, aucune balise VLAN n'est attribuée. |
|
| Fixe l'unité de transmission maximale (MTU) à la valeur spécifiée. La valeur par défaut est définie automatiquement par le noyau. |
22.2.3.1.1. exemple de configuration de pont Copier lienLien copié sur presse-papiers!
L'exemple suivant configure un réseau supplémentaire nommé bridge-net
:
22.2.3.2. Configuration d'un périphérique hôte réseau supplémentaire Copier lienLien copié sur presse-papiers!
Spécifiez votre périphérique réseau en définissant un seul des paramètres suivants : device
, hwaddr
, kernelpath
, ou pciBusID
.
L'objet suivant décrit les paramètres de configuration du plugin CNI hôte-dispositif :
Field | Type | Description |
---|---|---|
|
|
La version de la spécification CNI. La valeur |
|
|
La valeur du paramètre |
|
|
Le nom du plugin CNI à configurer : |
|
|
Facultatif : Le nom de l'appareil, par exemple |
|
| Facultatif : L'adresse MAC du matériel de l'appareil. |
|
|
Facultatif : Le chemin d'accès au périphérique du noyau Linux, tel que |
|
|
Facultatif : L'adresse PCI du périphérique réseau, par exemple |
22.2.3.2.1. exemple de configuration d'un dispositif hôte Copier lienLien copié sur presse-papiers!
L'exemple suivant configure un réseau supplémentaire nommé hostdev-net
:
22.2.3.3. Configuration d'un réseau supplémentaire IPVLAN Copier lienLien copié sur presse-papiers!
L'objet suivant décrit les paramètres de configuration du plugin IPVLAN CNI :
Field | Type | Description |
---|---|---|
|
|
La version de la spécification CNI. La valeur |
|
|
La valeur du paramètre |
|
|
Le nom du plugin CNI à configurer : |
|
|
Le mode de fonctionnement du réseau virtuel. La valeur doit être |
|
|
L'interface Ethernet à associer à l'attachement réseau. Si l'adresse |
|
| Fixe l'unité de transmission maximale (MTU) à la valeur spécifiée. La valeur par défaut est définie automatiquement par le noyau. |
|
| L'objet de configuration pour le plugin IPAM CNI. Le plugin gère l'attribution des adresses IP pour la définition des pièces jointes.
Ne pas spécifier |
22.2.3.3.1. exemple de configuration ipvlan Copier lienLien copié sur presse-papiers!
L'exemple suivant configure un réseau supplémentaire nommé ipvlan-net
:
22.2.3.4. Configuration d'un réseau supplémentaire MACVLAN Copier lienLien copié sur presse-papiers!
L'objet suivant décrit les paramètres de configuration du plugin CNI macvlan :
Field | Type | Description |
---|---|---|
|
|
La version de la spécification CNI. La valeur |
|
|
La valeur du paramètre |
|
|
Le nom du plugin CNI à configurer : |
|
|
Configure la visibilité du trafic sur le réseau virtuel. Doit être soit |
|
| L'interface réseau de l'hôte à associer à l'interface macvlan nouvellement créée. Si aucune valeur n'est spécifiée, l'interface de la route par défaut est utilisée. |
|
| L'unité de transmission maximale (MTU) à la valeur spécifiée. La valeur par défaut est définie automatiquement par le noyau. |
|
| L'objet de configuration pour le plugin IPAM CNI. Le plugin gère l'attribution des adresses IP pour la définition des pièces jointes. |
Si vous spécifiez la clé master
pour la configuration du plugin, utilisez une interface réseau physique différente de celle qui est associée à votre plugin réseau principal afin d'éviter tout conflit éventuel.
22.2.3.4.1. exemple de configuration macvlan Copier lienLien copié sur presse-papiers!
L'exemple suivant configure un réseau supplémentaire nommé macvlan-net
:
22.2.4. Configuration de l'attribution d'adresses IP pour un réseau supplémentaire Copier lienLien copié sur presse-papiers!
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.
22.2.4.1. Configuration de l'attribution d'une adresse IP statique Copier lienLien copié sur presse-papiers!
Le tableau suivant décrit la configuration pour l'attribution d'une adresse IP statique :
Field | Type | Description |
---|---|---|
|
|
Le type d'adresse IPAM. La valeur |
|
| Un tableau d'objets spécifiant les adresses IP à attribuer à l'interface virtuelle. Les adresses IPv4 et IPv6 sont prises en charge. |
|
| Un tableau d'objets spécifiant les routes à configurer dans le pod. |
|
| Facultatif : Un tableau d'objets spécifiant la configuration DNS. |
Le tableau addresses
nécessite des objets avec les champs suivants :
Field | Type | Description |
---|---|---|
|
|
Une adresse IP et un préfixe de réseau que vous spécifiez. Par exemple, si vous spécifiez |
|
| Passerelle par défaut vers laquelle acheminer le trafic réseau sortant. |
Field | Type | Description |
---|---|---|
|
|
La plage d'adresses IP au format CIDR, par exemple |
|
| La passerelle où le trafic réseau est acheminé. |
Field | Type | Description |
---|---|---|
|
| Un tableau d'une ou plusieurs adresses IP auxquelles envoyer les requêtes DNS. |
|
|
Le domaine par défaut à ajouter à un nom d'hôte. Par exemple, si le domaine est défini sur |
|
|
Un tableau de noms de domaine à ajouter à un nom d'hôte non qualifié, tel que |
Exemple de configuration de l'attribution d'une adresse IP statique
22.2.4.2. Configuration de l'attribution dynamique d'adresses IP (DHCP) Copier lienLien copié sur presse-papiers!
Le JSON suivant décrit la configuration pour l'attribution dynamique d'adresses IP avec 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
Field | Type | Description |
---|---|---|
|
|
Le type d'adresse IPAM. La valeur |
Exemple de configuration de l'attribution dynamique d'une adresse IP (DHCP)
{ "ipam": { "type": "dhcp" } }
{
"ipam": {
"type": "dhcp"
}
}
22.2.4.3. Configuration de l'attribution dynamique d'adresses IP avec Whereabouts Copier lienLien copié sur presse-papiers!
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 :
Field | Type | Description |
---|---|---|
|
|
Le type d'adresse IPAM. La valeur |
|
| Une adresse IP et une plage d'adresses en notation CIDR. Les adresses IP sont attribuées à partir de cette plage d'adresses. |
|
| 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
22.2.5. Création d'un rattachement réseau supplémentaire avec l'opérateur de réseau de cluster Copier lienLien copié sur presse-papiers!
Le Cluster Network Operator (CNO) gère les définitions de réseaux supplémentaires. Lorsque vous spécifiez un réseau supplémentaire à créer, le CNO crée automatiquement l'objet NetworkAttachmentDefinition
.
Ne modifiez pas les objets NetworkAttachmentDefinition
gérés par le Cluster Network Operator. Cela risquerait de perturber le trafic sur votre réseau supplémentaire.
Conditions préalables
-
Installez le CLI OpenShift (
oc
). -
Connectez-vous en tant qu'utilisateur disposant des privilèges
cluster-admin
.
Procédure
Facultatif : Créez l'espace de noms pour les réseaux supplémentaires :
oc create namespace <namespace_name> $ oc create namespace <namespace_name>
oc create namespace <namespace_name> $ oc create namespace <namespace_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pour modifier la configuration du CNO, entrez la commande suivante :
oc edit networks.operator.openshift.io cluster
$ oc edit networks.operator.openshift.io cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Modifiez le CR que vous êtes en train de créer en ajoutant la configuration pour le réseau supplémentaire que vous êtes en train de créer, comme dans l'exemple de CR suivant.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Enregistrez vos modifications et quittez l'éditeur de texte pour valider vos modifications.
Vérification
Confirmez que le CNO a créé l'objet
NetworkAttachmentDefinition
en exécutant la commande suivante. Il peut y avoir un délai avant que le CNO ne crée l'objet.oc get network-attachment-definitions -n <namespace>
oc get network-attachment-definitions -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow où :
<namespace>
- Spécifie l'espace de noms pour l'attachement réseau que vous avez ajouté à la configuration CNO.
Exemple de sortie
NAME AGE test-network-1 14m
NAME AGE test-network-1 14m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
22.2.6. Création d'une pièce jointe réseau supplémentaire par l'application d'un manifeste YAML Copier lienLien copié sur presse-papiers!
Conditions préalables
-
Installez le CLI OpenShift (
oc
). -
Connectez-vous en tant qu'utilisateur disposant des privilèges
cluster-admin
.
Procédure
Créez un fichier YAML avec votre configuration réseau supplémentaire, comme dans l'exemple suivant :
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pour créer le réseau supplémentaire, entrez la commande suivante :
oc apply -f <file>.yaml
oc apply -f <file>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow où :
<file>
- Spécifie le nom du fichier contenant le manifeste YAML.