Dot.Blog

C#, XAML, WinUI, WPF, Android, MAUI, IoT, IA, ChatGPT, Prompt Engineering

Microsoft Azure - comprendre le Cloud computing

[new:30/09/2014]Nadella en a fait son cheval de bataille (“Cloud first”), mais tout le monde en fait et en parle aussi (Amazon, Google…). Et tout le monde voudrait que vous l’utilisiez. Qui ça ? Le Saint Cloud. Pas l’ancienne citée ouvrière reconvertie en parc à Bobos, non le “cloude”, le nuage américain. Mais c’est quoi ?

Le Cloud ambigu par nature

imageSi les gens disent un peu n’importe quoi à propos du Cloud ce n’est pas forcément entièrement de leur faute. Le Cloud lui-même est un concept protéiforme, un peu flou, dématérialisé par nature et utilisable de façons très différentes. La légende veut même que nos ancêtres les gaulois avaient peur que les clouds ne leurs tombent sur la tête, c’est pour dire la méfiance ancestrale que nous avons des nuages !

La minute du regretté Me Capelo : “protéiforme” ne vient pas comme d’aucuns le pensent à tort de “protéines” même si celles-ci savent se contorsionner et prendre plusieurs formes. Le mot vient du dieu grec Protée, dieu marin qui pouvait prendre toutes les formes qu’il désirait. Si le reste de l’article vous rase vous pouvez vous arrêtez là en ayant appris quelque chose. Dot.Blog pense à tout !

Du stockage simple de données à l’hébergement d’OS et d’applications dédiées, le Cloud est vraiment aussi nébuleux qu’un nuage. Les américains sont forts pour donner des noms aux choses. Cloud veut dire nuage. C’est clair dès le départ : ça sera nébuleux. Apple ? On vous prend pour une pomme c’est dit dans le nom. Word ? ben… ce sont des mots, pour écrire donc. Ils ont ce sens incroyable du terme commun qui devient nom de produit ou de technologie. En Français cela serait totalement impossible. imageVoyez-vous un produit ou un service qui s’appellerait “Nuage”, “Pomme” ou “Mot” ? On a des exemples d’ailleurs. Quand on pense à l’échec de la Renault 14 juste parce que la première publicité comparait son apparence à une poire. Personne n’a voulu, même très indirectement, être pris pour une poire en France. En revanche on aime se faire prendre pour une Apple. Preuve que les français maitrise très mal l’anglais… Et pourtant la R14 ne s’appelait pas la Renault Poire ! Alors Cloud comme Apple ou Word, c’est impensable en français.

Bref nos amis d’outre atlantique sont des farceurs. Cloud c’est un nuage et c’est par définition un truc aux contours mal définis, changeant de forme sans cesse, pouvant être ici ou là, apparaissant de nulle part et disparaissant sans crier gare (pensez que le Cloud se pratique avec une connexion Internet et regardez la qualité moyenne de celle-ci dans notre pays…).

Le Cloud suscite donc la méfiance, by design je dirais. On n’aime pas ce qui est flou, mouvant, mal défini, et on a raison c’est souvent dangereux. D’ailleurs côté danger le Cloud c’est la mort de la “privacy”, qu’on traduit assez mal en français par “vie privée” car le terme américain couvre un champ sémantique bien différent en réalité même s’il englobe le concept de vie privée, mais pas que.

imageFrein majeur à l’adoption du Cloud par les entreprises, la “privacy”. Confier ses données, ses clients, son chiffre d’affaire tout ça à un “nuage” …; Brrrr ! Déjà avec la NSA on sait que toute entreprise de bonne taille se fait espionner alors que ses serveurs sont locaux, alors tout déplacer pour le donner directement à une entreprise américaine… Amazon, Google, Microsoft…. C’est vrai que ça fait froid dans le dos. Alors chacun y va de son petit truc pour vous prouver qu’il vient en ami. Dernièrement Microsoft a bravé les autorités judiciaires de son pays en refusant de communiquer des informations sur certains comptes mails stockés hors USA. Ils ont même eu une phrase frappée au coin du bon sens “vos mails n’appartiennent qu’à vous, pas à nous” (traduction rapide). On se demande où se situe la limite entre sincérité et gros coup de com’ … Vous vous direz que je suis un esprit chagrin cherchant des poux partout, mais moi je pense que ça a l’air trop bien préparé jusque dans la petite phrase sortie d’un brainstorming de markéteux pour être totalement honnête… Mais bon, même si c’est pour se faire de la pub c’est bien de rappeler que nos données sont à nous et pas au marchand de Cloud… Tout est flou avec le Cloud, même les prises de position à propos du Cloud !

Résumons : côté technique le Cloud c’est nuageux et flou, côté géopolitique c’est pas clair (confier son savoir à un étranger), côté business c’est risqué (offrir ses secrets à un nuage), et même sur le plan citoyen ça pose problème. Je me rappelle d’un ancien directeur de la CNIL qui disait en substance dans une interview “un pays dans lequel on ne plus frauder est-il encore une démocratie ?”. Bien entendu le Web et Google n’arrivent pas retrouver la référence de cette citation gravée en revanche dans ma mémoire. Sur le Web nada. Noyée. Enterrée. Toute pensée subversive est nettoyée. J’aime aussi le joke qui fait trembler et qui dit que 1984 de Orwell n’était pas censé être un manuel d’utilisation… Quand vous donnez toutes vos photos, vos vidéos, vos lettres, vos souvenirs, votre vie à DropBox, OneDrive ou autre, votre vie vous appartient-elle encore ? Êtes-vous toujours un citoyen libre ? On est en droit de se le demander malgré tout.

imageBref le Cloud c’est tout ça, c’est vrai. Quand on parle de C# on parle tout de suite technique, comparatif avec C++ ou Java, bouts de de code. Quand on parle du Cloud les premières choses qui viennent à l’esprit ce sont les nuages noirs et mystérieux chargés d’une puissance maléfique qui nous viennent en tête (et au dessus de la tête). La technique ne vient qu’après, très loin après.

Ceci explique certainement que le Cloud bien que s’infiltrant de gréé ou de force un peu plus chaque année n’ait pas connu un engouement plus grand que ça ce qui vaut même, revenons à l’introduction, que Satya Nadella en fasse son cheval de bataille : “Cloud first”, comme “Mobile first”, on sent bien que ce sont les échecs d’hier qui sont mis en avant pour la grande bataille de demain. Nadella ne dirait pas “Excel first” ou “Office first”. Ce sont des marchés déjà gagnés par Microsoft. Alors que le Cloud et le Mobile, ça reste à faire.

Donc quand on pense au Cloud on pense à tout ça. Qui n’a rien à voir avec l’outil technique extraordinaire que peut être le Cloud et le progrès qu’il représente dans le partage des données et leur délocalisation notamment.

C’est pourquoi maintenant que nous avons évacué les peurs, parlons vraiment du Cloud !

Le Cloud côté technique

Laissons derrière nous les phobies gauloises et autres craintes citoyennes et entrons dans le vif du sujet : qu’est ce que le Cloud, techniquement et non pas comme instrument de personnes mal intentionnées. Car finalement on pourrait en dire autant du marteau. Entre de mauvais mains il se transforme en arme redoutable et mortelle. Pourtant il est en vente libre et fait le bonheur des bricoleurs du dimanche autant que la peine de leurs voisins moins matinaux…

Définition

Tentons une définition : Le Cloud est une infrastructure basée sur Internet dont les ressources, logiciels et informations sont fournies à la demande à d’autres ordinateurs ou assimilés. Comme fonctionne le réseau électrique avec ces centrales (les centres serveurs du Cloud) ses transformateurs et lignes (la plomberie Internet) et ses fils qui arrivent chez le consommateurs (la paire torsadée du téléphone).

Le Cloud computing est en fait l’aboutissement de très nombreux essais parfois anciens de fournir des ressources informatiques centralisées à des clients décentralisés. Le Minitel en France en est certainement le plus bel exemple pour une application grand public (juste un terminal, aucun stockage, toute l’information est “ailleurs” sur des ordinateurs qu’on ne voit pas et qu’on ne connait pas). Comme d’habitude dans notre beau métier on prend des trucs qui datent de 30 ans et on leur met un joli nom à la mode et c’est parti pour de longues discussion sur la “nouvelle” technologie !

On peut dégager un certain nombre de caractéristiques qui définissent assez bien le Cloud du point de vue des données, du calcul ou de l’infrastructure :

  • Hébergement à distance : les services et données sont hébergés par une infrastructure distante.
  • Ubiquité : Les services et données sont disponibles depuis n’importe où (sous réserve d’une connexion Internet)
  • Commodification : néologisme impossible à traduire correctement (“transformation en objet” est lourd et imprécis) mais qu’on comprend facilement puisqu’il s’agit ici de transformer en un bien de consommation courant quelque chose qui ne l’est pas forcément au départ. On retrouve la notion de SaaS, logiciel comme un service par exemple.  On transforme des services, des données en biens de même nature que le gaz ou l’électricité qu’on paye en fonction de sa consommation.

 

Pour résumer on pourrait dire que le Cloud Computing c’est l’assemblage du Software as Service (Saas) plus de la Platforme as Service (PaaS) plus l’Infrastructure as Service (IaaS).

Le SaaS c’est Office 365 : un abonnement pour utiliser le pack office en ligne, vous arrêtez de payer, vous n’avez plus Office…

Le PaaS se destine principalement aux entreprises, le Cloud fournit une plateforme de type logiciels de base, OS, etc, et l’utilisateur y exploite ses propres logiciels. Un site Web dans le Cloud peut être une des utilisation du PaaS. Les frontières sont parfois floues. Un site Web hébergé chez un fournisseur est déjà du PaaS ou non ? Oui et non. Car ce qu’on entend par PaaS notamment avec des fournisseurs comme Microsoft est un peu plus sophistiqué.

l’IaaS est la mise à disposition d’un utilisateur, entreprise en générale, d’une infrastructure distante. Le prestataire entretient les machines, leur OS, etc. C’est comme un ordinateur distant.

La différence entre IaaS et PaaS est parfois difficile à saisir et cela est normal, c’est flou c’est nuageux… par essence.

Les modèles de services dans les nuages

Il existe donc plusieurs modèles de Cloud Computing, tous partagent la notion de service, de tarification selon la consommation et plus rarement sur la base de forfaits (souvent pratiqué en revanche pour le pure stockage des données de type DropBox).

On peut résumer ces différents modèles que venons d’évoquer par le schéma suivant :

image

Les quatre colonnes de ce schéma représentent les 4 grands services qu’on peut imaginer actuellement autour des logiciels et des données.

Les lignes correspondent aux niveaux de profondeurs techniques qui doivent être maintenus par l’utilisateur / consommateur ou par le fournisseur de service.

Logiciels en boite

La colonne à gauche représente le modèle classique dit “packaged softaware” c’est à dire du logiciel vendu dans une boîte (virtuellement le plus souvent aujourd’hui). L’utilisateur / consommateur doit tout gérer lui-même, du réseau (ligne du bas) aux applications (ligne en haut) en passant par toutes les couches : stockage, serveurs, virtualisation, OS, etc.

Iaas

L’IaaS est la première étape du Cloud, le service minimum pourrait-on dire. Le fournisseur s’occupe de l’infrastructure, du réseau à la virtualisation. Tout le reste est à la charge de l’utilisateur, de l’OS aux applications. C’est en quelque sorte la location d’un ordinateur distant, voire d’une quantité de travail sur un même ordinateur distant partagé par plusieurs clients (ou une ferme de machines).  Toutefois ce qui différencie l’IaaS de la location d’une machine partagée pour un site Web par exemple c’est qu’ici l’OS fait déjà partie des attributions de l’utilisateur. Ce dernier peut installer l’OS qu’il désire et en faire ce qu’il veut.

PaaS

Dans le PaaS on reprend tout ce qu’offre l’IaaS plus la prise en charge par le fournisseur de l’OS, du middleware et du runtime. L’utilisateur ne s’occupe plus que d’installer des applications conçues pour la plateforme du fournisseur et de gérer ses données dans des formats compatibles avec cette dernière.

SaaS

imageDernier étage de la fusée qui va dans les nuages, le SaaS représente l’ultime fantasme des éditeurs de logiciels. Il y a fort longtemps lorsqu’il était encore CEO de Microsoft, Bill Gates avait déjà annoncé que c’est vers cela qu’il voulait aller. Cela paraissait délirant car techniquement trop loin de la réalité, aujourd’hui c’est la réalité… Office 365 c’est du SaaS. On loue un accès à Office, et quand on arrête de payer on n’a plus Office. On voit ici toute la différence qui oppose le modèle classique au SaaS fantasmer et en train d’être imposé… Dans le modèle classique vous payez un logiciel, si vous ne voulez pas payer pour les nouvelles versions vous avez la possibilité de continuer à travailler avec la version achetée. Avec le Saas vous avez tout le temps la dernière version, mais dès que vous arrêtez de payer on vous coupe le robinet. Comme le gaz ou l’électricité. A une époque où on réfléchit à la meilleure manière de rendre les habitations autonomes (panneaux solaires, chauffage géothermique, récupération des eaux de pluie, éoliennes, etc) il me semble, c’est un avis personnel, que le SaaS va totalement à contre courant en recréant un mécanisme de dépendance qui, on comprend pourquoi, fait fantasmer les éditeurs de logiciels…

Personnellement je soutiens l’IaaS et le PaaS mais je suis un ferme opposant au SaaS qui est la pire chose qui puisse se faire. La dernière étape vers le dépouillement de l’utilisateur qui devient vache à lait captive. Idéologiquement et quelque soit mes sympathies techniques pour tel ou tel éditeur comme Microsoft, je me dois de m’élever et de mettre en garde contre cette dérive qu’est le SaaS (peu importe le fournisseur). Mais chacun fera en son âme et conscience, je vous livre ma pensée et même si j’espère qu’elle vous fera réagir je ne cherche pas à vous l’imposer !

Les trois grands fournisseurs

Le marché est chaud bouillant car naissant. Tout le monde se déchire mais déjà trois grands fournisseurs s’imposent sur le marché même si cela ne présage pas d’une stabilité absolue dans le futur. On l’a vu dans la téléphonie, Android sortant du diable vauvert et venant prendre la première place sous le nez de Apple et son iPhone idole des jeunes et sous la barbe de Microsoft créateur de la technologie avec le Pocket PC sorti en 2000 soit 7 à 8 ans avant la sortie de l’iPhone 1 (2007) et de Android 1.0 (2008).

Devant une telle leçon de l’histoire il faut donc rester humble sur les prévisions qu’on peut faire !

Google App Engine

C’est bien plus une interface Web pour un EDI qui permet facilement de déployer des applications Java ou Python.

Techniquement tout cela repose sur l’infrastructure Google qui est mondiale et efficace. Donc pas de problème de ce côté. C’est la spécificité de l’offre qui réduit considérablement les avantages.

Amazon Web Services

EC2 (Amazon Elastic Compute Cloud) offre une plateforme de services Web qui peut s’adapter à la montée en charge et qui bien entendu réside dans les nuages donc avec l’ubiquité généralement recherchée.

L’offre est techniquement intéressante avec un load balancing, des outils de monitoring etc de très bonne facture et une fiabilité à l’image de ce géant du Web.

Mais là encore l’offre perd de son intérêt quand on regarde l’étroitesse du couloir des possibilités mises à disposition.

Microsoft Azure

imageMicrosoft Azure, connu aussi sous le nom de Windows Azure est peut-être la seule véritable offre sérieuse de Cloud Computing du marché. C’est à la fois du PaaS et de l’IaaS qui permet de déployer des applications et des services en profitant du l’infrastructure réseau mondiale de Microsoft et de ses data centers. On trouve des services de natures très diverses, un support de différents outils de développement, de langages, d’outils, de frameworks, le tout incluant bien entendu les produits Microsoft mais pas seulement.

Azure s’avère un service complet et large, plutôt réservé aux entreprises on s’en doute, bénéficiant du savoir-faire Microsoft qui maitrise toute la chaine, des OS aux langages en passant par les plateformes. On bénéficie aussi d’une ouverture intéressant puisqu’on peut créer des machines virtuelles Azure qui tournent sur Linux. Ainsi il est possible de développer des applications de tout type s’adaptant à la fois aux connaissances des équipes en place et aux besoins des utilisateurs : .NET, Java, PHP, Node.js, Python ou même Ruby sont supportés.

Visual Studio contient désormais des outils facilitant le développement, le débogue et le déploiement dans Azure ce qui propulse l’offre de Microsoft bien loin devant celle des concurrents.

Il est possible en suivant le lien donné d’accéder au site d’Azure qui contient des tas d’informations que je ne vais pas recopier ici, autant puiser à la source directement (et c’est en français). Il est même possible d’essayer Azure pendant un mois gratuitement.

Ensuite la facturation est assez souple et s’adapte aux volumes, aux temps de calculs, mais bien entendu on reste dans l’esprit même du Cloud : tant que tu payes ça marche, tu ne payes plus ça s’arrête.

Mais ce problème est global à toutes les offres puisque c’est la nature même du Cloud qui est ici incriminée. Car côté offre, Microsoft Azure est de loin celle qui est la plus intéressante techniquement.

Conclusion

Le Cloud est clivant d’un point de vue éthique. Techniquement c’est un progrès. Qui se passerait aujourd’hui de l’ubiquité des données qu’offre par exemple DropBox ? A peine une photo est prise par mon smartphone qu’elle se trouve déjà dans ma DropBox. J’arrive au bureau la photo est déjà synchronisée dans mon PC. Je pars avec ma tablette dans le jardin, la photo est là aussi. C’est génial.

Mais derrière cette façade de progrès évident se cache un monstre qui peut mettre fin à toute forme de liberté individuelle, qui peut transformer tous les consommateurs en vaches à lait, qui peut espionner vos amours, vos options politiques, et tout le reste. Le risque étant le même pour un particulier que pour une entreprise, seul le type des secrets changent…

Toutefois dans les offres que le marché nous propose, Azure se dégage nettement par sa versatilité, sa capacité à supporter de nombreuses configurations, son ouverture (Linux par exemple) et par sa scalabilité qui permet de maitriser le monstre. En choisissant des solutions Azures de type IaaS ou PaaS on reste aux commandes de ce qu’on partage et de ce qu’on confit au Cloud. On peut parfaitement crypter les données stockées pour les protéger par exemple puisque tout depuis l’OS peut être sous contrôle.

Le SaaS est lui une autre affaire, c’est Office 365 et d’autres offres que Microsoft préparent dans ce sens puisque le Cloud est devenu leur cheval de bataille. Là je suis moins chaud j’ai expliqué pourquoi. Mais pour des développements dans le Cloud, Azure reste la meilleure plateforme.

Testez-là et faites vous votre propre avis, pour le reste cela regarde la conscience et l’éthique de chacun !

Stay Tuned !

Faites des heureux, partagez l'article !
blog comments powered by Disqus