Apprendre > Informatique > DevOps > Pipeline (CI/CD) > OpenShift > Architecture d’OpenShift : Points clés et concepts

Architecture d’OpenShift : Points clés et concepts

📝 La sélection détaillée
Sommaire

L’architecture d’OpenShift est conçue pour gérer et orchestrer les conteneurs basés sur Docker à l’aide de Kubernetes. Cette approche permet de créer une architecture flexible qui facilite la composition et le déploiement d’applications dans des environnements cloud et sur site. Dans cet article, nous examinerons les points clés et les composants essentiels de l’architecture d’OpenShift.

Composants d’Openshift

Dans son essence, l’architecture d’OpenShift se compose des éléments suivants :

Couche d’infrastructure

Cette couche permet d’héberger des applications sur des serveurs virtuels ou physiques, ainsi que sur des infrastructures cloud privées ou publiques.

Couche de service

Définissant les pods et les politiques d’accès, la couche de service offre une adresse IP permanente et un nom d’hôte pour vos pods, permet la connexion entre applications et utilise un équilibrage de charge interne simple pour la distribution des tâches entre les composants d’application. Un cluster OpenShift utilise deux types de nœuds : les nœuds principaux, chargés de la gestion du cluster (aussi appelés nœuds maîtres), et les nœuds travailleurs, responsables de l’exécution des applications.

Nœuds principaux

Les nœuds principaux gèrent le cluster OpenShift, exécutant des tâches clés telles que l’API et l’authentification, le stockage des données, la planification des pods, ainsi que la surveillance et l’échelonnement de la santé des pods.

Nœuds travailleurs

Chaque nœud travailleur contient des pods, qui peuvent héberger un ou plusieurs conteneurs. Ces conteneurs, pouvant être déployés comme stateless ou stateful, partagent une adresse IP, un stockage local, et des volumes de stockage attachés au sein du même pod.

Stockage persistant

Pour prévenir la perte de données, le stockage persistant permet de définir des applications et des données stateful, étant donné que les conteneurs sont éphémères et souvent redémarrés ou supprimés.

Couche de routage

Offrant un accès externe aux applications du cluster depuis tout dispositif, cette couche réalise également l’auto-routage et l’équilibrage de charge pour les pods non sains.

Concepts clés de la plateforme OpenShift Container

L’architecture d’OpenShift repose sur plusieurs concepts importants : Conteneurs

Les conteneurs représentent les unités de base d’une application sur la Plateforme OpenShift Container. Ils offrent un mécanisme léger pour isoler les processus, ne permettant l’interaction qu’avec les ressources spécifiées sur la machine hôte. Il est possible d’orchestrer les conteneurs Docker à travers plusieurs hôtes en utilisant Kubernetes et la Plateforme OpenShift Container, avec l’opération des clusters via les mécanismes natifs de Kubernetes et la CLI Docker.

Images

La Plateforme OpenShift Container utilise des images Docker standard pour créer des conteneurs. Ces images, qui sont des binaires incluant tout le nécessaire pour exécuter un conteneur ainsi que des métadonnées descriptives, peuvent être construites via la CLI Docker ou à l’aide d’une bibliothèque d’images de base OpenShift.

Registres d’Images Conteneur

Un registre d’images est indispensable pour gérer les images de conteneurs et permettre à OpenShift de stocker et récupérer les images lors de la provision des ressources. Docker Hub, tout autre registre, ou le registre d’images interne de la Plateforme OpenShift Container peuvent être utilisés.

Pods

Dans Kubernetes, un pod est l’unité opérationnelle la plus petite d’un cluster, permettant de déployer un ou plusieurs conteneurs sur une machine hôte et de les étendre à des machines supplémentaires si nécessaire. Les conteneurs au sein d’un même pod partagent le réseau et le stockage local, chaque pod ayant une adresse IP interne et son propre espace de port. La Plateforme OpenShift Container ne supporte pas les modifications des définitions de pod en cours d’exécution ; les changements nécessitent la terminaison d’un pod et la recréation d’une version modifiée. Les pods, gérables par un contrôleur de niveau supérieur et non directement par les utilisateurs, sont éphémères et ne maintiennent pas l’état lorsqu’ils sont reconstitués.

Services

Les services Kubernetes agissent comme des équilibreurs de charge internes, identifiant des ensembles de pods répliqués et facilitant la proxyfication de leurs connexions. Un service, qui offre une adresse constante accessible par d’autres objets, reste toujours disponible, même lors de l’ajout ou de la suppression de pods, permettant ainsi aux pods de s’accéder mutuellement via des adresses clusterIP par défaut.

Utilisateurs

Les utilisateurs, interagissant avec la Plateforme OpenShift Container, peuvent se voir attribuer des permissions basées sur les rôles, individuellement ou en groupes. Une authentification est nécessaire pour accéder à la plateforme, les requêtes API non authentifiées étant traitées comme anonymes. Les rôles et politiques déterminent les autorisations de chaque utilisateur.

Builds

Le processus de build, aboutissant généralement à une image exécutable, crée un objet basé sur des paramètres d’entrée. Les objets BuildConfig définissent les processus de build entiers. La Plateforme OpenShift Container crée des conteneurs Docker à partir des images de build et les pousse vers un registre d’images de conteneurs.

Flux d’Images

Fournissant des abstractions pour la référence d’images conteneur, les flux d’images et leurs tags associés ne contiennent pas de données d’image mais présentent une visualisation des images liées et des modifications apportées. Il est possible de configurer des builds et des déploiements qui réagissent aux notifications de flux d’images.

En apprendre plus ici:

Image de Romain Campenon
Romain Campenon
Avec un intérêt prononcé pour le secteur de la formation en ligne, je me consacre à la rédaction d'articles exhaustifs sur une gamme diversifiée de formations. Conscient de l'essor croissant de ce phénomène, il est devenu évident qu'un acteur fiable et informatif est nécessaire pour orienter les individus vers des formations de qualité, à un coût optimal et sans risque de fraude. Chez LearnThings, nous nous engageons à référencer et à sélectionner les formations qui nous paraissent les meilleures dans divers domaines. Notre objectif est de vous fournir des recommandations sur mesure, afin de vous permettre d'accéder à une formation d'excellence qui répond à vos besoins spécifiques.
Autres articles sur le sujet

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

🧠 Notre newsletter 100% neuroscience 👇