Comprenez le risque lié aux politiques. Posez vos questions sur les politiques en langage courant. Demander une démo →
Published:
Pourquoi tout le monde automatise dans le cloud
by FireMon
Si vous m’entendez parler du cloud, il est pratiquement certain que je finirai par dire
« La sécurité du cloud commence par l’architecture et se termine par l’automatisation. »
Je me répète, c’est le moins qu’on puisse dire. Ce n’est pas une formule creuse : elle repose sur près de dix ans de travail intensif dans le cloud avec des organisations de toutes tailles. La constante que j’observe encore et encore, c’est qu’à partir d’une certaine échelle, les organisations commencent à automatiser leurs opérations. Et chaque année, ce seuil intervient plus tôt dans leur parcours cloud.
Je le sais parce que je l’ai d’abord vécu, puis parce que j’ai vu chaque organisation avec laquelle j’ai travaillé, échangé ou que j’ai simplement croisée suivre exactement le même chemin.
Nous commençons tous par gérer les choses manuellement dans la console.
Rien d’étonnant, puisque c’est là que nous créons notre compte et commençons à utiliser le cloud. C’est le meilleur endroit pour apprendre, et la plupart des consoles proposent des assistants, des instructions et d’autres conseils pour nous accompagner au démarrage. Mais cela ne tient pas longtemps à l’échelle, en raison de la complexité croissante à mesure que nous construisons des environnements plus complexes, ou de multiples copies d’environnements simples. Cliquer dans une interface utilisateur web pour des tâches répétitives n’est pas très efficace, et devient de plus en plus chronophage et frustrant. Cela ne tient pas uniquement aux mauvaises interfaces des fournisseurs de cloud (et soyons honnêtes, certaines sont assez épouvantables) : si l’on y réfléchit, nous essayons de gérer concrètement chaque aspect d’un centre de données depuis une seule interface web. Ça. Ne. Peut. Pas Marcher.
D’où l’étape suivante, tout à fait naturelle…
Passer aux interfaces en ligne de commande, mais celles-ci se heurtent à une complexité équivalente. Faire fonctionner un centre de données implique une multitude d’éléments mobiles rien que pour le provisionnement initial, sans parler des opérations courantes. S’il est facile de retenir les commandes que l’on utilise en permanence, personne ne peut réellement garder en tête l’ensemble à cette échelle. Et cela revient toujours à taper les mêmes commandes encore et encore pour les mêmes tâches.
Et tout cela suppose que vous soyez une seule personne gérant un seul compte, alors que même dans une petite start-up, vous devez gérer des tâches répétitives sur plusieurs comptes.
Dans le même temps…
Les équipes de développement travaillent déjà directement avec les API pour intégrer les différentes briques du cloud dans les applications. Cela commence probablement de façon aussi simple que la gestion de quelques buckets S3, mais s’étend rapidement à la gestion de tout, des bases de données à l’échelle mondiale aux moteurs de machine learning. C’est ainsi que l’on intègre le PaaS dans ses applications et que l’on tire une partie de la valeur la plus essentielle du cloud.
Les équipes de développement utilisent aussi rapidement des outils comme Terraform et CloudFormation pour définir leur infrastructure sous forme de code. Elles peuvent ainsi construire leurs environnements de dev/test/prod et maintenir la cohérence de l’ensemble.
Rapidement (bon, cela prend parfois quelques années), les équipes sécurité et opérations se mettent elles aussi à exploiter l’automatisation, généralement dans trois domaines principaux.
- L’utilisation de l’infrastructure as code (IaC) pour construire de nouveaux environnements et s’intégrer aux pipelines de déploiement. L’IaC permet de bâtir des environnements cohérents et reproductibles et de provisionner nos exigences de base en matière de sécurité et d’exploitation. Les développeurs s’en servent également pour définir leurs environnements de dev/test/prod. Tout le monde y gagne, et chaque entreprise avec laquelle j’ai travaillé finit par l’adopter très vite.
- L’automatisation de l’évaluation et de la surveillance. Le problème central est de conserver la visibilité sur des ressources cloud disparates, même lorsqu’elles se trouvent toutes dans le même compte. Les consoles peuvent montrer beaucoup de choses, mais l’automatisation permet de montrer ce qui compte pour vous. C’est en réalité un ÉNORME avantage par rapport à l’infrastructure traditionnelle, où nous dépensons des sommes ridicules simplement pour faire des choses comme suivre les serveurs dans le centre de données. Une opération qui, dans le cloud, se réduit à un appel d’API.
- L’automatisation des opérations. Dès que vous commencez à repérer des écarts, vous voulez les corriger. À cela s’ajoute un large éventail de workflows qui peuvent naturellement être automatisés. Alors que ce niveau d’automatisation est financièrement prohibitif dans la plupart des infrastructures traditionnelles, quand il est seulement possible, il constitue un prolongement naturel du travail dans le cloud.
L’un des atouts clés du cloud est la ségrégation…
Isoler des environnements avec uniquement les ressources dont ils ont besoin, afin que les développeurs puissent avancer vite sans marcher sur les pieds des autres. Mais cela conduit rapidement à un besoin de processus et de gestion reproductibles, et comme les API sont là, à portée de main, l’automatisation s’impose naturellement.
Un enfant rampe, puis marche, puis court, même s’il grandit dans une chambre d’isolement sans stimuli extérieurs (nous vous promettons que nous n’avons pas essayé… vraiment). C’est une progression naturelle. Il en va de même pour l’automatisation du cloud : c’est tout simplement une exigence inhérente à l’exploitation de quoi que ce soit à grande échelle dans le cloud, et tout le monde y arrive un jour. Toute la difficulté est d’y arriver efficacement.