Une Elastic RDMA Interface (ERI) est une interface réseau que vous pouvez associer à une instance ECS. Elle constitue un composant clé pour la mise en œuvre de l'eRDMA (Remote Direct Memory Access élastique). Une ERI est attachée à une Elastic Network Interface (ENI) afin d'activer la fonctionnalité RDMA sur cette dernière.
Présentation des fonctionnalités
Pour configurer l'eRDMA sur une instance ECS, attachez-lui une ERI. L'eRDMA est un service Alibaba Cloud qui fournit un réseau RDMA haute performance, caractérisé par une faible latence, un débit élevé et une grande extensibilité. Grâce à une ERI, l'eRDMA permet aux instances ECS de communiquer avec une latence ultra-faible et un débit élevé. Pour plus d'informations, consultez la rubrique Présentation de l'eRDMA.
Seules certaines familles d'instances prennent en charge l'attachement d'ERIs. Pour plus de détails, reportez-vous à la section Familles d'instances.
Pour déterminer le nombre maximal d'ERIs qu'un type d'instance peut prendre en charge, vérifiez la valeur du paramètre EriQuantity dans la réponse de l'opération DescribeInstanceTypes. Une valeur de 0 indique que le type d'instance ne prend pas en charge les ERIs.
Lorsque vous attachez plusieurs ERIs à une instance, tenez compte de la limite de paires de files d'attente (QP) des contrôleurs d'interface réseau (NIC). Pour plus d'informations, consultez la section Paires de files d'attente (QP).
Créer une Elastic RDMA Interface
Créer une ERI avec une instance
Pour les types d'instances compatibles avec l'eRDMA, sélectionnez Enable Elastic RDMA Interface lors de l'achat d'une instance. La configuration spécifique peut varier selon le type d'instance :
-
Instances de niveau entreprise : pour plus d'informations, consultez la rubrique Configurer l'eRDMA lors de l'achat d'une instance de niveau entreprise.
Dans la section Elastic Network Interface lors de la création d'une instance, cochez la case Elastic RDMA Interface sur la ligne Primary ENI. Une fois l'Elastic RDMA Interface activée, les adresses IPv6 ne sont pas prises en charge.
-
Instances accélérées par GPU : pour plus d'informations, consultez la rubrique Activer l'eRDMA sur une instance accélérée par GPU.
Dans la section Elastic Network Interface , cochez la case Elastic RDMA Interface pour les ENI principales et secondaires. Pour créer une ENI secondaire, cliquez sur l'onglet Create Secondary ENI. Une seule ENI secondaire peut être attachée lors de la création d'une instance. L'activation de l'eRDMA nécessite un système d'exploitation spécifique.
Créer une ERI séparément
Lorsque vous créez une ENI secondaire, activez l'option eRDMA Interface. L'Elastic RDMA Interface (ERI) partage les paramètres de l'ENI secondaire, tels que son adresse IP et ses règles de groupe de sécurité. Pour plus d'informations, consultez la rubrique Créer et utiliser une ENI.
Créer une ERI via OpenAPI
Appelez l'opération CreateNetworkInterface pour créer une ENI. Pour créer une ENI avec une ERI activée, définissez le paramètre NetworkInterfaceTrafficMode sur HighPerformance.
Pour plus d'informations sur la gestion des ERIs, notamment leur attachement, leur détachement et la modification de leurs propriétés, consultez la rubrique Gérer les ENI.
Consulter une Elastic RDMA Interface
Consulter dans la console
Vérifiez si une ENI est compatible RDMA directement dans la console.
Accédez à la page Console ECS - Instances.
Dans le coin supérieur gauche de la page, sélectionnez une région et un groupe de ressources.
Repérez l'instance ECS cible et cliquez sur son ID pour accéder à la page des détails de l'instance.
-
Cliquez sur l'onglet ENIs pour afficher les détails des ENI attachées à l'instance ECS.
Dans la colonne ENI Type , l'indicateur flexible RDMA interface signale qu'une ERI est activée pour la carte réseau.
Consulter via OpenAPI
Appelez l'opération DescribeNetworkInterfaceAttribute pour interroger les propriétés d'une ENI. La valeur du paramètre NetworkInterfaceTrafficMode dans la réponse indique si une ERI est activée pour l'ENI :
HighPerformance : l'ERI est activée et le mode de communication eRDMA est utilisé.
Standard : l'ERI est désactivée et le mode de communication TCP est utilisé.
Consulter depuis l'instance
Une fois qu'une ENI dotée d'une ERI est attachée à une instance, visualisez l'interface réseau RDMA depuis l'intérieur de l'instance.
-
Connectez-vous à distance à l'instance.
Pour plus d'informations, consultez la rubrique Se connecter à une instance Linux à l'aide de Workbench.
-
Exécutez la commande suivante pour afficher les périphériques d'interface réseau RDMA.
ibv_devicesLe nom du périphérique dans la sortie indique qu'il s'agit d'une interface réseau eRDMA.
[root@xxx ~]# ibv_devices device node GUID ------ --------- erdma_0 02163effe16b4ffSi votre instance dispose de plusieurs ENI avec des ERIs activées, la sortie ressemble à ce qui suit :
[root@xxx ~]# ibv_devices device node GUID ------ --------- erdma_0 02163efffe10008e erdma 1 02163efffe40d834
-
Exécutez également la commande
ibv_devinfopour afficher davantage de paramètres de configuration de l'ERI, tels que l'état du port et le nombre maximal de files d'attente prises en charge.[root@xxx ~]# ibv_devinfo hca_id: erdma_0 transport: eRDMA (1) fw_ver: 0.2.0 node_guid: 0216:3eff:fe13:1914 sys_image_guid: 0216:3eff:fe13:1914 vendor_id: 0x1ded vendor_part_id: 4223 hw_ver: 0x0 phys_port_cnt: 1 port: 1 state: PORT_ACTIVE (4) max_mtu: 4096 (5) active_mtu: 4096 (5) sm_lid: 0 port_lid: 0 port_lmc: 0x00 link_layer: Ethernet Si les informations précédentes ne s'affichent pas, il se peut que le pilote eRDMA soit mal installé ou que l'interface réseau soit mal configurée. Pour résoudre ce problème, consultez la rubrique Vérifier la configuration eRDMA.
Modifier l'interface RDMA d'une ENI existante
Appelez l'opération ModifyNetworkInterfaceAttribute et définissez le paramètre NetworkInterfaceTrafficMode dans NetworkInterfaceTrafficConfig pour configurer le mode de communication de l'ENI. Cela permet d'activer ou de désactiver l'ERI.
HighPerformance : l'ERI est activée et le mode de communication eRDMA est utilisé.
Standard : l'ERI est désactivée et le mode de communication TCP est utilisé.
Il n'est pas possible d'activer ou de désactiver l'ERI pour une ENI existante via la console.
Paires de files d'attente (QP)
Une paire de files d'attente (QP) est une entité de communication de base dans RDMA. Elle se compose d'une file d'attente d'envoi (Send Queue, SQ) et d'une file d'attente de réception (Receive Queue, RQ). La QP sert à gérer les données envoyées et reçues.
Le nombre de QP correspond au nombre maximal de paires de files d'attente pouvant être créées sur un périphérique ou une interface réseau RDMA. Ce chiffre détermine le nombre maximal de connexions simultanées que le réseau RDMA peut prendre en charge et influe sur l'extensibilité et les capacités de traitement concurrent du réseau.
Nombre de QP pour une instance
Le nombre de QP d'une instance dépend de son type. Lorsque vous attachez plusieurs ERIs à une instance ECS, le nombre total maximal de QP pour toutes les ENI varie selon le type d'instance. Appelez l'opération DescribeInstanceTypes pour interroger le nombre maximal de QP autorisé pour toutes les ENI d'un type d'instance donné :
Si la réponse contient NetworkCardQuantity, le nombre total maximal de QP pour toutes les ENI est égal à QueuePairNumber * NetworkCardQuantity.
Si la réponse ne contient pas NetworkCardQuantity, le nombre total maximal de QP pour toutes les ENI est égal à QueuePairNumber.
Nombre de QP de la carte réseau Elastic RDMA
Si vous attachez une ERI à une instance sans spécifier le paramètre QueuePairNumber, l'ERI utilise la valeur par défaut, qui correspond au nombre total maximal de QP autorisé pour le type d'instance. Pour les types d'instances prenant en charge plusieurs ERIs, si vous attachez une ERI utilisant cette valeur par défaut, vous ne pourrez pas attacher d'autres ERIs car la limite de QP de l'instance sera atteinte. Vous devez ajuster le nombre de QP pour l'ENI afin de libérer de la capacité avant de pouvoir attacher une autre ERI à l'instance.
Définir le nombre de QP pour une ENI
Appelez l'opération ModifyNetworkInterfaceAttribute et définissez le paramètre QueuePairNumber sur le nombre souhaité de QP pour l'ENI.
Si l'ENI est déjà attachée à une instance, arrêtez l'instance avant d'effectuer les ajustements.
Pour une ENI secondaire, détachez-la d'abord de l'instance, modifiez le QueuePairNumber, puis attachez l'ENI secondaire.
Afficher le nombre de QP pour une ENI
Appelez l'opération DescribeNetworkInterfaceAttribute pour interroger les propriétés d'une ENI. Le paramètre QueuePairNumber dans la réponse indique le nombre de QP pour l'ENI.
Ce paramètre n'est pas renvoyé si l'ENI secondaire a été créée mais n'est pas encore attachée à une instance.
Définir correctement le nombre de QP
La définition d'un nombre approprié de QP est cruciale pour optimiser les performances des applications. Un nombre trop élevé ou trop faible de QP peut entraîner un gaspillage de ressources ou des goulets d'étranglement au niveau des performances.
Comprendre les besoins de l'application : déterminez le nombre requis de QP en fonction de votre scénario d'application, du type d'instance cible et du nombre planifié d'ENI. Si votre application exige une forte concurrence et une faible latence, vous aurez probablement besoin de plus de QP pour prendre en charge un plus grand nombre de connexions parallèles. Si votre scénario implique la transmission de volumes importants de données, l'utilisation de la bande passante par QP unique pourrait devenir un facteur plus important.
-
Prendre en compte les limitations matérielles :
Les différents types d'instances autorisent des nombres maximaux de QP distincts pour les ERIs. Pour savoir comment interroger ce nombre, consultez la section Nombre de QP pour une instance.
Tenez compte de facteurs tels que la taille de la mémoire du serveur. Chaque QP consomme une certaine quantité de ressources système.
Tester et optimiser : après la configuration initiale, effectuez un test de performance dans votre environnement réel. Ajustez ensuite le nombre de QP et d'autres paramètres connexes en fonction des résultats obtenus. Surveillez toute condition anormale, telle que des messages d'erreur ou une augmentation du taux de perte de paquets.
Surveiller en continu : même après avoir trouvé une configuration adaptée, vérifiez régulièrement l'état opérationnel du système. Cela garantit que les paramètres actuels restent appropriés à mesure que votre activité se développe ou que vos exigences évoluent.
La configuration correcte du nombre de QP nécessite de prendre en compte plusieurs facteurs. Planifiez et ajustez soigneusement les paramètres en fonction de vos besoins métier, de l'infrastructure existante et des performances visées.