6.33. Gestionnaire du cycle de vie des opérateurs Opérateurs


Objectif

Operator Lifecycle Manager (OLM) aide les utilisateurs à installer, mettre à jour et gérer le cycle de vie des applications natives Kubernetes (Operators) et de leurs services associés s'exécutant sur leurs clusters OpenShift Container Platform. Il fait partie de l'Operator Framework, une boîte à outils open source conçue pour gérer les opérateurs de manière efficace, automatisée et évolutive.

Figure 6.1. Flux de travail du gestionnaire du cycle de vie de l'opérateur

olm workflow

OLM fonctionne par défaut dans OpenShift Container Platform 4.12, ce qui aide les administrateurs de clusters à installer, mettre à niveau et accorder l'accès aux opérateurs fonctionnant sur leur cluster. La console web d'OpenShift Container Platform fournit des écrans de gestion permettant aux administrateurs de cluster d'installer des opérateurs, ainsi que d'accorder à des projets spécifiques l'accès à l'utilisation du catalogue d'opérateurs disponibles sur le cluster.

Pour les développeurs, une expérience en libre-service permet de provisionner et de configurer des instances de bases de données, de surveillance et de services de big data sans avoir à être des experts en la matière, car l'opérateur dispose de ces connaissances.

CRDs

Le gestionnaire du cycle de vie des opérateurs (OLM) est composé de deux opérateurs : l'opérateur OLM et l'opérateur de catalogue.

Chacun de ces opérateurs est responsable de la gestion des définitions de ressources personnalisées (CRD) qui constituent la base du cadre OLM :

Tableau 6.1. CRDs gérés par OLM et les opérateurs de catalogues
RessourcesNom courtPropriétaireDescription

ClusterServiceVersion (CSV)

csv

OLM

Métadonnées de l'application : nom, version, icône, ressources nécessaires, installation, etc.

InstallPlan

ip

Catalogue

Liste calculée des ressources à créer pour installer ou mettre à jour automatiquement un CSV.

CatalogSource

catsrc

Catalogue

Un référentiel de CSV, CRD et paquets qui définissent une application.

Subscription

sub

Catalogue

Utilisé pour maintenir les CSV à jour en suivant un canal dans un paquet.

OperatorGroup

og

OLM

Configure tous les opérateurs déployés dans le même espace de noms que l'objet OperatorGroup pour qu'ils surveillent leur ressource personnalisée (CR) dans une liste d'espaces de noms ou à l'échelle du cluster.

Chacun de ces opérateurs est également responsable de la création des ressources suivantes :

Tableau 6.2. Ressources créées par les opérateurs OLM et Catalogue
RessourcesPropriétaire

Deployments

OLM

ServiceAccounts

(Cluster)Roles

(Cluster)RoleBindings

CustomResourceDefinitions (CRD)

Catalogue

ClusterServiceVersions

Opérateur OLM

L'opérateur OLM est chargé de déployer les applications définies par les ressources CSV une fois que les ressources requises spécifiées dans le CSV sont présentes dans le cluster.

L'opérateur OLM ne s'occupe pas de la création des ressources nécessaires ; vous pouvez choisir de créer manuellement ces ressources à l'aide du CLI ou de l'opérateur de catalogue. Cette séparation des préoccupations permet aux utilisateurs de s'approprier progressivement la partie du cadre OLM qu'ils choisissent d'exploiter pour leur application.

L'opérateur OLM utilise le flux de travail suivant :

  1. Surveillez les versions de service de cluster (CSV) dans un espace de noms et vérifiez que les exigences sont respectées.
  2. Si les conditions sont remplies, exécutez la stratégie d'installation pour le CSV.

    Note

    Un CSV doit être un membre actif d'un groupe d'opérateurs pour que la stratégie d'installation s'exécute.

Opérateur de catalogue

L'opérateur de catalogue est responsable de la résolution et de l'installation des versions de service de cluster (CSV) et des ressources requises qu'elles spécifient. Il est également chargé de surveiller les sources du catalogue pour détecter les mises à jour des paquets dans les canaux et de les mettre à niveau, automatiquement si nécessaire, vers les dernières versions disponibles.

Pour suivre un paquet dans un canal, vous pouvez créer un objet Subscription configurant le paquet souhaité, le canal et l'objet CatalogSource que vous souhaitez utiliser pour extraire les mises à jour. Lorsque des mises à jour sont trouvées, un objet InstallPlan approprié est écrit dans l'espace de noms au nom de l'utilisateur.

L'opérateur de catalogue utilise le flux de travail suivant :

  1. Connectez-vous à chaque source de catalogue dans le cluster.
  2. Rechercher les plans d'installation non résolus créés par un utilisateur et, le cas échéant, les trouver :

    1. Rechercher le fichier CSV correspondant au nom demandé et l'ajouter en tant que ressource résolue.
    2. Pour chaque CRD géré ou requis, ajouter le CRD en tant que ressource résolue.
    3. Pour chaque CRD requis, trouvez le CSV qui le gère.
  3. Surveillez les plans d'installation résolus et créez toutes les ressources découvertes, si elles ont été approuvées par un utilisateur ou automatiquement.
  4. Surveillez les sources et les abonnements du catalogue et créez des plans d'installation basés sur ces sources et abonnements.

Registre du catalogue

Le registre de catalogue stocke les CSV et les CRD pour la création dans un cluster et stocke les métadonnées sur les paquets et les canaux.

Un site package manifest est une entrée dans le registre du catalogue qui associe une identité de paquet à des ensembles de CSV. Au sein d'un paquet, les canaux pointent vers un CSV particulier. Comme les CSV font explicitement référence au CSV qu'ils remplacent, un manifeste de paquet fournit à l'opérateur de catalogue toutes les informations nécessaires pour mettre à jour un CSV vers la dernière version d'un canal, en passant par chaque version intermédiaire.

Ressources supplémentaires

Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.