Cloud privé 101 : avancez au rythme de votre entreprise

Introduction

Alors que le cloud transforme le développement et le déploiement des applications, permettant aux organisations de gagner en flexibilité, d’automatiser leurs processus et de réduire les délais de mise sur le marché, certaines questions majeures restent en suspens. L’un des enjeux les plus importants auxquels une organisation doit répondre est de savoir comment exploiter au mieux les outils plus intelligents et l’évolutivité illimitée qu’offre le cloud. Pour tirer parti des avantages du cloud, les entreprises peuvent notamment déployer leur propre cloud privé, un modèle informatique qui favorise l’agilité tout en leur permettant de garder le contrôle de leur infrastructure et de mieux sécuriser leurs applications et leurs données.

Les avantages d’un cloud privé

Parmi les principaux avantages du déploiement d’un cloud privé figurent le libre-service de l’infrastructure, l’évolutivité et la mutualisation. Examinons-les brièvement avant d’étudier plus en détail le fonctionnement d’un cloud privé et les autres avantages qu’il peut apporter à votre entreprise.

Le concept de libre-service est l’un des principaux moteurs de l’adoption du cloud privé. Le libre-service permet aux organisations de déployer des applications à l’aide de l’infrastructure immédiatement disponible, sans avoir à installer de matériel physique supplémentaire. L’équipe peut ainsi demander des ressources et les faire provisionner immédiatement, sans intervention manuelle.

Une autre caractéristique essentielle des infrastructures de cloud privé est leur évolutivité. Cela signifie que l’application peut être conçue de sorte que, lorsqu’elle a besoin de ressources supplémentaires, telles que des ressources de calcul ou de stockage, celles-ci soient immédiatement — et souvent automatiquement — disponibles afin d’augmenter sa capacité.

Enfin, la mutualisation signifie que l’application peut fonctionner comme si elle était la seule à utiliser les ressources qui lui sont allouées. Autrement dit, il n’est pas nécessaire de coordonner les modifications apportées aux ressources avec les autres équipes de développement d’applications. L’accès à ces ressources permet aux équipes de développement d’applications de procéder par itérations et d’effectuer des modifications indépendamment les unes des autres, ainsi que de l’équipe chargée de l’infrastructure.

Provisionnement des applications : centre de données ou cloud privé

Le concept de provisionnement en libre-service, au cœur du cloud privé, signifie que les ressources d’infrastructure sont disponibles à la demande, car elles sont abstraites ou virtualisées. Lorsque les équipes de développement peuvent provisionner elles-mêmes leurs ressources de calcul, de stockage et de réseau via des interfaces graphiques et des API, elles peuvent innover et développer plus rapidement, indépendamment du rythme de provisionnement de l’infrastructure physique. En dissociant les ressources virtuelles des ressources physiques, les outils d’automatisation permettent aux équipes de développement de gagner en agilité.

Déploiement dans le centre de données

Comparez cette approche au processus de déploiement classique des centres de données traditionnels, qui nécessite beaucoup de temps et de main-d’œuvre (comme illustré à la figure 1). Le responsable d’une application recueille les exigences et collabore avec un analyste informatique afin de modifier une application existante ou d’en créer une nouvelle. Une fois le développement et les tests terminés, un analyste prépare un ensemble de modifications à apporter à l’infrastructure. La plupart de ces modifications concernent des ressources partagées, telles que les serveurs, les instances de système d’exploitation, les instances d’application, les pare-feu et le stockage. Afin de limiter les effets indésirables des modifications, un comité consultatif des changements (Change Advisory Board, CAB) est chargé de gérer et d’approuver toutes les modifications apportées à l’infrastructure. Une fois celles-ci approuvées, une équipe d’exploitation les met en œuvre.

Cependant, de nombreux services d’exploitation informatique doivent gérer des centaines, voire des milliers de demandes de changement simultanées en attente, dont le CAB doit assurer le suivi tout en veillant à éviter tout effet indésirable. Prenons l’exemple d’un ensemble de pare-feu qui approchent de leur fin de vie et doivent donc être remplacés par des modèles plus récents avant la fin de leur prise en charge. Parallèlement, un autre groupe fait évoluer une application afin qu’elle utilise un autre ensemble de protocoles, car un fournisseur externe met fin à la prise en charge des protocoles existants, ce qui nécessite de modifier la configuration des pare-feu. Dans le même temps, un client professionnel modifie ses adresses IP, ce qui impose également des changements de configuration des pare-feu. Par mesure de sécurité, ces trois changements (remplacement des pare-feu, modification des protocoles de l’application et changement des adresses IP du client) ne doivent pas être mis en œuvre simultanément. Le CAB est chargé de coordonner ce type de changements afin de garantir qu’ils sont sûrs et efficaces. Bien qu’il contribue à assurer la sécurité de l’organisation, le CAB peut également constituer un goulot d’étranglement pour le déploiement des changements.

Figure 1 : processus de déploiement type d’un centre de données

Déploiement dans le cloud privé

Les environnements de cloud privé peuvent améliorer ce processus de changement grâce à la virtualisation des ressources de calcul, du réseau et du stockage. Une fois tous les composants virtualisés, il suffit de mettre à jour le composant virtuel, et non les composants physiques, pour effectuer des changements. Les composants étant virtualisés et donc indépendants, une application peut être modifiée ou ajoutée sans incidence sur les autres applications. Le provisionnement des composants ne nécessite plus d’intervention physique ; seules les ressources virtuelles doivent être modifiées. Les outils d’automatisation peuvent même permettre aux équipes de développement de provisionner elles-mêmes leurs ressources sans faire appel à l’équipe chargée de l’infrastructure.

Provisionnement en libre-service

Le provisionnement en libre-service (ou provisionnement logiciel) permet de créer et de supprimer des instances d’application, ainsi que tous les services de sécurité et de mise à disposition des applications fournis par un contrôleur de mise à disposition des applications (ADC), sans intervention de l’équipe chargée de l’infrastructure (comme illustré à la figure 2). Chaque équipe pouvant travailler de manière autonome, il n’est pas nécessaire de coordonner les changements par l’intermédiaire d’un comité consultatif des changements (CAB). Les pratiques de déploiement sont plutôt régies par des politiques qui permettent aux équipes d’obtenir leur propre infrastructure virtuelle auprès de l’équipe des opérations, puis de déployer à leur propre rythme.

Pour automatiser davantage le processus de provisionnement en libre-service, l’ensemble des ressources, notamment les paramètres de calcul, de réseau, de stockage et d’ADC, peut être défini sous forme de modèle dans un fichier texte pouvant être stocké dans un référentiel de code source. Un modèle contient les définitions d’un ensemble de ressources et de leurs configurations, appelé une pile. Cette approche d’« infrastructure en tant que code » garantit que tout déploiement peut être facilement reproduit. L’utilisation de modèles permet non seulement d’accélérer les déploiements et de réduire les erreurs, mais aussi de simplifier les tests, puisque la pile peut être évaluée comme un tout dans un environnement de test.

Figure 2 : processus de déploiement d’un cloud privé

Évolutivité accrue

L’étape suivante pour renforcer l’automatisation porte sur l’élasticité : le provisionnement logiciel automatique des ressources, sans aucune intervention humaine. Si l’application peut évoluer sur plusieurs instances, leur nombre peut être augmenté ou réduit automatiquement en fonction de la charge (voir la figure 3 ci-dessous). Grâce à l’élasticité, le provisionnement logiciel atteint un niveau où les ressources peuvent être provisionnées et supprimées automatiquement à l’aide d’API. Tout comme un matériau élastique s’étire et se rétracte pour s’adapter aux besoins de la personne qui le porte, les ressources élastiques augmentent et diminuent pour répondre aux besoins de l’application. Cette flexibilité améliore votre efficacité opérationnelle et vous permet de garantir que vos applications offrent toujours des performances optimales, sans avoir à surprovisionner les ressources.

Figure 3 : élasticité du cloud privé

Multilocation flexible

Rappelons que l’un des avantages d’un cloud privé est la possibilité d’effectuer des changements rapidement et indépendamment des autres équipes. Les environnements de centres de données traditionnels présentent de nombreuses interdépendances entre les composants et les ressources. Toutefois, dans un cloud privé, toutes les ressources peuvent être dédiées à une seule application, ce qui permet à l’équipe chargée de cette application d’en prendre entièrement le contrôle sans craindre d’avoir un impact sur les autres applications.

La virtualisation des ressources de calcul, de réseau, de stockage et d’ADC rend cela possible. L’environnement cloud donne l’impression que les ressources sont immédiatement disponibles et dédiées à l’application. Il n’est pas nécessaire de faire appel à un CAB ni de coordonner les configurations avec d’autres équipes et applications. La mutualisation permet à chaque équipe applicative de gérer sa propre application et ses ressources au rythme adapté aux besoins de l’entreprise, indépendamment du rythme et des initiatives des autres équipes applicatives.

Le rôle de l’ADC dans un cloud privé

L’ADC est un composant essentiel de toute pile technologique, car le déploiement d’une application soulève plusieurs problématiques qui ne sont pas nécessairement prises en compte par les développeurs de l’application. Ces questions transversales comprennent notamment :

  • Quelle suite de protocoles TLS convient aux utilisateurs finaux et au niveau de sécurité attendu ?
  • Comment les attaques DDoS seront-elles détectées et atténuées ?
  • Quelle stratégie d’équilibrage de charge est optimale ?
  • Comment les logiciels malveillants côté client seront-ils gérés ?
  • Quelle est la meilleure façon de prévenir les attaques par injection SQL et par script intersites (XSS) ?
  • Comment les utilisateurs seront-ils identifiés et authentifiés ?

Pour répondre à ces questions, il faut souvent faire appel à une expertise métier extérieure à l’équipe chargée de développer le code de l’application. Grâce à des modèles, une définition de ressource ADC peut être créée par des experts du domaine, tels que les membres de l’équipe NetOps informatique traditionnelle, qui peuvent mettre à profit leur expertise en matière d’ADC. Les développeurs d’applications peuvent ainsi se concentrer pleinement sur la création de leurs applications. Une fois créés, les modèles peuvent être utilisés par chaque équipe de développement d’applications pour déployer une pile dans le cadre de chaque application.

Quel type de cloud privé convient le mieux à mon organisation ?

Il existe toute une gamme d’environnements de cloud privé, des solutions entièrement open source aux systèmes propriétaires. Le choix le mieux adapté à votre organisation dépend de plusieurs facteurs, notamment du budget, de l’expertise interne en matière de gestion d’un environnement de cloud privé, des enjeux d’intégration et de maintenance, ainsi que de la capacité à s’adapter au changement.

Comme leur nom l’indique, les solutions entièrement open source peuvent être déployées sans aucun coût initial d’acquisition de licence, hormis les coûts liés au matériel et à la main-d’œuvre (temps). OpenStack est l’un des principaux environnements de cloud privé open source. Il peut être téléchargé et installé gratuitement. La difficulté réside bien entendu dans le fait que l’équipe chargée de son installation et de sa maintenance doit acquérir et conserver une expertise d’OpenStack, qui a rapidement gagné en maturité, mais reste complexe à déployer. Il en va de même pour toute solution entièrement open source : votre organisation doit maîtriser la technologie afin de l’utiliser le plus efficacement possible.

Afin d’alléger la charge liée au maintien de compétences en interne (et de réduire les risques associés à l’absence de telles compétences), certaines entreprises proposent une assistance pour les projets open source. Ces offres commerciales ont un coût, qui peut être compensé par le fait que le fournisseur veille à ce que les questions d’intégration, de test et de validation aient été traitées et qu’un interlocuteur soit disponible en cas de problème.

Par ailleurs, plusieurs entreprises proposent des plateformes propriétaires de cloud privé. Celles-ci fournissent des piles entièrement intégrées et testées, assorties d’un support dédié, mais elles coûtent généralement plus cher que les solutions reposant sur OpenStack. Toutefois, si votre organisation connaît déjà la technologie et l’interface du fournisseur, le recours à l’une de ces offres propriétaires peut réduire la courbe d’apprentissage.

Enfin, certains fournisseurs proposent des services hébergés, permettant à une organisation de tirer parti d’un cloud privé open source (ou de solutions propriétaires) sans avoir besoin de matériel ni d’espace dans un centre de données. Ces offres sont généralement les plus coûteuses, mais nécessitent le moins de ressources internes.

En plus de rechercher une solution de cloud privé offrant les fonctionnalités adéquates, les organisations doivent veiller à choisir une solution proposant un niveau d’assistance approprié. La position de votre organisation sur l’échelle des coûts et de l’expertise interne peut vous aider à sélectionner l’offre qui répond le mieux à vos besoins.

Figure 4 : offres de cloud privé

Conclusion

Un cloud privé permet aux équipes de développement d’itérer sans dépendre de la vitesse de provisionnement de l’infrastructure et de mieux répondre aux besoins de l’entreprise. Les dépendances entre les équipes peuvent être réduites grâce à la mutualisation et au provisionnement logiciel des ressources virtuelles. Des modèles permettent de déployer une pile applicative complète — comprenant les ressources de calcul, le réseau, le stockage et l’ADC — sous la forme d’un package complet et reproductible. En bref, un cloud privé permet aux équipes de l’organisation d’avancer au rythme de l’entreprise.

Il existe toute une gamme d’offres de cloud privé, avec des coûts et des niveaux d’expertise interne requis variables. Quel que soit le cloud que vous déployez, le doter des services appropriés et trouver le juste équilibre entre coûts et expertise doit figurer parmi vos principales priorités.

Découvrez comment une architecture de cloud privé peut aider votre organisation à gagner en agilité et en efficacité tout en gardant le contrôle de son infrastructure sur la page Solutions cloud | Cloud privé.

PUBLIÉ LE 6 JUIN 2017