limites de performances exceptionnelles, Ali nuage papier dragon lisant le dernier ASPLOS

Auteur | Ali nuage équipe dragon

Zebian | Elle

Produit | RPSC (ID: CSDNnews)

avant-propos

Récemment, ASPLOS 2020 a annoncé l'industrie informatique les dernières réalisations scientifiques et technologiques, y compris le papier intitulé « haute densité multi-locataires nu-métal Cloud » soumis Ali nuage, le journal explique comment Ali nuage depuis l'architecture du serveur d'enquête pour résoudre les problèmes du Dragon l'industrie du cloud computing depuis de nombreuses années de problème de perte de performances de virtualisation, briser le mythe de la machine de performance physique, de sorte que le serveur cloud limites de performances exceptionnelles.

Les moyens d'inclusion que l'ordinateur mondial reconnaîtra Ali nuage top technologie d'auto-développement, la technologie innovante signifie également que la Chine dans l'industrie informatique mondiale gagner une place.

ASPLOS est une architecture complète, des langages de programmation et les systèmes d'exploitation de haut de conférence de trois directions des systèmes informatiques, de 1982 depuis qu'il a été lancé pour promouvoir le développement d'un certain nombre de technologies de systèmes informatiques, le taux d'acceptation générale du papier d'environ 20%.

Ali nuage sélectionné document intitulé « multi-locataires à haute densité nu-métal Cloud », dirigé par l'équipe de rédaction technique de dragon nuage Ali chercheur Zhang Xiantao, l'interprétation détaillée des avantages techniques de l'architecture du Dragon: au-delà de la machine physique traditionnelle 100% peut compter, les capacités de livraison minute de classe, la sécurité physique isolement et d'ouvrir tout le département et d'autres plates-formes de cloud computing.

La virtualisation est la base pour le cloud computing, les serveurs physiques dans l'unité de calcul virtuel que vous voulez, et avoir une flexibilité maximale, mais il peut entraîner une perte de performance. Comment résoudre cette contradiction? Ali en 2017 a lancé la « architecture Dragon » pour compenser la perte de performances de virtualisation, en plus de l'élasticité des nuages et des avantages d'exploitation et d'entretien.

2019 conférence Yunqi Hangzhou, Ali nuage a publié la troisième génération l'architecture Dragon, ECS soutient entièrement la machine virtuelle, métal nu, récipient et autre nuage natif, augmenté de 5 fois les performances en IOPS, PPS, etc., peut aider à réduire de 50% coût de calcul. L'an dernier, 11 système dual-core sur un nuage de 100%, l'éclat de dragon, le succès Kang Zhu 544000 stylo / sec pour pic de création, par rapport à la même configuration de la machine physique, non seulement les performances du système d'affaires de 20%, et la résistance à la charge à haute pression effectuer une meilleure performance globale de l'entreprise est lisse et linéaire.

Non seulement cela, Dragon est le meilleur partenaire de loin la technologie la plus populaire des conteneurs. Ali contraste de conteneur de service nuage machine physique architecture basée dragon 10% à 30% avantage de performance.

À l'heure actuelle, le Dragon a été largement appliqué dans le cadre Taobao, Lynx, une recrue, et d'autres services à l'adresse de la valeur maximale de la performance.

Sélectionné ACM ASPLOS document intitulé « multi-locataires à haute densité nu-métal Cloud », par la personne totale chercheur Ali nuage et la ligne de produits innovants est responsable de Zhang Xiantao, expert technique principal nuage Ali Zheng, les experts techniques de haut niveau Ali nuage et Yang Accrocher autre équipe dragon co-auteur.

Dans cet article, pour la première fois une analyse complète des services populaires de cloud computing métal nu, l'infrastructure connotation dragon. En tant que nouvelle génération de la technologie de virtualisation sera la direction du développement du dragon, et l'infrastructure existante de comparaison, élaborée dans le calcul du matériel et des logiciels, la performance de base, les frais généraux de virtualisation des similitudes et des différences. Afficher la thèse ci-dessus les données de performance pour une variété d'affaires révèle pleinement les avantages uniques de l'architecture de métal nu dragon. L'interprétation détaillée ci-après pour le papier.

résumé

La virtualisation est la pierre angulaire de l'informatique en nuage, multi-locataires (Machines virtuelles) pour partager un seul serveur physique, améliorer l'utilisation des serveurs de centres de données, ce qui rend les fournisseurs de services de cloud computing peut fournir un service plus rentable. Cependant, la technologie présentera un grand nombre de problèmes de sécurité et plus VM partagés serveurs physiques virtualisés, en particulier dans les dernières attaques de canal latéral. En outre, le processeur, la mémoire et les E / S aura un surcoût non négligeable dans la performance de la virtualisation. À cette fin, la location de serveur physique est devenu un type de service émergent dans le cloud public, le bail serveur physique fournit aux utilisateurs un isolement puissant, ainsi que l'accès direct à des performances plus complète et prévisible du matériel. Mais la façon dont serveur physique location a aussi ses inconvénients: il ne peut être que pour un seul locataire, ne pas l'évolutivité, le coût et une grande adaptabilité faible. serveur physique actuel peut louer un serveur physique tout entier loué à un seul utilisateur, et l'utilisateur ne peut pas remplacer facilement l'image des services de base, stocké dans le cloud computing location de serveur.

Dans cet article, nous proposons une conception de serveur multi-locataires à haute densité innovante partagée nue élastique en métal, qui est élastique de dragon Ali nuage architecture métal nu (papier pour répondre aux exigences de l'examen appelé BM-Ruche). La densité des nuages Ali dragon architecture métal nu, chaque instance en cours d'exécution sur le métal nu calcul d'une conception unique de la carte fille, le calcul de la carte fille avec des modules CPU propriétaires et de la mémoire. BM-Hive calculé pour chaque sous-groupe est muni d'un matériel / logiciel mixte virtio système E / S qui permet aux clients d'instances d'accès aliyun réseau et des services de stockage directement. BM-Ruche peut accueillir jusqu'à 16 métal nu dans un seul cas de serveurs physiques, une augmentation significative de la densité des instances du serveur métal nu. En outre, BM-Hive isolement strict au niveau du matériel métal nu chaque exemple, pour accroître la sécurité et l'isolement. Dragon programme élastique de densité de métal nu a été déployé dans le cloud public Ali nuage. Il fournit actuellement des services à un million d'utilisateurs simultanés.

introduction

Apparence location de serveur physique est de répondre aux exigences très strictes sur la performance ou la sécurité des clients. Mais pour un seul locataire, les serveurs physiques à faible densité, mais il y a un coût élevé. cloud public au-dessus de la plupart des clients sont des petites et moyennes clients. Nous comptons le nombre de services cloud vCPU VM chacune des spécifications ci-dessus, la demande VM pour moins de 32Core ont représenté plus de 95%. Les spécifications du processeur pour les serveurs physiques existants ont un minimum 64Core, jusqu'à 128Core. Ces petites et moyennes clients ont pas le choix, ou de renoncer au niveau de la machine physique de performance et de sécurité, en utilisant la machine virtuelle virtualisé traditionnelle, ou de louer l'ensemble du serveur, et donner de la valeur pour l'argent. Il n'a pas non plus l'élasticité du cloud public métal nu n'a pas encore une raison majeure pour le grand public.

À cette fin, nous avons conçu l'architecture flexible métal nu à haute densité du Dragon: une solution évolutive, le support matériel en métal nu élastique pour des solutions de virtualisation multi-locataires. Le châssis en métal nu (BM-Hive) peut garantir les performances Unité centrale et de la mémoire ont une machine physique locale est en cours d'exécution, mais aussi des périphériques virtuels matériels IO, ainsi que la plupart des fonctions importantes du nuage de charge de minutes, l'expansion élastique et similaires. BM-ruche se compose de trois modules de calcul: sous société, IO-Bond, BM-hyperviseur. Le calcul de carte sous contient la CPU et de la mémoire des instances métalliques Sinon nues, séries BM-hyperviseur sur notre serveur physique sous-jacente peut accueillir un maximum de 16 calcule la sous-carte, IO-Bond est reliée à la plaque sous le calcul et le BM-Hypervisor liens. Nous présentons ces trois parties plus en détail dans les sections suivantes.

système BM-Hive utilisant des avantages significatifs:

Abordable: Le métal nu jusqu'à 16 cas partager un serveur physique, les clients peuvent réduire considérablement les coûts;

Les performances mono-fil Excellente: Exemples de CPU haute fréquence libre du métal nu, tel 4.2GHz i7;

compatible avec le système d'exploitation actuel et maintenance: Les clients peuvent utiliser à titre d'exemple, comme d'autres instances de métal nu métal nu hors exploitation, y compris en miroir, remplacer le plateau de système, ajouter / supprimer nuage nuage disque calcul opération unique et pratique.

Comparez le numéro d'instance actuelle de différents mérites de cloud public comme suit:

Dragon architecture métal nu est une architecture de virtualisation matérielle et logicielle intégrée

logiciel Dragon et l'intégration matérielle architecture de virtualisation de métal nu est une évolution naturelle et l'amélioration de la virtualisation existante. La figure ci-dessous, l'architecture globale ci-dessus, BM-Hive avec le programme de virtualisation traditionnelle CPU / mémoire, l'opération d'accès et système d'entretien, et d'autres aspects du multiplexage mutualisée très similaire. Nous avons développé un dragon métal nu matériel métal nu pour système de partage pour gérer un sous-système BM-Hypervisor IO calcule la carte fille.

La virtualisation actuelle est confrontée principalement les problèmes suivants:

Avant de discuter en détail de dragon architecture métal nu, regardons quelques-uns des problèmes auxquels fait face le nuage de la technologie virtuelle. Les solutions logicielles de virtualisation du métal et du Dragon nus intégration matérielle une bonne solution à ces problèmes.

les frais généraux de virtualisation ne peut pas répondre aux exigences de haute performance

La virtualisation existe au-delà du contrôle de la performance de gigue, qui ne peut pas répondre aux exigences de performances extrêmes de la scène

isolement de sécurité virtualisée les exigences de l'industrie portée spécifique

Les performances de virtualisation imbriquée ne peut pas répondre aux besoins des clients

La virtualisation des frais généraux:

La virtualisation actuelle de CPU détermine les principes de base doivent être rallumé (VM-sortie) dans un environnement vCPU et vers le bas du processeur de l'environnement physique. Commutation fréquente de VM peut causer de graves problèmes de performance. Par exemple, un pass-through typique des interruptions de l'appareil dans un flux de processus virtualisés est très longue. hyperviseur KVM sous un commutateur virtuel nécessite des milliers de cycles d'horloge, le coût est susceptible d'atteindre ~ 10US. Dans des circonstances normales VMExit (comme les interruptions) atteint environ 5 km, la performance VM commencera à être affectée. Il VMExit toutes les causes, telles que l'IIP, la violation de l'EPT, l'accès MMIO, et ainsi de suite.

Nous en avons essayé 300.000 instances virtualisées de données d'exploitation, nous avons trouvé des exemples de plus de 10.000 fois par seconde VM-sortie a atteint 3,82%, et même de nombreux cas, plus de 100.000 commutateurs par seconde.

Dragon nu métal BM-Ruche résultat de calcul de la sous-plaque est en cours d'exécution par exemple directement, en évitant tout processeur classique / mémoire de tête de virtualisation.

La virtualisation des performances de gigue:

Comme les services d'instance et le système client partagent la même CPU, ce qui a conduit au système hôte lorsque le service est occupé peut affecter le fonctionnement de l'instance de client. Nous cas échantillonnés dans 20.000 cas en cours d'exécution CPU est préempté, trouvé sur un partage des exemples, il y a plus de 200 cas, en fonctionnement occupé l'utilisation du processeur de 2%. C'est la performance réelle de ce CPU 200 est un exemple de 100% au lieu de 98%, dans le cas où le même type d'exemples exclusifs se sont produits. Après tout, le traitement d'interruption est nécessairement requise dans la CPU du système hôte à traiter. Alors que l'instance BM-Hive, les services du système fonctionnent dans BM-hyperviseur, l'unité centrale de traitement calcule la sous-plaque est différent CPU physique, si nue instance de dragon en métal n'existe pas de ressources informatiques de préemption problème.

Sécurité virtualisation:

Ce n'est pas un nouveau problème, nous reconnaissons tous le niveau de sécurité de faible à haute forme: Process - > container - > La virtualisation - > Machine physique. attaques de canal latéral se produisent si cette description, les exemples ne sont pas virtualisés incassable. Dragon qui précède le calcul sous-plaque de métal nu instances exécute dans une procédure distincte, physiquement isolé du naturel, ces questions de sécurité ne présente

Emboîtés les problèmes de performances de virtualisation:

En général, la perte de performances de virtualisation KVM imbriqué dans plus de 20%, en particulier lorsque certains des plus fréquemment la scène des opérations d'entrées-sorties. Ainsi, dans l'exemple, il est difficile de répondre aux exigences du cloud computing virtualisé secondaire courant. Les instances de métal nu dragon, il peut exécuter la solution de virtualisation des postes clients de gérer leur propre variété de matériel accéléré à nouveau dans l'instance interne favori.

Design Dragon système d'architecture en métal nu

Afin de résoudre les nombreux problèmes de considérations virtuelles traditionnelles, conception BM-Hive objectifs sont les suivants:

Multi-locataire

unité d'isolement de sécurité physique

Système d'exploitation et de maintenance Access existante

Les performances de la machine physique

Faible coût

La figure 3 montre l'architecture globale du système du BM-Ruche. Nous Shenlong exemple de métal nu est appelé: BM-invité. Sur la base de l'instance virtualisée traditionnelle est appelée: VM-invité. Chaque serveur nu se compose d'une plaque de base et une pluralité de calcul secondaire. Sur la base est essentiellement un serveur Xeon simplifié. Chaque carte a un connecteur de calcul PCIe plaquette de sous-extension de la base d'extrémité. Les principaux composants, y compris CPU, mémoire, bus PCIe et IO-Bond. IO-Bond est une interface matérielle mis en uvre dans un FPGA. Il est relié à une plaque de base et un bus sous PCIe calcul, la fonction de pont transparent semblable à la fonction du PCIe. IO-Bond calculée sur la carte fille bus PCIe, qui simule une pluralité de dispositifs de support de conducteur noyau standard virtio virtio. acte IO-Bond comme bm-client / virtio frontal et le pont arrière-plan le BM-hyperviseur. Actuellement, le support IO-Bond réseau virtio et des dispositifs de stockage (dispositif de bloc). Il peut être facilement étendu pour supporter d'autres dispositifs de virtio.

L'analyse des données expérimentales

Je serai la performance du BM-Hive traditionnelle du système CPU / mémoire virtuelle Overtaken par contraste, mais aussi pour l'analyse des données de performance sur le réseau, le stockage et d'autres sous-système IO. Enfin, nous fournirons des exemples de performances de dragon en métal nu dans les scénarios d'affaires dans le monde réel.

CPU et profilage de la mémoire par exemple de métal nu dragon

CPU locale et les performances de la mémoire des instances de métal nu critiques à l'utilisateur. 7 et la Fig. 8 présente la même configuration, par exemple en métal nu instances virtualisé fonctionnant à la différence de performances du processeur SPEC CINT 2006 mesurés par l'outil de test d'écart STREAM performances de la mémoire.

La figure fait sur le traitement de la normalisation des données, les performances du processeur peut être vu avec les instances de métal nu de la machine physique presque pas de différence, même quelques autres éléments que la machine physique et les performances du processeur virtuel des exemples 0-4% du général la perte. En outre la mémoire similaire, les instances virtualisées bande passante mémoire de métal nu était d'environ 98% des cas.

Analyse des performances sous-système IO

Et BM-invité VM-invité virtio sont basés sur le chemin E / S réseau aliyun VPC d'accès système de stockage en nuage, la différence entre eux est que le BM virtio-Hive avec du matériel - conception hybride logiciel. Dans cette section, nous allons BM-Guest et réseau VM-invité et les sous-systèmes de stockage pour faire la comparaison des performances. La vitesse maximale du contrat d'accès au réseau Les deux notre exemple est limitée à la définition du produit 4M PPS, la bande passante maximale de 10 Gbit / s, et la limite de stockage est de 25 IOPS 300Mbps. Par conséquent, le but de notre test est de savoir si les deux types d'exemples pour atteindre les objectifs de conception.

PPS: Nous voyons BM-Guest / VM-peut atteindre invité objectif de conception 4M UDP PPS, mais plus lisse VM-Guest, cela peut être dû à la voie BM-invité par l'interface matériel et logiciel semble mieux que VM-invité multi-plomb.

Latence: en termes de latence, obtenir des retards de réseau VM-invité à être un peu mieux que le même type de BM-clients dans trois outils de test, pas beaucoup de différence.

Stockage IO: performances mémoire IO ci-dessus BM-clients sera VM-globale des clients mieux. L'écriture d'accès aléatoire IO aspect latence supérieure BM-invité VM-invité, et les données en termes de la longue queue des données BM-invité plus de 50% VM-invité.

applications clientes typiques

En comparant les scénarios d'application réelle, nous pouvons mieux découvrir les avantages de l'instance de métal nu. Par exemple, nous comparons deux exemples des différences dans nginx serveur réseau, base de données MariaDB, et la base de données comme mémoire de données Redis.

Nginx: le type de service la plupart des clients choisissent le site. demandes BM-client par deuxième aspect de la durée de traitement pour chaque demande à plus de 50% VM-client

MariaDB: MariaDB est un type de données de test standard, intégré dans sysbench. Lire le rendement est supérieur à VM-guest15% BM-client ou plus, tandis que les performances d'écriture est dépassée pendant plus de 50%

Redis: une base de données de structure de données de mémoire morte. Redis est largement utilisé pour améliorer les performances des serveurs et des capacités de service. BM-clients dans les performances du test Redis est supérieure à toutes les VM-clients. 15 et 16 sur la Fig. Ici plus fatigué.

quelques réflexions

IO-Bond optimisation des performances: performances IO-Bond est au-dessus du chemin critique du système IO. Actuellement mis en uvre par le FPGA. On peut par la puce ASIC mis en uvre à l'avenir pour améliorer encore le réseau et les performances de stockage

Transfert thermique et thermique Mise à niveau: Hot Upgrade métal nu dans les exemples ci-dessus peuvent être atteints. Alors que nous mettons à jour la base BM-Hypervisor peut être fait, par exemple, aucune perception du client. Nous avons introduit des exemples des technologies de valorisation thermique « rapide et évolutive Live Upgrade dans VMM Grand Cloud Infrastructure » en 2019 ASPLOS détaillé du papier. Et la théorie du transfert de chaleur, les instances de métal nu peuvent également être obtenus, nous avons fait quelques tentatives. Actuellement en cours de développement.

soutien SGX: soutien SGX sans aucun problème dans l'exemple ci-dessus métal nu. En revanche en raison de la suppression de la virtualisation des obstacles, le soutien SGX plus facile.

résumé

Nous avons introduit les services de nuage de métal nu à haute densité de Dragon BM-Hive, mise en uvre et données de test. La pratique a prouvé que la prochaine génération de la virtualisation que la direction du développement de l'industrie, Dragon de solutions matérielles et d'intégration de logiciels dans compatibles avec la virtualisation des avantages existants de la prémisse, pour améliorer la performance et la sécurité. Ici, apprécier sincèrement les efforts d'Ali équipe d'innovation en nuage pour payer tout le personnel technique.

flux CAN / vidéo sur « vent » pour atteindre deux commerciaux à grande échelle années, a annoncé le bord actuel de développement informatique en 2020
Précédent
Résisté millions de personnes vivent, a recommandé les Nations Unies depuis la fin de la voie de migration de la technologie de vol livre
Prochain
Dix minutes pour commencer React + MIRRORX, à partir du code front-end est sans obscurcir plus le grand Dieu | programme Force
Modernes « Bonjour, monde », et pas seulement quelques lignes de code
Python créer des graphiques dynamiques, voir les tendances mondiales de l'épidémie
Fini! jaune Python! 80% des programmeurs: heureux, comment voyez-vous?
Baidu bénéfice d'ingénieur des mines illégales 100000, condamné à trois ans, le cas d'Apple concurrence condamné à une amende de 1,1 milliard d'euros, GitHub projet d'acquisition de titres NPM | Geek
Zhou a gagné 4700 systèmes stellaires de visualisation de données mondiales Outbreak, chinois ultra-léger OCR ...... GitHub semaine Glance chaud
La tenue d'un 220000 $ salaire annuel, Fared pas aussi bon en tant que stagiaire?
La formation doit cacher l'expérience de la naissance? Comment écrire l'expérience du projet commercial? entretien Programmeurs inventaire de préparation
notion Docker difficile à comprendre? Article obtenir le port Docker contraignant
Programmeurs compétences de base: Python Pourquoi les données doivent d'analyse? La réponse a longtemps été écrit sur le JD ...
traitement de l'image réelle python | transformation non linéaire d'image grise transformation logarithmique, gamma conversion
TCM épidémie Shu haute Shuping: âge moyen « Contagion », ne jamais commencer grasse