OpenStack, qui devient rapidement la plate-forme cloud dominante pour la fourniture d'infrastructures en tant que service (IaaS), alimente désormais les clouds privés, publics et privés gérés. Alors que les clouds OpenStack hébergent de plus en plus applications de production critiques, les services de distribution application avancés pour les couches 4 à 7 deviennent essentiels. Ces services offrent une sécurité, une mise à l’échelle et une optimisation supplémentaires pour garantir que ces applications critiques restent sécurisées, rapides et disponibles. F5 est le principal fournisseur de services avancés de distribution application dans les centres de données, les clouds publics et privés, y compris ceux optimisés par OpenStack. Les services de distribution application F5 peuvent être conçus dans un cloud OpenStack, et une réflexion préalable sur les options disponibles est utile pour planifier efficacement une architecture et un déploiement OpenStack.
OpenStack est une plate-forme logicielle open source utilisée pour fournir du cloud computing. OpenStack, qui a débuté comme un projet commun entre la NASA et RackSpace Hosting, est actuellement géré par la fondation OpenStack avec pour mandat de promouvoir le logiciel et la communauté OpenStack.
Plusieurs organisations commerciales produisent désormais leur propre distribution OpenStack ou proposent des services supplémentaires tels que le support, le conseil ou des appareils préconfigurés.
OpenStack est composé d'un certain nombre de composants qui fournissent les différents services nécessaires à la création d'un environnement de cloud computing. Ces composants sont largement documentés ailleurs. Il existe cependant un certain nombre de modules qui sont directement pertinents pour un déploiement F5 OpenStack.
Fonction | Composant | Description |
---|---|---|
Informatique | Nova | Gère des pools de ressources informatiques dans diverses configurations de virtualisation et de systèmes nus |
Mise en réseau | Neutron | Gère les réseaux, les superpositions, l'adressage IP et les services réseau application tels que l'équilibrage de charge |
Orchestration | Chaleur | Orchestre d'autres composants OpenStack à l'aide de modèles et d'API |
Un élément fondamental d’OpenStack est l’ API RESTful , grâce à laquelle les composants d’infrastructure peuvent être configurés et automatisés. Dans de nombreux cas d’utilisation d’OpenStack, tels que la création d’un cloud multi-locataire en libre-service ou la création d’une infrastructure pour prendre en charge les pratiques DevOps, l’orchestration pilotée par API est essentielle. La capacité à réduire les délais de déploiement de quelques semaines à quelques minutes, ou à déployer des centaines de services par jour, est souvent la force motrice du passage à une plateforme cloud. Pour que cela soit efficace, tous les composants de l’infrastructure doivent faire partie du cadre d’automatisation. De nombreuses applications nécessiteront des services de distribution application avancés (tels que la sécurité des application ou le contrôle d'accès) pour être véritablement prêtes pour la production. Il est donc essentiel que les services de distribution application s'intègrent aux outils d'orchestration et de provisionnement d'OpenStack.
Le multi-hébergement est un concept important dans OpenStack. Dans OpenStack, un groupe d’utilisateurs est appelé projet ou locataire. (Les deux termes sont interchangeables.) Des quotas peuvent être attribués aux projets pour des ressources telles que le calcul, le stockage ou les images. L’un des points de décision les plus importants lors de l’élaboration d’une architecture multi-locataire est la manière dont le réseau est conçu pour les locataires. Les plates-formes F5® BIG-IP® offrent une gamme d'options de multi-location et de séparation de réseau pour permettre l'interopérabilité avec le multi-location OpenStack.
Les réseaux des fournisseurs utilisent généralement des réseaux plats (non balisés) ou, plus communément, des réseaux VLAN (balisés 802.1Q). Ceux-ci correspondent étroitement aux réseaux de centres de données traditionnels. Les réseaux OpenStack sont définis et créés par l'administrateur et partagés entre les locataires.
Dans certains cas, les instances de calcul d’un locataire auront des interfaces directement sur le réseau du fournisseur. Les locataires ne définissent pas leurs propres réseaux mais se connectent simplement aux réseaux de fournisseurs configurés à l’aide de plages d’adresses IP définies par l’administrateur du fournisseur. Dans d’autres cas, les locataires créeront des configurations de réseau virtuel au sein des réseaux des fournisseurs.
Les administrateurs peuvent permettre aux locataires de créer leurs propres architectures réseau spécifiques, qui sont le plus souvent contrôlées par OpenStack Neutron à l'aide d'instances Open vSwitch sur des nœuds de calcul, bien que d'autres solutions de réseau définies par logiciel (SDN) puissent également être utilisées. Les VLAN ou les tunnels Ethernet transparents utilisant la technologie GRE ou VXLAN permettent la communication entre les instances de calcul des locataires et les isolent des autres locataires. Depuis début 2016, le tunneling GRE est la méthode de déploiement la plus courante. Les locataires peuvent créer leurs propres réseaux et plages d'adresses IP, qui peuvent très bien se chevaucher entre les locataires. Chaque locataire peut disposer d'un routeur OpenStack pour permettre la communication en dehors de ses réseaux. Cela est accompli en attribuant au locataire une ou plusieurs adresses IP flottantes, que le routeur du locataire traduit en adresse IP privée du locataire configurée. (Notez que les adresses IP flottantes OpenStack Neutron et BIG-IP sont des choses différentes ; la manière dont la plate-forme BIG-IP gère l'isolation des locataires sera abordée plus tard.)
Les produits F5 offrent une gamme de services de distribution application avancés conçus pour offrir évolutivité, disponibilité et sécurité multicouche. Voici quelques exemples clés (mais non exhaustifs) :
Sécurité | Services avancés de pare-feu réseau
|
Disponibilité | Surveillance au niveau des applications
|
Performance | Optimisation des réseaux et des transports
|
Flexibilité | Programmabilité du chemin des données
|
La plateforme BIG-IP est disponible en éditions physiques, virtuelles et cloud. La plateforme fournit des services application via des modules logiciels BIG-IP. Une plate-forme BIG-IP peut exécuter un ou plusieurs modules logiciels pour répondre aux besoins des applications, et la plate-forme peut être déployée en tant qu'unité autonome ou dans des clusters hautement disponibles.
Fonction | Module logiciel F5 | |
---|---|---|
Sécurité | Sécurité de la couche réseau | Gestionnaire de pare-feu avancé BIG-IP® (AFM) |
Sécurité de la couche application | Gestionnaire de sécurité des applications BIG-IP® (ASM) | |
Identité et accès | Gestionnaire de politiques d'accès BIG-IP® (APM) | |
Disponibilité | Disponibilité des application et optimisation du trafic | Gestionnaire de trafic local BIG-IP® (LTM) |
Disponibilité globale et DNS | DNS BIG-IP® | |
Performance | Optimisation des application et du réseau | Gestionnaire d'accélération des application BIG-IP® (AAM) |
La plate-forme BIG-IP est un proxy bidirectionnel, sans copie et avec état, à très hautes performances. La compréhension de ce principe architectural de base peut aider à éclairer la manière dont la plateforme BIG-IP fournit des services et à clarifier les choix architecturaux.
Les clients se connectent au périphérique ou à l'instance BIG-IP, qui se connecte aux serveurs principaux (ou dans certains cas, comme les services DNS, gère le trafic de application et répond directement au client). Cela crée un « espace d’air » TCP, avec une régénération complète de la session TCP entre le client et le serveur. Dans ce vide logique, la plateforme BIG-IP fournit des services de livraison application . Lorsque le trafic des application transite par la plateforme, il peut être inspecté, modifié et contrôlé. La plateforme BIG-IP offre ainsi un contrôle complet du trafic des application entrant et sortant.
La plateforme BIG-IP bénéficie également de la certification ICSA Labs pour les pare-feu réseau et application Web, pour lesquels la séparation du trafic et la sécurité de la plateforme sont rigoureusement testées, offrant une assurance de sécurité supplémentaire de la plateforme.
Les services et plates-formes de diffusion application OpenStack et F5 se combinent pour apporter des services de qualité production aux applications hébergées par OpenStack. Les services de distribution application F5 sont accessibles de deux manières dans OpenStack : Le service Neutron Load Balancing as a Service (LBaaS) version 2 et l'orchestration Heat. (F5 prend également en charge l'intégration de LBaaS version 1 avec Neutron, mais la communauté OpenStack a déconseillé l'API version 1 à partir de la version Liberty d'OpenStack).
Neutron LBaaS permet des services d'équilibrage de charge de base pour les instances de calcul (et donc application). Ces services sont limités à un sous-ensemble de fonctions et de fonctionnalités communes à un large éventail de plates-formes d’équilibrage de charge.
Le modèle de prestation de services LBaaS fait abstraction des ressources fournissant le service des services eux-mêmes. Les ressources fournissant les services existent dans le cadre de l’infrastructure OpenStack plutôt qu’au sein des ressources du locataire OpenStack. Ce modèle est parfois appelé « sous le nuage ».
OpenStack LBaaS s'appuie sur un certain nombre d'objets logiques pour créer une configuration d'équilibrage de charge.
Objet | Description |
---|---|
équilibreur de charge | L'objet racine. Spécifie le sous-réseau de l'adresse IP virtuelle (VIP) (qui peut être attribuée ou allouée de manière statique), le locataire et le fournisseur |
auditeur | Un auditeur sur un port spécifique du VIP de l'équilibreur de charge. Spécifie le port et un nombre limité de types de protocole |
piscine | Un pool vers lequel l'auditeur enverra du trafic. Spécifie le protocole, l'écouteur parent et l'algorithme d'équilibrage de charge |
membre | Un membre de la piscine. Spécifie l'adresse IP, le numéro de port et (éventuellement) le sous-réseau d'une instance de l' application vers laquelle le trafic peut être dirigé |
moniteur_de_santé | Crée un moniteur de santé lié à un pool. Spécifie le type de moniteur, la fréquence et les délais d'attente, ainsi que les options pour le chemin HTTP, les méthodes et les codes attendus |
lbaas_sessionpersistences | Définit comment la persistance de session doit être gérée (par exemple, limitée à la persistance des cookies ou de l'IP source) |
Le modèle d’objet est présenté dans la figure 3.
Comme dans toutes les opérations OpenStack, LBaaS est géré via une API RESTful. L'API permet aux locataires d'effectuer des appels REST pour créer, mettre à jour et supprimer des objets LBaaS, avec un certain nombre d'étapes entre l'appel API d'un locataire et une modification de configuration survenant sur une instance BIG-IP.
Le mappage entre les objets LBaaS et les appels d'API pour les créer ou les mettre à jour dans une configuration sur une instance BIG-IP est géré par le pilote F5 OpenStack LBaaS . Le pilote LBaaS permet à une instance BIG-IP de devenir un fournisseur de services d'équilibrage de charge au sein d'un cloud propulsé par OpenStack.
Le pilote F5 LBaaS est en réalité composé de deux composants distincts :
Le pilote LBaaS reçoit des tâches résultant des appels d'API LBaaS effectués par le locataire et les traduit en appels d'API F5 iControl® pour créer ou mettre à jour des objets de configuration sur le périphérique BIG-IP ou l'édition virtuelle. Lorsque les locataires utilisent des réseaux de locataires isolés et des tunnels de superposition de réseau ou des VLAN, le pilote LBaaS permet à plusieurs locataires d'être pris en charge à partir d'une seule instance BIG-IP ou d'une configuration haute disponibilité (HA). Le plug-in F5 LBaaS crée les appels API nécessaires à l'instance BIG-IP et à Nova pour garantir que le trafic du locataire est acheminé vers l'objet d'écoute isolé du locataire (VIP en termes BIG-IP) sur l'instance BIG-IP partagée.
Dans les environnements multi-locataires, un élément clé de Nova consiste à garantir que les locataires sont isolés les uns des autres. Les composants LBaaS BIG-IP utilisent un certain nombre de fonctionnalités multi-locataires BIG-IP pour garantir la séparation du trafic des locataires.
Composant | Remarques |
---|---|
Prise en charge de la superposition de réseau | Prise en charge des tunnels VXLAN et GRE : Le trafic des locataires est entièrement encapsulé dans et hors du système BIG-IP |
Domaines de routage | Espaces d'adressage strictement définis au sein de la plateforme. Chaque domaine de routage isole les espaces d’adresses IP et les informations de routage. Les espaces d'adresses IP peuvent être dupliqués entre les domaines, ce qui permet une réutilisation facile de l'adressage privé RFC 1918 pour plusieurs locataires |
Partitions administratives | Créez des configurations administrativement distinctes. Chaque configuration de locataire est contenue dans une partition administrative distincte |
Pour comprendre plus en détail comment et quand ces fonctionnalités multi-locataires sont utilisées, consultez le fichier Readme du pilote et de l'agent F5 OpenStack LBaaS .
LBaaS fournit un système simple, piloté par API, pour déployer des services d'équilibrage de charge au sein d'OpenStack, offrant un équilibrage de charge de base pour un grand nombre de clients. Cependant, l'API ne fournit qu'un sous-ensemble des fonctions d'un contrôleur de distribution application (ADC) complet. Ce tableau compare les services LBaaS et BIG-IP natifs sur certaines propriétés clés de distribution application telles que la prise en charge du protocole, les services supplémentaires et les moniteurs de santé.
Propriété | Services BIG-IP via LBaaS | Services ADC BIG-IP natifs |
---|---|---|
Protocoles | TCP uniquement | TCP, UDP, SCTP |
Protocoles L7 | HTTP, HTTPS | HTTP, HTTP/2, HTTPS, FTP, RTSP, Diamètre, FIX, SIP, PCoIP, RDP |
Sécurité de la couche application | Aucun | Pare-feu application Web complet (WAF) |
Sécurité de la couche réseau | Aucun | Pare-feu réseau complet |
Accès à la couche application | Aucun | Authentification complète et capacités SSO |
Algorithmes de distribution du trafic | 3 | 17 |
Accélération des application | Aucun | Suite complète d'outils de mise en cache, de compression et de manipulation de contenu, y compris l'optimisation TCP |
Moniteurs de santé | 3 | 20+ (y compris SMTP, base de données, SNMP, SIP, FTP, DNS) |
Programmabilité du chemin des données | Aucun | F5 iRules® offre une visibilité et un contrôle complets de toutes les données de application |
Lorsque les fonctionnalités avancées d'un proxy de couche application à part entière sont requises, le déploiement de services de distribution application F5 à l'aide du service d'orchestration OpenStack Heat et des modèles associés peut combiner une création de service simple et automatisée avec des configurations de service plus complexes.
OpenStack Heat est un service d'orchestration qui génère des applications en cours d'exécution basées sur des modèles. Le modèle Heat décrit l'infrastructure dans un ou plusieurs fichiers texte et le service Heat exécute les appels API appropriés pour créer les composants requis. Le service Heat peut être étendu au-delà des modules de base grâce à l'utilisation de plug-ins personnalisés.
Le plug-in F5 Heat permet aux modèles Heat de créer des configurations de distribution application avancées sur n'importe quel périphérique BIG-IP ou édition virtuelle avec accès réseau accessible depuis le serveur exécutant le service Heat. L'instance BIG-IP aura également besoin d'une connectivité et d'un routage vers les instances locataires, car cette connectivité n'est pas configurée par le plug-in Heat.
Les modèles Heat utilisent un langage de balisage simple, YAML, conçu pour être lisible par l'homme et facile à utiliser. Les modèles Heat sont déclaratifs, ce qui signifie que vous définissez simplement les composants d'infrastructure souhaités et que vous vous appuyez sur les fournisseurs sous-jacents pour créer la configuration que vous avez définie.
Les modèles Heat permettent la création de scénarios de distribution application plus avancés, en particulier lorsqu'ils sont combinés avec le système de modèles F5 iApps®. Les modèles iApps permettent la création répétable de configurations de distribution application en transmettant simplement le modèle requis et les valeurs spécifiques à l'instance. Des configurations de livraison complexes utilisant des fonctionnalités avancées telles que les services de pare-feu application Web, l'accélération des application et des algorithmes avancés d'équilibrage de charge peuvent être implémentées avec de simples appels d'API .
Les modèles Heat fonctionnent avec des instances d'éditions virtuelles BIG-IP au sein de l'environnement réseau de locataire individuel (« sur le cloud ») ainsi qu'avec des appareils BIG-IP déployés dans le réseau physique sous-jacent. Le périphérique BIG-IP n’a pas besoin de participer aux appels d’API réseau Neutron, car il est traité comme n’importe quel autre nœud de calcul au sein du locataire.
Le plug-in F5 Heat est disponible sur le référentiel Github F5 . Ce référentiel contient à la fois le plug-in Heat, qui est installé sur le serveur exécutant le moteur Heat, et des exemples de modèles Heat .
Les services de distribution application F5 sont disponibles sur un certain nombre de plates-formes, qui offrent toutes les mêmes capacités de distribution application , car elles exécutent le même système d'exploitation principal et le même micro-noyau F5.
Les plates-formes matérielles F5 offrent des performances élevées et une évolutivité massive pour les environnements nécessitant un grand nombre de clients ou de locataires ou des cas d'utilisation à haut débit. Une seule paire HA peut prendre en charge plusieurs centaines de locataires et des millions de clients. Les périphériques matériels F5 fournissent des accords de niveau de service (SLA) de débit de connexion et un déchargement important pour l'environnement de calcul sous-jacent grâce à l'utilisation de matériel spécialisé pour le traitement SSL et TCP. Lorsque des services de sécurité réseau et une atténuation des risques de déni de service distribué (DDoS) sont nécessaires, les plates-formes matérielles F5 offrent d'excellentes performances et des niveaux de protection élevés. La prise en charge de plusieurs espaces d'adressage qui se chevauchent et de protocoles de superposition de réseau permet d'utiliser des périphériques matériels dans la plupart des environnements multi-locataires.
Les éditions virtuelles F5 BIG-IP sont disponibles pour la plupart des hyperviseurs (y compris KVM) et pour une utilisation dans les fournisseurs d'infrastructure en tant que service (IaaS) de cloud public tels qu'Amazon AWS et Microsoft Azure. Les éditions virtuelles (VE) BIG-IP sont également disponibles dans une gamme de capacités, allant d'une édition de laboratoire à des versions prêtes pour la production avec des mises à niveau à la carte pour des débits allant de 25 Mo à 10 Go. Les licences en volume et les pools de licences flexibles permettent une gestion dynamique du cycle de vie des instances BIG-IP dans les environnements de test et de développement. La facturation des services publics est également disponible dans les environnements de cloud public. Les éditions virtuelles BIG-IP offrent les mêmes services de distribution application que les plates-formes matérielles, mais manquent du matériel spécialisé et de l'échelle des appareils.
Les éditions virtuelles BIG-IP peuvent être entièrement contenues dans un réseau de locataires. Considérés par OpenStack comme une simple autre instance de calcul, ils sont configurés par des modèles Heat ou peuvent être utilisés comme fournisseur pour LBaaS.
Cas d'utilisation | Isolement des locataires | Architectures possibles |
---|---|---|
Configuration LBaaS, isolation de milliers de locataires, de millions de clients | VLAN, VXLAN ou GRE | Plateformes matérielles BIG-IP consolidées |
Configuration LBaaS, isolation de milliers de locataires, de millions de clients | GRE, VXLAN | Éditions virtuelles BIG-IP à haut débit, évolutives selon les besoins1 |
Configuration LBaaS, exigences d'échelle inférieures | GRE, VXLAN | Éditions virtuelles BIG-IP à faible débit1 |
Configuration de la chaleur, services de diffusion application avancés | Aucun | Édition(s) virtuelle(s) BIG-IP au sein d'un locataire |
1Consultez le Guide d’intégration F5 et OpenStack pour des informations détaillées.
Étant donné que le plug-in F5 LBaaS peut prendre en charge plusieurs instances d'agent et de pilote F5, il est possible de mélanger des périphériques matériels et des éditions virtuelles BIG-IP au sein de la même configuration LBaaS.
Comme pour toutes les décisions architecturales, la bonne option est celle qui correspond le mieux aux exigences individuelles de la solution. Des solutions évolutives et hautes performances peuvent être créées à l'aide du matériel BIG-IP ou des éditions virtuelles. Les exigences globales en matière d’échelle et de services devraient aider à guider les architectes d’infrastructure vers le matériel, les logiciels ou une combinaison des deux. Pour un consommateur ou un locataire qui souhaite simplement fournir des services, le choix entre LBaaS ou Heat est plus important que la plateforme de livraison elle-même.
La haute disponibilité est essentielle dans les piles de réseaux et application critiques et, comme prévu, la plate-forme BIG-IP dispose d'une architecture HA robuste. Les périphériques BIG-IP et les éditions virtuelles peuvent être déployés en tant que périphériques autonomes (par exemple, pour les environnements de test et de développement), en paires hautement disponibles ou dans des groupes de périphériques actifs N voies jusqu'à quatre périphériques. Tous ces types de déploiement sont pris en charge sur les plateformes OpenStack.
La possibilité d'ajouter une capacité supplémentaire aux ressources LBaaS ou locataires BIG-IP permet aux administrateurs ou aux locataires de faire face aux augmentations du débit des application ou du nombre de locataires. Une montée en puissance ou une extension sans interruption des services est essentielle pour créer un cloud agile et évolutif.
La plateforme BIG-IP peut évoluer à la fois vers le haut et vers le bas : Les appareils et les éditions virtuelles peuvent évoluer via des mises à niveau de licence, et le châssis VIPRION peut évoluer via l'ajout de lames matérielles supplémentaires. Le plug-in BIG-IP LBaaS gérera plusieurs agents et pilotes (chacun gérant une seule instance ou un seul cluster BIG-IP), permettant une mise à l'échelle horizontale. Lorsque plusieurs agents sont utilisés, le plug-in F5 LBaaS conservera, par défaut, tous les objets d'équilibrage de charge LBaaS pour un locataire particulier affecté à un périphérique BIG-IP (ou à un cluster).
Lors de l'utilisation d'instances BIP-IP VE au sein d'un locataire, les instances peuvent à nouveau être étendues via une licence ou des instances supplémentaires ajoutées pour couvrir de nouvelles charges de travail.
Alors que les déploiements OpenStack hébergent de plus en plus applications de production critiques, le besoin de services de distribution application robustes et de haute qualité au sein d’OpenStack augmente. Les services de distribution application F5 offrent la capacité, la sécurité et les fonctionnalités avancées dont ces applications critiques ont besoin, associées à l'agilité et à la faible charge opérationnelle qu'offre un cloud basé sur OpenStack.
Les dernières nouveautés en matière de renseignement sur les menaces applicatives.
La communauté F5 pour les forums de discussion et les articles d'experts.