The Doppler Quarterly (FRANÇAIS) Hiver 2018 | Page 26

Terraform est un outil d ’ automatisation intéressant pour les équipes qui répartissent l ’ exécution de leurs charges de travail entre dans plusieurs clouds ou effectuent des migrations d ’ un environnement virtuel à l ’ autre . Dans le dernier cas d ’ utilisation qui nous a été présenté , l ’ application possédait une empreinte à la fois dans des charges de travail AWS ( Route 53 , S3 , etc .) et IAAS exécutées sur Azure .
À un niveau supérieur , la mise en œuvre de Terraform exige la conformité des outils Hashicorp d ’ InfoSec aux normes de sécurité requises ( PCI , NIST , etc .), ainsi qu ’ une bonne expertise de leur utilisation . En retour , il est possible de préserver la modularité du code , la gestion de l ’ état des ressources Azure et les bases de codes similaires afin de gérer à la fois AWS et Azure . Alors que les modèles ARM fournissent des structures prêtes à l ’ emploi pour le déploiement des ressources Azure , il n ’ existe aucune méthode aisée pour partager les états des ressources Azure déjà déployées . Ce point est important notamment dans les déploiements à grande échelle impliquant des infrastructures réparties en plusieurs environnements et plusieurs régions . Il peut par exemple exister des cas où vous avez besoin d ’ identifiants de sous-réseaux situés dans l ’ ouest des États-Unis alors que vous déployez des NSG sur la côte est . Avec l ’ inclusion des espaces de travail , il est désormais possible de partager des états de façon fiable entre une pluralité de régions ou de niveaux . Et pour ce qui est des ressources Azure non prises en charge , l ’ interface Azure CLI peut être intégrée à des blocs de ressources Terraform .
Utilisation de Terraform avec Consul et Vault
Les états de Terraform peuvent être stockés en local , dans l ’ espace de stockage Azure Blob ou dans Consul . Consul ajoute un traitement supplémentaire pour son installation et ses configurations , mais il fournit également des magasins de stockage d ’ états au format clé / valeur , ainsi qu ’ un mécanisme de blocage des fichiers d ’ état lorsque plusieurs déploiements agissent simultanément sur le même fichier . Cette capacité est d ’ une valeur inestimable dans les scénarios multi-utilisateurs . De plus , Consul vous permet de synchroniser les états entre plusieurs régions . En tant que magasin de valeurs de clés , Consul sert également à stocker les données applicatives et autres informations de configuration , y compris dans le cas des charges de travail réparties entre plusieurs lieux géographiques .
Vault est un magasin secret qui s ’ appuie sur Consul en tant qu ’ architecture dorsale pour stocker les clés , données confidentielles et autres , de manière à transmettre de façon sécurisée les informations d ’ identification des administrateurs et les informations relatives aux chaînes de connexion à l ’ interface CLI de Terraform ou d ’ Azure . Vault dispose en outre de fonctionnalités évoluées telles que CA , la couverture multi-régionale , des secrets dynamiques et une intégration aisée avec Terraform . Les futures itérations incluront le coffre-fort de clés Azure Key Vault en guise de remplacement possible de Vault .
Journalisation et surveillance
Pour répondre aux exigences de sécurité , toutes les activités exécutées au sein de l ’ infrastructure Azure doivent être journalisées . Les outils de journalisation et de suivi tiers sont assez matures dans l ’ espace d ’ AWS , mais dans le cas d ’ Azure , des transitaires personnalisés sont nécessaires pour permettre la journalisation , notamment en ce qui concerne la surveillance des journaux cloud natifs , tels que ceux d ’ Azure Activity , Azure AD , etc . Pour simplifier l ’ équation , le choix s ’ est porté sur Azure Log Analytics en raison de sa prise en
24 | THE DOPPLER | HIVER 2018