Accéder au contenu
Développeurs et professionnels

Comment intéresser les Cloud natifs à OpenStack

7 décembre 2021
https://storage.googleapis.com/gweb-cloudblog-publish/images/GCP_Anthos_migrate.max-2600x2600.jpg
Shabir Abdul Samadh

Developer Relations Engineer

Essayer GCP

Les nouveaux clients peuvent explorer et évaluer Google Cloud avec des conditions exceptionnelles.

Essayer

Dans ce billet, je vous propose d’expliquer comment accélérer la transformation de vos applications en profitant d’Anthos directement installé sur des serveurs physiques (bare-metal) afin d’exécuter OpenStack. Je reviendrai également sur les guides «Deploy Anthos on bare metal on OpenStack » (Déployer Anthos en bare metal installé sur OpenStack) et « Configure the OpenStack Cloud Provider for Kubernetes » (Configurer Openstack Cloud Provider pour Kubernetes) que nous avons récemment publiés.

Introduction à OpenStack

OpenStack est une plateforme open-source conçue pour faciliter la gestion de grands pools de ressources, qu’ils s’agissent de calcul, de stockage ou de réseau. La solution propose un ensemble d’API uniformisées ainsi qu’un tableau de bord interactif pour gérer et contrôler les ressources. Si vous disposez de vos propres serveurs physiques, vous pouvez installer OpenStack dessus et exposer ainsi ces ressources matérielles, aussi bien en interne à d’autres équipes qu’en externe à des tiers, pour leur permettre de créer des VMs, des loadbalancers (équilibreurs de charge) ou toute autre ressource disponible sur les serveurs. Dit autrement, vous pouvez voir OpenStack comme un équivalent à la couche logicielle exécutée sur les serveurs des datacenters de Google qui permet aux utilisateurs de provisionner des ressources de calcul et des services via la console cloud de Google.

Utilisez-vous OpenStack ?

Bon nombre d’entreprises ayant investi dans l’acquisition de leurs propres équipements matériels (serveurs et réseau) ont ressenti le besoin d’avoir une plateforme uniformisée pour gérer leur infrastructure. Elles ont donc cherché un moyen de gérer et exposer facilement les ressources disponibles de sorte à les rendre facilement consommables par les différentes équipes IT. Apparue dès 2010, OpenStack était une des rares solutions proposées aux entreprises pour les aider à gérer ainsi leur infrastructure. OpenStack prenait en charge toute la complexité de la planification, de la gestion du réseau et du stockage dans un environnement « bare-metal ».

Ainsi, nombre de nos clients sont des utilisateurs de longue date d’OpenStack. Si votre organisation fait partie de ces entreprises qui ont investi dans leurs propres équipements matériels (serveurs, réseau et/ou stockage), il y a de fortes que chances que vous utilisiez OpenStack.

Introduction à « Anthos on Bare Metal »

Anthos est la solution de Google conçue pour vous aider à gérer l’exécution de vos clusters Kubernetes partout : sur Google Cloud, en interne et sur les clouds d’autres fournisseurs.

Anthos vous permet de moderniser vos applications plus rapidement tout en apportant de la cohérence entre tous vos environnements. « Anthos on bare metal » est la déclinaison d’Anthos qui vous permet d'exécuter notre plateforme cloud directement sur vos propres serveurs physiques, gérés et maintenus par vos administrateurs.

En adoptant cette solution, vous pouvez continuer à capitaliser sur vos investissements en matériel, en plateformes et en infrastructure réseau pour héberger vos clusters Kubernetes tout en exploitant les avantages d’Anthos : gestion centralisée, flexibilité accrue et agilité des développeurs. Et ce, quel que soit le niveau d’exigence de vos applications.

Par mesure de simplification, nous désignerons ci-après par « clusters Anthos » les clusters Kubernetes exécutés/gérés par Anthos.

Anthos on Bare Metal peut-il transformer l’existant OpenStack en workloads cloud native ?

La réponse courte est… oui !

Nos clients nous ont fait comprendre qu’ils tenaient à leurs investissements dans leurs propres datacenters et dans leurs flottes de serveurs physiques. Et cela pour plusieurs raisons : exigences liées à la localisation des données, meilleur contrôle sur les ressources, attachement aux investissements CAPEX sans oublier la conservation des compétences existantes qui maitrisent parfaitement leurs environnements.

Une ou plusieurs de ces raisons, voire d’autres, peuvent s’appliquer également à votre entreprise.

Toutefois, la tendance est à la containerisation et au développement d’applications cloud natives. C’est pourquoi nous souhaitons vous aider à exploiter ce levier de modernisation de vos applications tout en vous permettant de continuer à les exécuter sur vos environnements OpenStack.

Anthos a été précisément pensé pour ça. Anthos on Bare Metal cherche à insuffler l’essentiel de Google Cloud au cœur de vos déploiements OpenStack. Vous pouvez ainsi continuer à exécuter vos workloads actuels sur votre infrastructure OpenStack optimisée tout en modernisant la couche applicative avec les fonctions clefs de Google Cloud, tels les services mesh, la gestion centralisée des configurations, la surveillance et les alertes, etc.

Tandis qu’OpenStack vous aide à gérer vos ressources sous-jacentes, Anthos on Bare Metal vous permet de gérer l’exécution des clusters Kubernetes sur votre infrastructure OpenStack existante. Afin de vous aider dans la mise en œuvre d’une approche « Anthos on Bare Metal sur OpenStack », nous avons récemment publié deux guides.

anthos_network

Installer Anthos on Bare Metal sur OpenStack

Le guide «Deploy Anthos on bare metal on OpenStack » (Déployer Anthos on Bare Metal sur OpenStack) vous accompagne dans l’installation d’Anthos on Bare Metal sur un environnement OpenStack existant, étape par étape. Il part du principe que vous disposez d’un environnement OpenStack similaire à celui présenté dans le diagramme suivant et vous guide dans l’installation d’un cluster hybride sur deux machines virtuelles OpenStack.

anthos_openstack

Notez qu'un réseau OpenStack interne de type "tenant" est créé pour accueillir l’univers Anthos, formant un ilot sous-jacent au réseau OpenStack principal (le Provider Network de votre déploiement OpenStack). Ce réseau « tenant » sert de connexion niveau 2 (du modèle ISO) pour les machines virtuelles que nous utilisons pour installer Anthos sur des machines physiques. En effet, cette configuration comporte trois machines virtuelles :

  1. Une station d’administration : VM à partir de laquelle est géré le processus d’installation. Dans le cadre du processus d’installation d’Anthos on Bare Metal, un cluster de démarrage (bootstrap cluster) est d’abord créé sur la station d’administration et sera supprimé une fois l’installation terminée.
  2. Un Control Plane Node : VM à partir de laquelle sont exécutés les composants du Control Plane, autrement dit du poste de pilotage de Kubernetes.
  3. Un Worker Node : VM sur laquelle sont exécutés les workloads applicatifs.

Combinés, le Control Plane Node et le Worker Node forment les fondations du cluster Anthos on Bare metal.

Nous avons également déployé Octavia, le load balancer d’OpenStack, sur le réseau des VMs (le tenant network). Le load balancer est également connecté au Provider Network via un routeur.

Cette configuration du load balancer est importante pour exécuter la partie suivante de ce guide d’installation dans laquelle nous expliquons comment configurer le fournisseur cloud OpenStack pour Kubernetes.

En configurant OpenStack Cloud Provider pour Kubernetes sur notre cluster Anthos, nous pouvons exposer les services Kubernetes au-delà du Tenant Network (autrement dit hors de l’ilot Anthos). En effet, une fois le fournisseur configuré, chaque fois que vous créerez un service Kubernetes de type LoadBalancer, Octavia assignera une adresse IP à ce service, ce dernier devenant alors accessible depuis le réseau externe (le Provider Network).

Afin de vous permettre de suivre ces deux guides plus facilement, nous avons publié toutes les briques requises dans notre repository publique anthos-samples.

Selon votre existant, vous pouvez suivre le processus à partir d’une des quatre étapes suivantes et continuer ensuite jusqu’à la fin : 

  • Vous ne possédez pas d’environnement OpenStack : commencez par suivre le guide « Deploy OpenStack Ussuri on GCE VM » (Déployer OpenStack Ussuri sur GCE VM) pour assembler un environnement OpenStack s’exécutant sur une VM Google Cloud Engine.
  •  Si vous disposez déjà d’un déploiement OpenStack sans que ce dernier soit assemblé comme montré dans le schéma vu plus haut : commencez par suivre le guide “Provision the OpenStack VMs and network setup using Terraform” (Provisionner des VM OpenStack et configurer le réseau à l’aide de Terraform) afin d’obtenir une configuration conforme à celle du diagramme. Ce guide automatise le processus de mise en place en utilisant Terraform. Ainsi, vous pouvez facilement nettoyer votre environnement une fois cette configuration réalisée.
  • Vous possédez votre propre environnement OpenStack avec une configuration similaire à celle du diagramme :  vous pouvez directement passer au guide «Deploy Anthos on bare metal on OpenStack » (Déployer Anthos on Bare Metal sur OpenStack).
  • Vous possédez votre propre environnement OpenStack avec une configuration similaire à celle du diagramme ainsi qu’Anthos on Bare Metal déjà installé : suivez le guide « Configure the OpenStack Cloud Provider for Kubernetes » (Configurer OpenStack Cloud Provider pour Kubernetes) afin d’exposer les services Kubernetes hors du réseau « tenant » en utilisant OpenStack Octavia Load Balancer.

Si vous devez commencer par le début pour ensuite suivre les quatre étapes, je vous recommande de vous rendre sur le repository GitHub et de suivre le guide “Getting started”.  Il ne présuppose pas d’environnement OpenStack existant et fournit tous les éléments nécessaires pour accéder aux services fonctionnant dans un cluster Anthos – sur une VM OpenStack – au cœur d’OpenStack – à au sein d’une VM Google Compute Engine VM – dans Google Cloud. Oui, ça en fait des couches ! :)

Publié dans