Tout d’abord, qu’est-ce que le cloud ?
Le cloud, c’est cool. C’est du moins ce qui semble être le cas tant tout le monde voit ça comme une évolution. Il ne m’est pas rare de croiser des recruteurs qui m’annoncent triomphalement que telle ou telle société a décidé de passer ses activités sur le cloud. Ma première question, en général est “Pourquoi passent-ils sur le cloud ?”. La réponse en général me suffit à savoir si je vais accepter la mission ou pas. Une migration dans le cloud n’est pas une évolution. Ce n’est rien de plus qu’un coûteux déménagement.
Car, c’est un fait, on ne va pas sur le cloud sans raison.
Le cloud, c’est “l’ordinateur de quelqu’un d’autre” a-t-on l’habitude de dire. Et c’est vrai. Là où l’on peut maîtriser ses propres ressources quand on héberge ses propres serveurs, qu’elles soient réseau ou matérielles, le fait de passer sur le cloud vous rend dépendant des infrastructures de votre hébergeur, pour le meilleur et pour le pire.
Pour le meilleur, d’abord.
En passant par une société dont le métier est de maintenir des infrastructures, on s’assure de la qualité des prestations et des compétences qu’il serait coûteux de conserver en interne. On peut également espérer que les gros hébergeurs, en concentrant de formidables volumes au niveau des réseaux et et des matériels, fassent des économies d’échelles, impossibles pour tout autre société.
Ensuite, le risque. En effet, quand on héberge soi-même ses propres infrastructures, on assume le risque de défaillance et les pertes financières ou d’image associées à ces défaillances. En reportant les risques sur l’hébergeur et en contractualisant la qualité de service avec lui, on se débarrasse de ce fardeau. Les cas de défaillance couverts par les compétences de l’hébergeur sont de fait bien plus nombreux que ceux que l’ont pourrait assumer, sa spécialisation lui offrant bien plus de connaissances à ce sujet.

source : ovh.com
Autre point positif, sur le cloud, on ne paye pas les ressources qu’on n’utilise pas, ce qui veut dire qu’on peut se débarrasser des ressources inutiles. Et c’est même, selon mon avis, en terme financier, ce qui justifie l’utilisation du cloud. Les gros hébergeurs fournissent tous des APIs (points d’entrée pour gérer les services utilisés de façon automatique). Il est donc facile d’augmenter et de réduire les ressources en fonction de l’activité.
Lorsque l’on définit les ressources d’une infrastructure classique, on calcule les ressources maximum qui seront nécessaires à son fonctionnement lors des pics d’activités, et on obtient la taille de son infrastructure. On paye donc tout le temps des ressources alors qu’elles ne servent qu’une partie du temps. Les ressources qui coûtent le plus cher sont celles qui sont inutiles. Savoir se délester de ressources en trop est donc un avantage considérable pour réduire la facture globale. Quand on héberge soi-même ses serveurs, même si on virtualise avec des solutions de type proxmox, xen ou vmware, on ne peut pas ramener la consommation à zéro. Le cloud le permet, si tant est que l’on soit capable de le faire en tirant le meilleur parti des outils qu’il fournit. les auto-scaling groups d’amazon en sont un bon exemple : Avec un template de machine, on peut créer autant de serveurs que l’on veut, les détruire ensuite avec la même facilité, et même programmer à l’avance la quantité de ces serveurs en fonction de l’activité de notre plateforme et de l’heure de la journée.
Si on joue à fond avec les outils du cloud, les économies peuvent être au rendez-vous. Mais il y a une contrepartie à tout ça…
Pour le pire, ensuite.
Tout d’abord, le cloud, c’est cher. Parce que là où vous n’aviez que de l’infrastructure à gérer dans vos propres datacenter, là, vous payerez en plus tous les coûts cachés inhérents au bon fonctionnement du cloud : une part des frais de fonctionnement, les ingénieurs le marketing, etc. Ce sont des coûts que vous payez sans doute déjà dans votre entreprise. Donc si vous décidez juste de faire du 1 pour 1 sur le cloud, sans rien modifier, tout en ayant en interne les compétences pour faire ce que vous demandez au cloud de faire, celà vous coûtera plus cher, pour rien.
Ensuite, passer par un provider de cloud implique une perte sur la maîtrise de ses données. On passe nécessairement par une obligation de confiance envers le prestataire. Celà peut être très problématique dans de nombreux cas. Si vous hébergez des données qui ne vous appartiennent pas, vous serez tenus responsables de toute fuite ou indélicatesse de votre prestataire. De nombreuses question se posent sur les providers de cloud américains, qui trustent le marché, tenus de divulguer à leur gouvernement leur données sans réserve, via le “patriot act”, puis le “cloud act”.
Google et Amazon tentent de contourner ces règles en s’installant en Irlande, mais il est compliqué de savoir jusqu’à quel point leurs intérêts aux états-unis peuvent servir de pression, et jusqu’où ira leur loyauté à l’oncle Sam.

Mais le principal risque, à mon sens, ne vient pas du cloud lui-même. C’est celui qui l’utilise qui est la plupart du temps le maillon faible.
Le cloud offre de nombreux outils très puissants pour développer des activités à des échelles que les petites entreprises ne pouvaient pas imaginer être capables d’atteindre avant l’arrivée des clouds. L’abstraction créée par les providers permet à tout un chacun de gérer des infrastructures puissantes et étendues sans pour autant avoir les compétences nécessaires pour les monter en dehors de ce cadre. On ne compte plus le nombre de sociétés qui se sont montées avec des développeurs à qui on a donné les clés d’un cloud et qui ont dû prendre en charge un travail d’administrateurs sans en avoir les compétences. Il en découle souvent de grosses failles de sécurité, de gros problèmes de design d’infra et des coûts non maîtrisés. Une simple instance démarrée pour des tests et oubliée pendant un mois peut faire une facture de plusieurs milliers d’euros. Un développeur qui met dans un serveur la même quantité de ressources que ce qu’il a sur son poste et vous multipliez la facture par 6, 8 ou 10 par rapport au ressources nécessaires.

Github a mis en place la recherche automatique de clés d’API amazon dans les dépôts publics de ses utilisateurs. Des dev peu au fait des questions de sécurité y poussent régulièrement tout ce qu’il faut à des pirates pour prendre le contrôle de leur comptes de cloud et démarrer en masse des instances pour miner des cryptomonnaies au frais de leur entreprise, voire à leur propre frais.
Le but n’est évidemment pas de leur jeter la pierre. Ce n’est pas leur métier. C’est le plus gros risque du cloud, selon moi. Il donne l’illusion que l’on maîtrise nos coûts et nos risques alors qu’il n’en est rien. Sans connaissance du métier de l’hébergeur, on est dépendant de ce qu’il voudra bien nous offrir, en nous faisant miroiter les réussites de startups connues, qui sont parties de rien et qui sont devenues des multinationales.
En conclusion
Le cloud peut s’avérer un merveilleux outils pour développer des activités à grande échelle. Mais le fait qu’il facilite la maintenance d’une infrastructure mondialisée ne dispense pas d’avoir une connaissance profonde de ce qu’il fait pour nous. Il ne faut pas non plus oublier que nos données ne sont jamais mieux protégée que quand on a la maitrise des flux dans lesquels elles transitent. Les enjeux géopolitiques peuvent également s’inviter dans le débat lorsqu’on a des données sensibles à traiter. Mais si on est pleinement conscients des forces et faiblesses du système et qu’on sait en tirer partie, les possibilités sont infinies.
Mais un chose est sûre. On ne part pas sur le cloud parce que c’est cool.