4.12. Gestion des opérateurs de plateforme (Avant-première technologique)


Un opérateur de plateforme est un opérateur basé sur OLM qui peut être installé pendant ou après les opérations du jour 0 d'un cluster OpenShift Container Platform et qui participe au cycle de vie du cluster. En tant qu'administrateur de cluster, vous pouvez gérer les opérateurs de plateforme en utilisant l'API PlatformOperator.

Important

Le type d'opérateur de plate-forme est une fonctionnalité d'aperçu technologique uniquement. Les fonctionnalités de l'aperçu technologique ne sont pas prises en charge par les accords de niveau de service (SLA) de production de Red Hat et peuvent ne pas être complètes sur le plan fonctionnel. Red Hat ne recommande pas de les utiliser en production. Ces fonctionnalités offrent un accès anticipé aux fonctionnalités des produits à venir, ce qui permet aux clients de tester les fonctionnalités et de fournir un retour d'information pendant le processus de développement.

Pour plus d'informations sur la portée de l'assistance des fonctionnalités de l'aperçu technologique de Red Hat, voir Portée de l'assistance des fonctionnalités de l'aperçu technologique.

4.12.1. À propos des opérateurs de plateforme

Operator Lifecycle Manager (OLM) introduit un nouveau type d'opérateur appelé platform Operators. Un opérateur de plateforme est un opérateur basé sur OLM qui peut être installé pendant ou après les opérations du jour 0 d'un cluster OpenShift Container Platform et qui participe au cycle de vie du cluster. En tant qu'administrateur de cluster, vous pouvez utiliser les opérateurs de plateforme pour personnaliser davantage votre installation OpenShift Container Platform afin de répondre à vos exigences et à vos cas d'utilisation.

En utilisant la fonction existante de capacités de cluster dans OpenShift Container Platform, les administrateurs de cluster peuvent déjà désactiver un sous-ensemble de composants basés sur l'opérateur de version de cluster (CVO) considérés comme non essentiels à la charge utile initiale avant l'installation du cluster. Les opérateurs de plateforme s'inspirent de ce modèle en offrant des options de personnalisation supplémentaires. Grâce au mécanisme de l'opérateur de plateforme, qui s'appuie sur les ressources du composant RukPak, les opérateurs basés sur OLM peuvent désormais être installés au moment de l'installation du cluster et peuvent bloquer le déploiement du cluster si l'opérateur ne parvient pas à s'installer correctement.

Dans OpenShift Container Platform 4.12, cette version Technology Preview se concentre sur le mécanisme de base de la plateforme Operator et construit une base pour étendre le concept dans les prochaines versions. Vous pouvez utiliser l'API PlatformOperator à l'échelle du cluster pour configurer les opérateurs avant ou après la création du cluster sur les clusters qui ont activé l'ensemble de fonctionnalités TechPreviewNoUpgrades.

4.12.1.1. Restrictions relatives à l'aperçu technologique pour les opérateurs de plates-formes

Pendant la version Technology Preview de la fonctionnalité Platform Operators dans OpenShift Container Platform 4.12, les restrictions suivantes déterminent si un Operator peut être installé via le mécanisme Platform Operators :

  • Les manifestes Kubernetes doivent être empaquetés à l'aide du format de paquet Operator Lifecycle Manager (OLM) registry v1.
  • L'Opérateur ne peut pas déclarer de dépendances de paquetage ou de groupe/version/genre (GVK).
  • L'opérateur ne peut pas spécifier des modes d'installation de la version du service de cluster (CSV) autres que les modes suivants AllNamespaces
  • L'opérateur ne peut pas spécifier de définitions Webhook ou APIService.
  • Tous les paquets doivent se trouver dans la source du catalogue redhat-operators.

Après avoir pris en compte ces restrictions, les opérateurs suivants peuvent être installés avec succès :

Tableau 4.2. Opérateurs basés sur OLM installables en tant qu'opérateurs de plate-forme

3scale-operator

amq-broker-rhel8

amq-online

amq-streams

ansible-cloud-addons-operator

opérateur d'apicastère

opérateur de sécurité des conteneurs

eap

opérateur d'intégration de fichiers

produit gatekeeper-operator

opérateur d'intégration

jws-operator

kiali-ossm

node-healthcheck-operator

odf-csi-addons-operator

odr-hub-operator

openshift-cert-manager-operator

openshift-custom-metrics-autoscaler-operator

openshift-gitops-operator

openshift-pipelines-operator-rh

opérateur de quai

chapeau rouge-chamel-k

rhpam-kogito-operator

service-registry-operator

servicemeshoperator

skupper-opérateur

Note

Les fonctionnalités suivantes ne sont pas disponibles dans le cadre de cet aperçu technologique :

  • Mise à jour automatique des paquets de l'opérateur de la plate-forme après le déploiement du cluster
  • Extension du mécanisme de l'opérateur de plate-forme pour prendre en charge tout composant optionnel basé sur l'OVE

4.12.2. Conditions préalables

  • Accès à un cluster OpenShift Container Platform à l'aide d'un compte disposant des autorisations cluster-admin.
  • Le jeu de fonctionnalités TechPreviewNoUpgrades est activé sur le cluster.

    Avertissement

    L'activation de l'ensemble de fonctionnalités TechPreviewNoUpgrade ne peut être annulée et empêche les mises à jour mineures de la version. Ces jeux de fonctionnalités ne sont pas recommandés sur les clusters de production.

  • Seule la source du catalogue redhat-operators est activée sur le cluster. Il s'agit d'une restriction dans le cadre de la version Technology Preview.
  • La commande oc installée sur votre poste de travail.

4.12.3. Installation des opérateurs de plate-forme lors de la création d'un cluster

En tant qu'administrateur de cluster, vous pouvez installer des opérateurs de plateforme en fournissant les manifestes FeatureGate et PlatformOperator lors de la création du cluster.

Procédure

  1. Choisissez un opérateur de plate-forme parmi l'ensemble des opérateurs basés sur OLM pris en charge. Pour obtenir la liste de cet ensemble et des détails sur les limitations actuelles, voir "Technology Preview restrictions for platform Operators".
  2. Sélectionnez une méthode d'installation en grappe et suivez les instructions pour créer un fichier install-config.yaml. Pour plus de détails sur la préparation d'une installation en grappe, voir "Sélection d'une méthode d'installation en grappe et préparation pour les utilisateurs".
  3. Après avoir créé le fichier install-config.yaml et y avoir apporté les modifications nécessaires, passez au répertoire qui contient le programme d'installation et créez les manifestes :

    ./openshift-install create manifests --dir <installation_directory> $ ./openshift-install create manifests --dir <installation_directory> 1
    1
    For <installation_directory>, specify the name of the directory that contains the install-config.yaml file for your cluster.
  4. Créez un fichier YAML de l'objet FeatureGate dans le répertoire <installation_directory>/manifests/ qui active l'ensemble de fonctionnalités TechPreviewNoUpgrade, par exemple un fichier feature-gate.yaml:

    Exemple de fichier feature-gate.yaml

    apiVersion: config.openshift.io/v1
    kind: FeatureGate
    metadata:
      annotations:
        include.release.openshift.io/self-managed-high-availability: "true"
        include.release.openshift.io/single-node-developer: "true"
        release.openshift.io/create-only: "true"
      name: cluster
    spec:
      featureSet: TechPreviewNoUpgrade 1

    1
    Activer l'ensemble de fonctions TechPreviewNoUpgrade.
  5. Créez un fichier YAML de l'objet PlatformOperator pour l'opérateur de la plateforme choisie dans le répertoire <installation_directory>/manifests/, par exemple un fichier cert-manager.yaml pour l'opérateur cert-manager de Red Hat OpenShift :

    Exemple de fichier cert-manager.yaml

    apiVersion: platform.openshift.io/v1alpha1
    kind: PlatformOperator
    metadata:
      name: cert-manager
    spec:
      package:
        name: openshift-cert-manager-operator

  6. Lorsque vous êtes prêt à terminer l'installation du cluster, reportez-vous à la méthode d'installation que vous avez choisie et continuez à exécuter la commande openshift-install create cluster.

    Lors de la création du cluster, les manifestes fournis sont utilisés pour activer l'ensemble des fonctionnalités de TechPreviewNoUpgrade et installer la plateforme Operator de votre choix.

    Important

    L'échec de l'installation de l'opérateur de plate-forme bloque le processus d'installation du cluster.

Vérification

  1. Vérifiez l'état de la plate-forme cert-manager Operator en exécutant la commande suivante :

    $ oc get platformoperator cert-manager -o yaml

    Exemple de sortie

    ...
    status:
      activeBundleDeployment:
        name: cert-manager
      conditions:
      - lastTransitionTime: "2022-10-24T17:24:40Z"
        message: Successfully applied the cert-manager BundleDeployment resource
        reason: InstallSuccessful
        status: "True" 1
        type: Installed

    1
    Attendez que la condition d'état Installed signale True.
  2. Vérifiez que l'opérateur du cluster platform-operators-aggregated signale un état Available=True:

    $ oc get clusteroperator platform-operators-aggregated -o yaml

    Exemple de sortie

    ...
    status:
      conditions:
      - lastTransitionTime: "2022-10-24T17:43:26Z"
        message: All platform operators are in a successful state
        reason: AsExpected
        status: "False"
        type: Progressing
      - lastTransitionTime: "2022-10-24T17:43:26Z"
        status: "False"
        type: Degraded
      - lastTransitionTime: "2022-10-24T17:43:26Z"
        message: All platform operators are in a successful state
        reason: AsExpected
        status: "True"
        type: Available

4.12.4. Installation des opérateurs de plate-forme après la création du cluster

En tant qu'administrateur de cluster, vous pouvez installer les opérateurs de plateforme après la création du cluster sur les clusters qui ont activé le jeu de fonctionnalités TechPreviewNoUpgrades en utilisant l'API PlatformOperator à l'échelle du cluster.

Procédure

  1. Choisissez un opérateur de plate-forme parmi l'ensemble des opérateurs basés sur OLM pris en charge. Pour obtenir la liste de cet ensemble et des détails sur les limitations actuelles, voir "Technology Preview restrictions for platform Operators".
  2. Créez un fichier YAML de l'objet PlatformOperator pour l'opérateur de la plateforme choisie, par exemple un fichier cert-manager.yaml pour l'opérateur cert-manager de Red Hat OpenShift :

    Exemple de fichier cert-manager.yaml

    apiVersion: platform.openshift.io/v1alpha1
    kind: PlatformOperator
    metadata:
      name: cert-manager
    spec:
      package:
        name: openshift-cert-manager-operator

  3. Créez l'objet PlatformOperator en exécutant la commande suivante :

    $ oc apply -f cert-manager.yaml
    Note

    Si le jeu de fonctionnalités TechPreviewNoUpgrades n'est pas activé dans votre cluster, la création de l'objet échoue avec le message suivant :

    error: resource mapping not found for name: "cert-manager" namespace: "" from "cert-manager.yaml": no matches for kind "PlatformOperator" in version "platform.openshift.io/v1alpha1"
    ensure CRDs are installed first

Vérification

  1. Vérifiez l'état de la plate-forme cert-manager Operator en exécutant la commande suivante :

    $ oc get platformoperator cert-manager -o yaml

    Exemple de sortie

    ...
    status:
      activeBundleDeployment:
        name: cert-manager
      conditions:
      - lastTransitionTime: "2022-10-24T17:24:40Z"
        message: Successfully applied the cert-manager BundleDeployment resource
        reason: InstallSuccessful
        status: "True" 1
        type: Installed

    1
    Attendez que la condition d'état Installed signale True.
  2. Vérifiez que l'opérateur du cluster platform-operators-aggregated signale un état Available=True:

    $ oc get clusteroperator platform-operators-aggregated -o yaml

    Exemple de sortie

    ...
    status:
      conditions:
      - lastTransitionTime: "2022-10-24T17:43:26Z"
        message: All platform operators are in a successful state
        reason: AsExpected
        status: "False"
        type: Progressing
      - lastTransitionTime: "2022-10-24T17:43:26Z"
        status: "False"
        type: Degraded
      - lastTransitionTime: "2022-10-24T17:43:26Z"
        message: All platform operators are in a successful state
        reason: AsExpected
        status: "True"
        type: Available

4.12.5. Suppression des opérateurs de plate-forme

En tant qu'administrateur de cluster, vous pouvez supprimer des opérateurs de plate-forme existants. Operator Lifecycle Manager (OLM) effectue une suppression en cascade. Tout d'abord, OLM supprime le déploiement du bundle pour l'opérateur de plate-forme, ce qui supprime ensuite tous les objets référencés dans le bundle de type registry v1.

Note

Le gestionnaire d'opérateurs de plate-forme et le provisionneur de déploiement d'offres groupées ne gèrent que les objets référencés dans l'offre groupée, mais pas les objets déployés ultérieurement par les charges de travail de l'offre groupée elles-mêmes. Par exemple, si une charge de travail de l'offre groupée crée un espace de noms et que l'opérateur n'est pas configuré pour le nettoyer avant la suppression de l'opérateur, OLM n'est pas en mesure de supprimer l'espace de noms lors de la suppression de l'opérateur de plate-forme.

Procédure

  1. Obtenez une liste des opérateurs de plate-forme installés et recherchez le nom de l'opérateur que vous souhaitez supprimer :

    $ oc get platformoperator
  2. Supprimer la ressource PlatformOperator pour l'opérateur choisi, par exemple pour l'opérateur de quai :

    $ oc delete platformoperator quay-operator

    Exemple de sortie

    platformoperator.platform.openshift.io "quay-operator" deleted

Vérification

  1. Vérifier que l'espace de noms de l'opérateur de plate-forme est finalement supprimé, par exemple pour l'opérateur de quai :

    $ oc get ns quay-operator-system

    Exemple de sortie

    Error from server (NotFound): namespaces "quay-operator-system" not found

  2. Vérifier que l'opérateur du cluster platform-operators-aggregated continue à signaler l'état Available=True:

    $ oc get co platform-operators-aggregated

    Exemple de sortie

    NAME                            VERSION     AVAILABLE   PROGRESSING   DEGRADED   SINCE   MESSAGE
    platform-operators-aggregated   4.12.0-0    True        False         False      70s

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.