NetApp Tech OnTap
     

Qualité de service de bout en bout:

Cisco, VMware et NetApp s'associent pour l'amélioration des environnements mutualisés

La construction d'une infrastructure partagée est toujours un défi. En observant la conception d'un data center d'entreprise, on s'aperçoit que les applications importantes disposent de leur propre infrastructure dédiée ou bien que les éléments partagés ont été travaillés à l'extrême, jusqu'à dépasser, et de loin, la configuration requise. Chacune de ces méthodes a pour effet de sous-utiliser les ressources et de gaspiller votre budget informatique.

Le problème, c'est que personne ne sait vraiment comment les composants d'une infrastructure (tels que serveurs, réseaux et stockage) vont réagir à l'ajout de charge supplémentaire. Une ressource va-t-elle subitement devenir un goulet d'étranglement et réduire les performances d'une application importante ? Dans ce cas, comment identifier rapidement la source de ces goulets d'étranglements ?

Étant donné l'intérêt que suscite actuellement le cloud computing, il est d'autant plus important de comprendre tous les aspects des environnements mutualisés (infrastructures au sein desquelles toutes les ressources sont partagées). En fait, beaucoup d'entreprises hésitent à adopter une infrastructure cloud ou à souscrire à des services cloud par peur des problèmes de sécurité ou de qualité de service.

Cisco s'est associé à VMware et NetApp pour concevoir et tester une architecture cloud mutualisée et sécurisée, capable d'offrir ce que nous considérons comme les quatre piliers d'un environnement mutualisé et sécurisé :

  • Séparation sécurisée. Un locataire ne doit en aucun cas pouvoir accéder à l'ordinateur virtuel, au réseau ou aux ressources de stockage d'un autre locataire. Tous les locataires doivent être séparés les uns des autres de manière sûre.
  • Garantie de service. Les performances de calcul, de réseau et de stockage doivent être isolées et garanties, aussi bien en cas de pannes ou de charges anormales générées par certains locataires que pendant les périodes de fonctionnement normal.
  • Disponibilité. L'infrastructure doit assurer que les ressources nécessaires de calcul, de réseau et de stockage demeurent disponibles face à des pannes potentielles.
  • Gestion. La capacité à fournir, gérer et contrôler toutes les ressources rapidement est essentielle.

Dans cet article, je décrirai l'architecture unique en son genre que les trois entreprises participantes ont conçu pour répondre aux problématiques des quatre piliers constitutifs d'un environnement mutualisé. Je poursuivrai en exposant plus en détails les efforts que nous avons fournis pour le second pilier (la garantie de service).

Un guide de conception paru récemment contient toutes les informations relatives à une conception validée Cisco utilisant les technologies des trois entreprises pour appliquer les quatre piliers décrits plus haut. Un article connexe dans ce numéro de Tech OnTap décrit un élément de l'architecture plus en détails : NetApp® MultiStore®.

Présentation de l'architecture

La figure 1 propose une présentation schématique de l'architecture. À tous les niveaux, les composants matériels et logiciels clés sont conçus pour offrir sécurité, qualité de service, disponibilité et facilité de gestion.

Schéma fonctionnel « bout en bout »

Figure 1) Schéma fonctionnel « bout en bout ».

Couche calcul
Au niveau de la couche calcul, les logiciels VMware® vSphere™ et vCenter™ Server offrent un robuste environnement de virtualisation de serveur qui permet l'allocation dynamique des ressources serveur à plusieurs systèmes d'exploitation invités, exécutés sur des ordinateurs virtuels.

VMware vShield Zones assure la sécurité au niveau des activités de calcul. Il s'agit d'un pare-feu virtuel, distribué, dynamique et géré de façon centralisée, fourni avec vSphere 4.0. Il crée des zones de sécurité grâce à la proximité de l'hôte ESX et à la visibilité du réseau virtuel. vShield Zones s'intègre dans VMware vCenter. Il exploite les données virtuelles d'inventaire telles que les vNIC, les groupes de ports, les clusters et les VLAN pour simplifier la gestion des règles du pare-feu et le provisionnement des zones de confiance. Cette nouvelle façon de créer des règles de sécurité suit les ordinateurs virtuels à l'aide de VMotion™. Elle est complètement transparente aux modifications d'adresses IP et à la renumérotation de réseau.

Cisco Unified Computing System™ (UCS) est une plate-forme de nouvelle génération pour data centers, qui associe activités de calcul, accès au réseau de serveurs, accès au stockage et virtualisation au sein d'un système cohérent. UCS comprend une structure de réseau Ethernet 10 Gigabits à faible latence et sans perte, équipée de serveurs professionnels x86. Il constitue une plate-forme intégrée, évolutive et multi-châssis au sein de laquelle toutes les ressources participent à un domaine de gestion unifié.

Couche réseau
La couche réseau offre une connectivité sécurisée entre les couches calcul et stockage, ainsi que des connexions vers des réseaux et des clients externes. Composants essentiels :

  • Cisco Nexus 7000, fournit une connectivité Ethernet (LAN) aux réseaux externes
  • Cisco Nexus 5000, fait office d'interface pour le stockage Fibre Channel et pour Cisco 7000
  • Cisco Nexus 1000V, un connecteur logiciel qui est exécuté dans le noyau VMware afin de fournir des services Cisco VN-Link pour une intégration étroite du serveur à l'environnement réseau. Pendant les migrations en direct, il autorise le déplacement des règles avec l'ordinateur virtuel.
  • Cisco MDS 9124, un connecteur Fibre Channel qui offre une connectivité SAN afin de permettre le démarrage SAN pour les instances VMware ESX exécutées sur le système UCS

Couche stockage
La couche stockage se compose des systèmes de stockage unifié de NetApp, capables de fournir simultanément une connectivité SAN (pour le démarrage SAN) et une connectivité NFS pour l'environnement VMware exécuté. Le stockage NetApp peut également répondre aux besoins de stockage spécifiques de n'importe quelle application en cours d'exécution. L'exécution de l'environnement VMware sur Ethernet permet de simplifier à l'extrême l'environnement de gestion et de réduire ainsi les coûts.

Le logiciel NetApp MultiStore offre au stockage partagé un niveau de sécurité et d'isolation comparable à celui des baies de stockage isolées physiquement. MultiStore permet de créer plusieurs partitions logiques complètement isolées sur le même système de stockage, et ainsi de partager le stockage sans mettre en péril la confidentialité des données. Les conteneurs de stockage peuvent être transférés de façon indépendante et transparente entre les systèmes de stockage.

Provisionnement des locataires
Lorsqu'un locataire est provisionné à l'aide de cette architecture, l'environnement qui en résulte est équipé de :

  • Au moins un ordinateur virtuel ou un vApp
  • Au moins un contrôleur de stockage virtuel (unité vFiler)
  • Au moins un VLAN pour l'interconnexion et l'accès à ces ressources

Ensemble, ces entités forment une partition logique. Le locataire ne peut pas violer les limites de cette partition. Outre la sécurité, nous voulons aussi être certains que les activités qui se déroulent sur la partition d'un locataire n'interfèrent pas indirectement avec les activités en cours sur la partition d'un autre locataire.

Qualité de service de bout en bout

Très peu de projets s'attaquent à la question de la qualité de service de bout en bout. En général, un mécanisme de qualité de service est activé au niveau d'une couche, dans l'espoir que les couches supérieures et inférieures en bénéficieront également. Malheureusement, toutes les applications sont dotées de caractéristiques différentes : certaines exigent une capacité de calcul importante tandis que d'autres pèsent lourdement sur le réseau ou sur les volumes d'E/S. Se contenter de limiter les E/S n'a que peu, voire aucun impact sur le contrôle de l'utilisation du CPU par une application exigeant une capacité importante du processeur. Il est impossible de garantir une qualité de service absolue sans mécanisme approprié au niveau de chaque couche. C'est pour créer un tel système que notre équipe s'est formée.

Des entreprises telles qu'Amazon ou Google proposent des offres « cloud » ou d'environnements mutualisés reposant sur des logiciels propriétaires dont la conception a demandé des années de travail et des centaines de développeurs internes. Pour atteindre des résultats similaires, nous avons choisi d'utiliser les technologies Cisco, NetApp et VMware disponibles dans le commerce.

Nous avons appliqué un principe de conception à chaque niveau : quand des ressources ne sont pas utilisées, les applications importantes doivent pouvoir les utiliser si nécessaire. Cela peut permettre à une application de faire face à des circonstances imprévues. En revanche, en cas de conflit, tous les locataires doivent avoir la garantie de pouvoir bénéficier du niveau de service auquel ils ont souscrit.

Un autre principe de conception consistait à définir la classe de service au plus près de l'application, à mapper cette valeur dans une définition de règle et à s'assurer que la règle en question était appliquée uniformément sur toutes les couches, conformément aux qualités propres à chaque couche. Pour assurer la qualité de service, nous avons utilisé trois mécanismes pour chaque couche :

Tableau 1) Mécanismes de qualité de service.

Calcul Réseau Stockage
• Réserves extensibles
• Planificateur de ressources dynamique
• Classes de système pour la qualité de service UCS pour la réserve et la limitation de ressources
• Qualité de service - File d'attente
• Qualité de service - Contrôle de la bande passante
• Qualité de service - Limitation du débit
• FlexShare®
• Réserves de stockage
• Provisionnement fin


 

Couche calcul
Au niveau de la virtualisation de serveur, VMware vSphere offre de nombreuses fonctions visant à assurer une bonne utilisation des ressources, notamment du processeur et de la mémoire. Le pool de ressources vSphere est une abstraction logique pour une gestion flexible des ressources. Les pools de ressources peuvent être groupés en hiérarchies et utilisés pour partitionner de manière hiérarchique les ressources disponibles du processeur et de la mémoire. En configurant correctement les attributs du pool de ressources concernant les réserves, les limites, les partages et les réserves extensibles, vous pouvez effectuer un contrôle très fin et accorder la priorité à un locataire sur un autre en cas de conflit au niveau des ressources.

VMware Distributed Resource Scheduler (DRS) vous permet de créer des clusters contenant plusieurs serveurs VMware. DRS contrôle en permanence l'utilisation des pools de ressources et alloue de manière intelligente les ressources disponibles aux ordinateurs virtuels. DRS est entièrement automatisable au niveau du cluster, de sorte que les charges de l'infrastructure et de l'ordinateur virtuel du locataire font l'objet d'un équilibrage de charge équitable entre tous les serveurs ESX d'un cluster.

En ce qui concerne le matériel, Cisco UCS utilise Data Center Ethernet (DCE) pour gérer tout le trafic au sein du système Cisco UCS. Cette amélioration standard d'Ethernet divise la bande passante du canal Ethernet en huit voies virtuelles. Les classes du système déterminent comment la bande passante DCE est allouée au sein de ces voies virtuelles, à destination du système Cisco UCS complet. Chaque classe réserve un segment spécifique de la bande passante pour un certain type de trafic. Cela a pour effet de créer un certain degré de gestion du trafic, même dans un système hautement exploité.

Couche réseau
Au niveau du réseau, le trafic est segmenté en fonction de la classe de service attribuée au préalable par le Nexus 1000v et observée ou réglementée par le système UCS. Il existe deux méthodes distinctes pour offrir une protection continue des performances :

  • La file d'attente permet aux périphériques réseau de planifier la livraison de paquets sur la base des critères de classification. En cas de surexploitation des ressources, la possibilité de déterminer quels paquets doivent être livrés en premier génère, au bout du compte, une différence de temps de réponse pour les applications importantes. La file d'attente est uniquement utilisée quand la bande passante attribuée est entièrement exploitée par toutes les classes de service.
  • Le contrôle de la bande passante autorise aux périphériques réseau un nombre adéquat de tampons par file d'attente, de façon à éviter que certaines classes de trafic n'utilisent à outrance la bande passante. Cela donne aux autres files d'attentes une bonne chance de répondre aux besoins des classes restantes. Le contrôle de la bande passante va de pair avec la file d'attente. En effet, la file d'attente détermine quels paquets seront livrés en premier, tandis que la bande passante détermine la quantité de données qui peut être envoyée pour chaque file.

Il est possible d'activer un ensemble de commandes de règles, de sorte que tout changement inattendu du modèle de trafic puisse être traité soit en douceur, en autorisant les applications à enfreindre temporairement l'engagement de service, soit de manière plus agressive, en abandonnant l'excès de données ou en plafonnant la vitesse de transmission. Cette fonction peut également être utilisée pour définir un niveau de service tel que les services secondaires restent à un certain niveau de trafic, ou encore de façon à plafonner le trafic du niveau de service le plus bas afin de l'empêcher d'influer sur les services d'un locataire de plus haut niveau.

L'application de règles, ainsi que la limitation du débit sont utilisées pour définir les niveaux de protection. Ces outils sont appliqués au plus près des limites du réseau, afin d'empêcher le trafic d'interférer avec le réseau. Dans cette conception, on utilise le Nexus 1000V pour la fonction d'application de règles et de limitation du débit pour trois types de trafic :

  • VMotion. VMware recommande en général une interface Gigabit dédiée pour le trafic VMotion. Dans notre structure, le trafic VMotion est dédié à l'aide d'un port VMkernel non routable. Afin de correspondre aux environnements traditionnels, le trafic VMotion est fixé à 1 Gbit/s. Cette limite peut être élevée ou abaissée selon les besoins. Cependant, sa configuration ne doit en aucun cas générer un trafic qui affecte d'autres trafics plus importants.
  • Services différenciés de transaction et de stockage. Dans une structure mutualisée, différentes méthodes sont utilisées pour générer des services différenciés. Par exemple, on a recours à une file « prioritaire » pour les services les plus importants et à une file «sans perte » pour le trafic qui ne peut pas être abandonné mais qui peut supporter un certain retard. On utilise la limitation du débit pour les services soumis à un débit fixe, dans le cadre desquels chaque classe d'application ou service est limité à un certain niveau.
  • Gestion. Le VLAN de gestion est activé avec une limitation du débit fixée à 1 Gbit/s.

Couche stockage
Comme nous l'avons expliqué, le logiciel NetApp MultiStore procure aux environnements mutualisés une isolation sécurisée. (MultiStore est décrit plus en détail dans un article connexe de ce numéro.)

Au niveau du stockage, pour assurer la qualité de service, il est nécessaire de contrôler la mémoire cache du système de stockage et le degré d'utilisation du processeur. Il faut également s'assurer que les charges de travail sont réparties sur un nombre approprié de broches. NetApp a développé FlexShare pour contrôler l'attribution de priorités aux charges de travail. Avec FlexShare, vous pouvez régler trois paramètres indépendants pour chaque volume de stockage ou chaque unité vFiler dans une configuration MultiStore. Vous pouvez ainsi accorder la priorité à une partition locataire par rapport à une autre. (FlexShare est décrit plus en détail dans un précédent article de Tech OnTap.) MultiStore et FlexShare sont tous deux disponibles depuis plusieurs années pour l'environnement d'exploitation NetApp Data ONTAP®.

Le provisionnement fin NetApp offre aux locataires un certain niveau de « stockage à la demande ». La capacité brute est considérée comme une ressource partagée et n'est consommée que selon les besoins. Lorsque vous déployez des ressources à provisionnement fin dans une configuration mutualisée, vous devez définir des règles de croissance automatique du volume, de suppression automatique Snapshot™ et de réserve fractionnaire. La croissance automatique du volume permet à un volume de se développer selon des incréments définis, jusqu'à un seuil prédéfini. La suppression automatique Snapshot est une méthode qui permet de supprimer automatiquement les copies Snapshot les plus anciennes lorsqu'un volume est presque plein. La réserve fractionnaire permet de modifier le pourcentage de réserve d'espace en fonction de l'importance des données associées.

En associant l'utilisation de ces fonctions, vous pouvez accorder aux locataires importants la priorité pour la croissance d'un volume, à partir de l'espace réservé du pool partagé. À l'inverse, les locataires de moindre niveau doivent faire appel à un administrateur pour qu'il réponde à leurs besoins de stockage supplémentaire.

Conclusion

Cisco, VMware et NetApp se sont associés pour définir et tester une architecture mutualisée et sécurisée, capable de fournir non seulement la sécurité nécessaire, mais aussi la qualité de service, la disponibilité et des fonctions de gestion avancées.

Cet article vous a présenté notre approche complète de la qualité de service. Pour en savoir plus sur la qualité de service ou sur les autres piliers d'une architecture mutualisée, consultez notre guide de conception récemment paru, qui décrit en détails les éléments de l'architecture et propose des recommandations pour une configuration correcte.

 Vous avez des commentaires sur la qualité de service dans les environnements mutualisés ?

Posez vos questions, échangez des idées et partagez vos points de vue directement en ligne via les communautés NetApp.

Chris Naddeo

Chris Naddeo
Ingénieur Marketing et Technique pour UCS
Cisco Systems

Chris a rejoint Cisco pour se consacrer à l'activation des clients et à la conception d'architectures de stockage optimales pour le Unified Computing System de Cisco. Il bénéficie d'une grande expérience dans le domaine du stockage. Il a notamment travaillé un an chez NetApp en tant qu'ingénieur-consultant système pour Oracle et Data ONTAP GX. Il a également exercé pendant neuf ans en tant que responsable produit chargé des logiciels de stockage chez Veritas.

 
Explorer