Skip to content
Published 14 février 2019

Part 2

Bonjour et bienvenue dans cette série sur Microsoft Azure: vue d’ensemble,dans ce poste nous allons nous intéressé particulièrement au Calcul ou traitement sur Azure. Nous allons parler de la puissance de calcul de base qui constitue certaines des ressources principales de Microsoft Azure et qui posera les bases des nombreux autres services et ressources dont vous pouvez tirer parti.

Lorsque nous parlons de puissance informatique, nous parlons en réalité des ressources pour exécuter votre code,Vos applications,etc. vous devez pouvoir sortir et déployer celles qui vous permettent de tirer parti des ressources tels qu’un processeur avec une vitesse d’horloge particulière, vous devez pouvoir tirez parti d’une certaine quantité de mémoire et vous aurez peut-être également besoin d’ exigences telles que l’espace disque si vous devez écrire des fichiers temporaires ou si vous avez du code existant qui nécessite de l’espace disque. Et ces ressources informatiques que nous allons voir sont vraiment la base de tout Azure. En fin de compte, lorsque nous utilisons ces centres de données, nous utilisons des serveurs qui tournent dans des racks et nous tirons parti de l’ensemble de ces ressources, qu’il s’agisse d’une puissance de calcul brute , comme nous le verrons ici, ou une abstraction de niveau supérieur qui exploite cette puissance de calcul même.

computing -ressources to run your code

Désormais, Azure propose des options IaaS pour le calcul, notamment des machines virtuelles et des conteneurs. Dans les offres PaaS, nous avons ce qu’on appelle les services de cloud computing et nous avons des applications Web. jetons rapidement un coup d’oeil à chacun d’eux.

Azure compute

Les machines virtuelles sont vraiment ce à quoi vous vous attendez et sont probablement les plus familières pour beaucoup de gens, en ce sens qu’elles vous permettent de sortir de votre abonnement Azure et de dire que je souhaite mettre en service une ou plusieurs machines virtuelles. Vous pouvez choisir Linux ou Windows, et vous n’etes pas limiter à utiliser uniquement une image de base, vous pouvez utiliser des images prédéfinies. En fait, si vous êtes un abonné MSDN, vous aurez encore plus d’images avec des éléments tels que SQL Server, Visual Studio ou d’autres outils déjà installés que vous pouvez utiliser pour vos environnements de développement et de test, et lorsque vous configurez ces machines virtuelles, leur taille varie. Ainsi, les ressources dont nous avons parlé, telles que le processeur, la mémoire et les disques, sont des éléments que vous pouvez sélectionner lors de la configuration de votre machine virtuelle . Donc, vous avez un processeur de taille différente , vous voulez peut-être quelque chose avec un processeur de milieu de gamme, peut-être que vous avez quelque chose qui fait beaucoup de traitement et vous avez besoin d’une plus grande valeur de CPU. Donc , c’est le genre de chose auquel vous devez penser lorque vous approvisionnez vos machines virtuelles. Il existe également des offres associées au stockage premium, essentiellement des disques SSD, qui vous permettent de tirer pleinement parti du matériel le plus récent et le plus performant pour les charges de travail de traitement intensif susceptibles de générer une activité de disque importante. Si vous utilisez une base de données SQL Server ou Oracle, par exemple, vous avez réellement besoin de cette performance de disque supérieure .

Désormais, vous gérez la machine virtuelle et le système d’exploitation. Vous décidez quand les correctifs seront appliqués, vous installez le logiciel, tout ce travail vous incombe , de même que la configuration de vos machines virtuelles si vous en avez besoin dans un réseau virtuel , comme vous pouvez le faire dans Azure, et la gestion de tâches telles que l’équilibrage de la charge, le basculement, vous aurez besoin de configurer et comprendre comment gérer ces services.

Aujourd’hui, les conteneurs sont un peu plus récents et moins familiers , mais ils fournissent des hôtes d’application vraiment légers en supprimant une grande partie du système d’exploitation dont vous n’avez pas besoin et en virtualisant des éléments tels qu’un système de fichiers ou sur le registre Windows. Vous pouvez donc commencer avec un système d’exploitation Linux de base, puis superposer ce conteneur sur un autre conteneur qui dépend de la base contenant votre infrastructure d’application, telle qu’une version particulière de Ruby. Et ensuite, vous construisez votre application en tant que conteneur et elle peut s’empiler par-dessus. Et cela vous donne une configuration reproductible, car vous disposez de ces conteneurs , vous avez quelque chose que vous pouvez automatiser et gérer, et qui est très léger. Aujourd’hui, Azure prend en charge les conteneurs Linux. Il existe également un support client Docker aujourd’hui sous Windows et Linux. Vous bénéficierez donc de la même expérience client Docker si vous utilisez Docker en tant que fournisseur de conteneur. Maintenant, l’un des avantages des conteneurs est qu’il existe une bibliothèque de conteneurs que vous pourrez utiliser pour que vous n’ayez pas à construire toutes ces choses à partir de zéro. Vous pourrez choisir l’ image de la plateforme de base et choisir un framework d’application particulier. Un autre avantage des conteneurs est que si, par exemple, vous empaquetez votre application et la déployez, et constatez qu’il ya un problème, vous pouvez revenir à l’état précédent de votre application qui était encapsulé et emballé dans un conteneur. et redéployer cela. Il propose donc différents flux de travail pour vous aider à gérer le côté DevOps de votre application, ainsi que la gestion et le déploiement de vos applications .

Sur la plate-forme en tant que service, nous avons les services en nuage d’ origine . Ceux-ci faisaient partie d’Azure au tout début, etant pièces maîtresses, ils vous permettent de spécifier non une machine virtuelle spécifique, mais un rôle connu sous le nom de rôle Web ou de travail, qui exécute du code d’application Web ou un autre code dans ces rôles de travail. Et ce que vous faites alors, c’est que vous empaquetez votre code d’application dans un format spécifique et que vous déclarez un système d’ exploitation cible , donc un certain niveau de correctif, un certain déploiement, une image, puis vous déployez votre package.

vous pouvez par exemple dire que j’ai besoin de deux instances de ce rôle de travail et de trois instances de mon rôle Web. Tout cela est ensuite géré par Azure Service Fabric. C’est donc là que nous commencez vraiment à voir différentes options par rapport à ce que vous pourriez avoir dans votre propre centre de données, où vous ne faites plus simplement tourner des machines virtuelles, vous conditionnez votre code, vous déclarez l’ environnement et la balance, puis Azure l’exécute pour vous.

Ainsi, dans la représentation qui suit, si vous avez deux instances, par exemple, de votre site Web ou de votre rôle Web en cours d’exécution, et qu’une d’entre elles tombe en panne pour une raison quelconque, Fabric peut le détecter, et il le sait par les métadonnées et votre déclaration selon laquelle vous avez besoin de deux instances en cours d’exécution,il peut donc faire apparaître une autre instance quelque part sur un rack différent de ce même centre de données.

fig_1
fig_2
fig_3

Les services en nuage vous donnent donc une abstraction au-dessus des machines virtuelles.

Essentiellement, lorsque vous déployez votre application, une machine virtuelle se met en marche, votre code est déployé, puis votre code est exécuté. Et dans votre paquet, vous avez la possibilité d’ inclure des tâches de démarrage dans lesquelles vous pouvez configurer cette machine virtuelle si vous le souhaitez. C’est donc toujours une machine virtuelle dédiée sous les couvertures, mais une abstraction de niveau supérieur. Nous atteignons un niveau d’abstraction encore plus élevé pour les applications Web .

C’est une partie importante de ce que les gens construisent aujourd’hui et de ce qu’ils déploient dans des centres de données en nuage. Et ce n’est vraiment que la même idée du rôle Web, mais de manière toujours plus simplifiée, dans la mesure où nous allons nous concentrer sur le code de notre application Web . Vous n’êtes pas obligé de le conditionner d’une certaine manière, donc si vous avez un ASP. Un site Web NET ou un site Web Java, vous allez pouvoir construire cela et travailler avec, sans avoir à faire d’ emballage spécial . Et puis, il utilise IIS pour héberger ces éléments à grande échelle, vous offrant le même type de facilité de gestion que nous avons constaté avec les services de cloud computing,mais intègre également le contrôle de source pour une Intégration continue.

Alors que ce soit en utilisant GIT, ou Visual Studio Online, ou une variété d’autres fournisseurs de contrôle de source, vous pouvez les configurer de telle sorte que, lorsque vous effectuez une construction ou un enregistrement particulier, votre code soit automatiquement déployé dans une application Web, généralement dans le test ou e développement, et vous disposez de fonctionnalités riches pour la gestion lorsque vous passez en production. Tout comme il a des rôles d’employé dans des services de cloud computing, les applications Web comportent également un élément appelé WebJobs, qui vous permet de placer du code qui ne fait pas directement partie de l’interface Web, ni d’ interagir avec l’utilisateur, mais qui doit être exécuté selon un calendrier ou des besoins, être exécuté en permanence en arrière-plan dans le contexte de votre application web. L’ objectif est donc d’écrire ces applications Web de la même manière dont vous le faites aujourd’hui et d’intégrer vos infrastructures de déploiement que vous utilisez aujourd’hui, tout en transférant ce code riche vers une application Web Azure.

Au vu de ce qui précède je pense que l’avenir de l’informatique dans Azure se situe à deux niveaux: l’application Azure App Services et l’utilisation des conteneurs et microservices. Ainsi, pour le gros des applications, Microsoft vient d’introduire, une sorte de service parapluie appelé Azure App Services qui joue le rôle de ce qui s’appelait les sites Web en applications Web, c’est ce dont nous venons de parler, mais nous avons également une notion d’API. Par conséquent, si vous construisez une API REST ou HTTP, elle sera hébergée dans une application Web dotée de fonctionnalités supplémentaires autour de l’API, ou les applications mobiles, nous trouvons un back- end pour toutes vos applications mobiles pour le stockage de données, les notifications, et ensuite quelque chose appelé applications logiques, où essentiellement le flux de travail que vous pouvez exécuter, à nouveau déclenché sur une planification, ou une sorte d’action. Tous ces éléments sont regroupés dans un service d’application Azure doté d’une passerelle offrant un emplacement unique pour gérer des tâches telles que la connexion et un emplacement unique. En quelque sorte, gérez votre solution globale de manière à ce que tous ces éléments, Web, API, mobile et logique, soient tous intégrés dans un concept d’ application que vous pouvez gérer.

azure app services

Maintenant, pour les systèmes plus complexes, quand vous parlez de systèmes à grande échelle pour certains éléments, si vous parlez de microservices ou si vous divisez certaines parties de votre système en ces petits services isolés, les conteneurs seront vraiment un bon moyen de vous aider à gérer cela dans un grand nombre de cas,car ils sont hautement automatisables et que vous allez déjà avoir une certaine complexité que vous introduisez avec ces microservices, et DevOps va jouer un rôle important dans sa capacité à déployer ces microservices à grande échelle , pour effectuer des mises à jour selon vos besoins dans ces différents environnements. Et ainsi avec ces déploiements répétables des conteneurs et cette automatisation conviendront bien à ces systèmes plus complexes si vous faites une mise à niveau.

Ainsi, nous avons parlé de ces options de calcul, à savoir obtenir les ressources pour exécuter votre code. Qu’il s’agisse d’une machine virtuelle simple que vous souhaitez gérer et que vous pouvez configurer à la taille et à l’échelle dont vous avez besoin, ou d’une abstraction de niveau supérieur telle qu’une application Web, ou du nouveau service d’application qui englobe cette fonctionnalité, vous êtes a meme de pouvoir sortir et mettre à disposition l’échelle , les ressources dont vous avez besoin, et pouvoir intégrer tout cela dans votre flux de travail pour la publication et le déploiement de votre application . Nous avons vu des options dans un modèle d’ infrastructure en tant que service ou de plate-forme en tant que service. Et l’objectif dans tout cela est vraiment la mise à l’échelle et la facilité de gestion.

C’est en quoi consiste vraiment le cloud , comment puis-je utiliser mes applications pour qu’elles soient gérables comme si elles étaient dans mon environnement, mais aussi pour qu’elles puissent évoluer à la mesure de mes besoins, à la demande ou basé sur des déclencheurs. Comme je l’ai dit, les options de calcul que nous avons mentionnées ici vont jeter les bases des futurs services dont nous allons parler et fournir une grande partie de cette puissance de calcul essentielle à ces services.

à la prochaine!

Be First to Comment

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *