Console Web


Red Hat OpenShift Service on AWS 4

Démarrer avec la console web dans Red Hat OpenShift Service sur AWS

Red Hat OpenShift Documentation Team

Résumé

Ce document fournit des instructions pour accéder et personnaliser le service OpenShift sur la console web AWS.

Chapitre 1. Aperçu de la console Web

Le Red Hat Red Hat OpenShift Service sur la console web AWS fournit une interface utilisateur graphique pour visualiser les données de votre projet et effectuer des tâches administratives, de gestion et de dépannage. La console Web fonctionne comme des pods sur les nœuds du plan de contrôle dans le projet openshift-console. Il est géré par une console-opérateur pod. Les perspectives des administrateurs et des développeurs sont prises en charge.

Les perspectives Administrateur et Développeur vous permettent de créer des tutoriels de démarrage rapide pour Red Hat OpenShift Service sur AWS. Le démarrage rapide est un tutoriel guidé avec des tâches utilisateur et est utile pour s’orienter avec une application, un opérateur ou une autre offre de produits.

La perspective de l’administrateur vous permet d’afficher l’inventaire du cluster, la capacité, les informations d’utilisation générales et spécifiques, ainsi que le flux d’événements importants, qui vous aident à simplifier les tâches de planification et de dépannage. Les administrateurs de projet et les administrateurs de cluster peuvent afficher la perspective de l’administrateur.

Les administrateurs de clusters peuvent également ouvrir une instance de terminal de ligne de commande intégrée avec l’opérateur du terminal Web dans Red Hat OpenShift Service sur AWS 4.7 et versions ultérieures.

Note

La perspective par défaut de la console Web qui est affichée dépend du rôle de l’utilisateur. La perspective Administrateur est affichée par défaut si l’utilisateur est reconnu comme un administrateur.

La perspective de l’administrateur fournit des flux de travail spécifiques aux cas d’utilisation des administrateurs, tels que la possibilité de:

  • Gérez les paramètres de charge de travail, de stockage, de réseau et de cluster.
  • Installez et gérez les opérateurs à l’aide du hub opérateur.
  • Ajoutez des fournisseurs d’identité qui permettent aux utilisateurs de se connecter et de gérer l’accès de l’utilisateur à travers les rôles et les liens de rôle.
  • Affichez et gérez une variété de paramètres avancés tels que les mises à jour de cluster, les mises à jour partielles des clusters, les opérateurs de clusters, les définitions de ressources personnalisées (CRD), les liaisons de rôles et les quotas de ressources.
  • Accédez et gérez des fonctionnalités de surveillance telles que des métriques, des alertes et des tableaux de bord de surveillance.
  • Affichez et gérez l’enregistrement, les métriques et les informations de haut niveau sur le cluster.
  • Interagissez visuellement avec les applications, les composants et les services associés à la perspective de l’administrateur dans Red Hat OpenShift Service sur AWS.

La perspective Développeur offre plusieurs façons intégrées de déployer des applications, des services et des bases de données. Dans la perspective Développeur, vous pouvez:

  • Afficher la visualisation en temps réel des déploiements de roulement et de recréation sur le composant.
  • Consultez l’état de l’application, l’utilisation des ressources, la diffusion d’événements de projet et la consommation de quotas.
  • Partagez votre projet avec d’autres.
  • Dépannage des problèmes avec vos applications en exécutant les requêtes Prometheus Query Language (PromQL) sur votre projet et en examinant les métriques visualisées sur une parcelle. Les métriques fournissent des informations sur l’état d’un cluster et toutes les charges de travail définies par l’utilisateur que vous surveillez.

Les administrateurs de clusters peuvent également ouvrir une instance de terminal de ligne de commande intégrée dans la console Web de Red Hat OpenShift Service sur AWS 4.7 et ultérieure.

Note

La perspective par défaut de la console Web qui est affichée dépend du rôle de l’utilisateur. La perspective Développeur est affichée par défaut si l’utilisateur est reconnu comme un développeur.

La perspective Développeur fournit des flux de travail spécifiques aux cas d’utilisation des développeurs, tels que la possibilité de:

  • Créez et déployez des applications sur Red Hat OpenShift Service sur AWS en important des bases de code, des images et des fichiers conteneur existants.
  • Interagissez visuellement avec les applications, les composants et les services qui leur sont associés au sein d’un projet et surveillent leur déploiement et leur statut de construction.
  • Groupez les composants au sein d’une application et connectez les composants dans et entre les applications.
  • Intégrez des fonctionnalités sans serveur (Aperçu technologique).
  • Créez des espaces de travail pour modifier votre code d’application en utilisant Eclipse Che.

La vue Topology vous permet d’afficher les applications, les composants et les charges de travail de votre projet. En l’absence de charges de travail dans le projet, la vue Topology affichera certains liens pour les créer ou les importer. Il est également possible d’utiliser la recherche rapide pour importer des composants directement.

Ressources supplémentaires

Consultez la composition de l’application en utilisant la vue Topology pour plus d’informations sur l’utilisation de la vue Topologie dans la perspective Développeur.

1.3. Accéder aux perspectives

La console Web vous permet d’accéder à la perspective Administrateur et Développeur comme suit:

Conditions préalables

Afin d’accéder à une perspective, assurez-vous que vous vous êtes connecté à la console Web. La perspective par défaut est automatiquement déterminée par l’autorisation des utilisateurs. La perspective Administrateur est sélectionnée pour les utilisateurs ayant accès à tous les projets, tandis que la perspective Développeur est sélectionnée pour les utilisateurs ayant un accès limité à leurs propres projets.

Ressources supplémentaires

Consultez l’Ajout de préférences de l’utilisateur pour plus d’informations sur les perspectives changeantes.

Procédure

  1. Le commutateur de perspective est utilisé pour passer à la perspective Administrateur ou Développeur.
  2. Choisissez un projet existant dans la liste déroulante du projet. Il est également possible de créer un nouveau projet à partir de cette liste déroulante.
Note

Le commutateur de perspective ne peut être utilisé que comme cluster-admin.

Chapitre 2. Accéder à la console web

Le Red Hat OpenShift Service sur la console web AWS est une interface utilisateur accessible depuis un navigateur Web. Les développeurs peuvent utiliser la console Web pour visualiser, naviguer et gérer le contenu des projets.

2.1. Conditions préalables

  • JavaScript doit être activé pour utiliser la console Web. Afin de profiter de la meilleure expérience, utilisez un navigateur Web qui prend en charge WebSockets.
  • Examinez la page OpenShift Container Platform 4.x Intégrations testées avant de créer l’infrastructure de support pour votre cluster.

2.2. Comprendre et accéder à la console web

La console Web fonctionne comme un pod sur le nœud du plan de contrôle. Les ressources statiques nécessaires à l’exécution de la console Web sont servies par le pod.

Procédure

  1. Connectez-vous à OpenShift Cluster Manager et cliquez sur le nom de votre cluster.
  2. Dans l’onglet Aperçu du cluster, cliquez sur Ouvrir la console et connectez-vous avec vos identifiants.

Alternativement, utilisez la commande oc whoami --show-console pour obtenir l’URL de la console Web.

Le Red Hat OpenShift Service sur la console web AWS capture des informations de haut niveau sur le cluster.

Accédez au service OpenShift Red Hat sur le tableau de bord AWS, qui capture des informations de haut niveau sur le cluster, en naviguant vers Home → Aperçu du Red Hat OpenShift Service sur la console web AWS.

Le Red Hat OpenShift Service sur le tableau de bord AWS fournit diverses informations de cluster, capturées dans des cartes de tableau de bord individuelles.

Le Red Hat OpenShift Service sur le tableau de bord AWS se compose des cartes suivantes:

  • Les détails fournissent un bref aperçu des détails des clusters d’information.

    L’état comprend ok, erreur, avertissement, en cours et inconnu. Les ressources peuvent ajouter des noms d’état personnalisés.

    • ID du cluster
    • Fournisseur de services
    • La version
  • L’inventaire des clusters détaille le nombre de ressources et de statuts associés. Il est utile lorsque l’intervention est nécessaire pour résoudre les problèmes, y compris des informations sur:

    • Le nombre de nœuds
    • Le nombre de gousses
    • Demandes de volume de stockage persistantes
    • Hôtes en métal nu dans le cluster, listés en fonction de leur état (disponible uniquement dans l’environnement métal3)
  • Le statut aide les administrateurs à comprendre comment les ressources en cluster sont consommées. Cliquez sur une ressource pour accéder à une page détaillée listant les pods et les nœuds qui consomment la plus grande quantité de la ressource de cluster spécifiée (CPU, mémoire ou stockage).
  • L’utilisation des clusters montre la capacité de diverses ressources sur une période donnée, pour aider les administrateurs à comprendre l’ampleur et la fréquence de la consommation élevée de ressources, y compris des informations sur:

    • Durée du CPU
    • Allocation de mémoire
    • Entreposage consommé
    • Les ressources du réseau consommées
    • Comptage des gousses
  • Activité répertorie les messages liés à l’activité récente dans le cluster, tels que la création de pod ou la migration de machine virtuelle vers un autre hôte.

Il est possible d’afficher une représentation graphique des ressources disponibles dans la vue Topology de la perspective Développeur de la console Web.

Lorsqu’une ressource a un message sur les limites de ressources ou les quotas qui sont atteints, une frontière jaune apparaît autour du nom de la ressource. Cliquez sur la ressource pour ouvrir un panneau latéral pour voir le message. Lorsque la vue Topology a été zoomée, un point jaune indique qu’un message est disponible.

Lorsque vous utilisez List View dans le menu Afficher les raccourcis, les ressources apparaissent comme une liste. La colonne Alertes indique si un message est disponible.

Chapitre 4. Ajout des préférences de l’utilisateur

Les préférences par défaut de votre profil peuvent être modifiées pour répondre à vos besoins. Il est possible de définir votre projet par défaut, la vue topologique (graphique ou liste), le support d’édition (formulaire ou YAML), les préférences linguistiques et le type de ressource.

Les modifications apportées aux préférences de l’utilisateur sont automatiquement enregistrées.

4.1. Définir les préférences de l’utilisateur

Les préférences d’utilisateur par défaut pour votre cluster peuvent être définies.

Procédure

  1. Connectez-vous à Red Hat OpenShift Service sur la console web AWS à l’aide de vos identifiants de connexion.
  2. Le mâthead vous permet d’accéder aux préférences de l’utilisateur sous le profil utilisateur.
  3. Dans la section générale:

    1. Dans le champ Thème, vous pouvez définir le thème dans lequel vous souhaitez travailler. La console par défaut au thème sélectionné chaque fois que vous vous connectez.
    2. Dans le champ Perspective, vous pouvez définir la perspective par défaut à laquelle vous souhaitez être connecté. Le cas échéant, vous pouvez sélectionner la perspective Administrateur ou Développeur. Dans le cas où une perspective n’est pas sélectionnée, vous êtes connecté à la perspective que vous avez visitée pour la dernière fois.
    3. Dans le champ Projet, sélectionnez un projet dans lequel vous souhaitez travailler. La console par défaut au projet chaque fois que vous vous connectez.
    4. Dans le champ Topologie, vous pouvez définir la vue topologie par défaut à la vue graphique ou liste. La console n’est pas sélectionnée par défaut à la dernière vue que vous avez utilisée.
    5. Dans le champ Créer/Éditer la méthode des ressources, vous pouvez définir une préférence pour la création ou l’édition d’une ressource. Lorsque le formulaire et les options YAML sont disponibles, la console par défaut à votre sélection.
  4. Dans la section Langue, sélectionnez la langue du navigateur par défaut pour utiliser les paramètres de langue du navigateur par défaut. Dans le cas contraire, sélectionnez la langue que vous souhaitez utiliser pour la console.
  5. Dans la section Notifications, vous pouvez activer l’affichage des notifications créées par les utilisateurs pour des projets spécifiques sur la page Aperçu ou le tiroir de notification.
  6. Dans la section Applications:

    1. Il est possible d’afficher le type de ressource par défaut. Le type de ressource par défaut est Déploiement.
    2. Il est possible de sélectionner un autre type de ressource pour être le type de ressource par défaut dans le champ Type de ressource.

Chapitre 5. Des plugins dynamiques

5.1. Aperçu des plugins dynamiques

5.1.1. À propos des plugins dynamiques

Les plugins dynamiques sont chargés et interprétés à partir de sources distantes à l’exécution. L’un des moyens de fournir et d’exposer des plugins dynamiques à la console est via OLM Operators. L’opérateur crée un déploiement sur la plate-forme avec un serveur HTTP pour héberger le plugin et l’expose à l’aide d’un service Kubernetes.

Les plugins dynamiques vous permettent d’ajouter des pages personnalisées et d’autres extensions à l’interface utilisateur de votre console au moment de l’exécution. La ressource personnalisée ConsolePlugin enregistre les plugins avec la console, et un administrateur de cluster active les plugins dans la configuration de l’opérateur de la console.

5.1.2. Caractéristiques clés

Le plugin dynamique vous permet d’effectuer les personnalisations suivantes au Red Hat OpenShift Service sur l’expérience AWS:

  • Ajoutez des pages personnalisées.
  • Ajoutez des perspectives au-delà de l’administrateur et du développeur.
  • Ajoutez des éléments de navigation.
  • Ajoutez des onglets et des actions aux pages de ressources.

5.1.3. Lignes directrices générales

Lors de la création de votre plugin, suivez ces directives générales:

  • Les node.js et fils sont nécessaires pour construire et exécuter votre plugin.
  • Le préfixe de vos noms de classe CSS avec le nom de votre plugin pour éviter les collisions. A titre d’exemple, my-plugin__heading et my-plugin_\_icon.
  • Gardez un look, une sensation et un comportement cohérents avec d’autres pages de console.
  • Suivez les directives de localisation responsive-i18next lors de la création de votre plugin. Il est possible d’utiliser le crochet useTranslation comme celui de l’exemple suivant:

    conster Header: React.FC = () => {
      const { t } = useTranslation('plugin__console-demo-plugin');
      return <h1>{t('Hello, World!')}</h1>;
    };
    Copy to Clipboard Toggle word wrap
  • Évitez les sélecteurs qui pourraient affecter le balisage en dehors des composants de vos plugins, tels que les sélecteurs d’éléments. Ce ne sont pas des API et sont sujets à changement. Les utiliser pourrait casser votre plugin. Évitez les sélecteurs comme les sélecteurs d’éléments qui pourraient affecter le balisage en dehors des composants de vos plugins.
  • Fournissez le type d’extension de courrier Internet multifonction JavaScript valide (MIME) en utilisant l’en-tête de réponse de type de contenu pour tous les actifs desservis par votre serveur Web plugin. Chaque déploiement de plugin doit inclure un serveur Web qui héberge les actifs générés du plugin donné.
  • Créez votre plugin avec Webpack en utilisant la version 5 et ultérieure de Webpack.
  • Il faut préfixer les noms de classes CSS avec le nom de votre plugin pour éviter les collisions. A titre d’exemple, my-plugin__heading et my-plugin_\_icon.
  • Gardez un look, une sensation et un comportement cohérents avec d’autres pages de console.
  • Évitez les sélecteurs qui pourraient affecter le balisage en dehors des composants de votre plugin, tels que les sélecteurs d’éléments. Ce ne sont pas des API et sont sujets à changement.
  • Il faut fournir un type d’extension de courrier Internet polyvalent (MIME) valide à l’aide de l’en-tête de réponse de type de contenu pour tous les actifs desservis par votre serveur Web plugin. Chaque déploiement de plugin doit inclure un serveur Web qui héberge les actifs générés du plugin donné.
Lignes directrices de PatternFly

Lors de la création de votre plugin, suivez ces directives pour l’utilisation de PatternFly:

  • Les composants PatternFly et les variables CSS de PatternFly. Les composants Core PatternFly sont disponibles via le SDK. En utilisant des composants et des variables PatternFly, votre plugin semble cohérent dans les versions futures de la console.

    • Utilisez Patternfly 4.x si vous utilisez Red Hat OpenShift Service sur les versions 4.14 et antérieures d’AWS.
    • Utilisez Patternfly 5.x si vous utilisez Red Hat OpenShift Service sur AWS 4.15 ou version ultérieure.
  • Accédez à votre plugin en suivant les principes d’accessibilité de PatternFly.
  • Évitez d’utiliser d’autres bibliothèques CSS telles que Bootstrap ou Tailwind. Ils pourraient entrer en conflit avec PatternFly et ne pas correspondre au reste de la console. Les plugins ne doivent inclure que des styles spécifiques à leurs interfaces utilisateur à évaluer en plus des styles PatternFly de base. Évitez d’importer des styles tels que @patternfly/react-styles/*/.css ou n’importe quel style du paquet @patternfly/patternfly dans votre plugin.
  • L’application console est responsable du chargement des styles de base pour toutes les versions (s) prises en charge de PatternFly.
5.1.3.1. La traduction de messages avec responsive-i18next

Le modèle de plugin montre comment vous pouvez traduire des messages avec responsive-i18next.

Conditions préalables

  • Le modèle de plugin doit être cloné localement.
  • Facultatif: Pour tester votre plugin localement, exécutez le Red Hat OpenShift Service sur la console web AWS dans un conteneur. Il est possible d’utiliser Docker ou Podman 3.2.0 ou plus tard.

Procédure

  1. Le préfixe du nom avec plugin__ pour éviter tout conflit de nom. Le modèle de plugin utilise l’espace de noms plugin__console-plugin-template par défaut, et vous devez mettre à jour lorsque vous renommez votre plugin par exemple, plugin__my-plugin. Il est possible d’utiliser le crochet useTranslation, par exemple:

    conster Header: React.FC = () => {
      const { t } = useTranslation('plugin__console-demo-plugin');
      return <h1>{t('Hello, World!')}</h1>;
    };
    Copy to Clipboard Toggle word wrap
    Important

    Il faut faire correspondre l’espace de noms i18n au nom de la ressource ConsolePlugin.

  2. Définissez le champ spec.i18n.loadType en fonction du comportement nécessaire.

    Exemple 5.1. plugin__console-demo-plugin

    spec:
      backend:
        service:
          basePath: /
          name: console-demo-plugin
          namespace: console-demo-plugin
          port: 9001
        type: Service
      displayName: OpenShift Console Demo Plugin
      i18n:
        loadType: Preload 
    1
    Copy to Clipboard Toggle word wrap
    1
    Charge toutes les ressources de localisation du plugin à partir de l’espace de noms i18n après le plugin dynamique pendant le chargement.
  3. Employez le format %plugin__console-plugin-template~My Label% pour les étiquettes dans console-extensions.json. La console remplace la valeur par le message de la langue courante à partir de l’espace de noms plugin__console-plugin-template. À titre d’exemple:

      {
        "type": "console.navigation/section",
        "properties": {
          "id": "admin-demo-section",
          "perspective": "admin",
          "name": "%plugin__console-plugin-template~Plugin Template%"
        }
      }
    Copy to Clipboard Toggle word wrap
  4. Inclure un commentaire dans un fichier TypeScript pour i18next-parser pour ajouter le message de console-extensions.json à votre catalogue de messages. À titre d’exemple:

    // t('plugin__console-demo-plugin~Demo Plugin')
    Copy to Clipboard Toggle word wrap
  5. Afin de mettre à jour les fichiers JSON dans le dossier local du modèle de plugin lors de l’ajout ou de la modification d’un message, exécutez la commande suivante:

    $ yarn i18n
    Copy to Clipboard Toggle word wrap

5.2. Démarrer avec des plugins dynamiques

Afin de commencer à utiliser le plugin dynamique, vous devez configurer votre environnement pour écrire un nouveau Red Hat OpenShift Service sur le plugin dynamique AWS. À titre d’exemple de la façon d’écrire un nouveau plugin, voir Ajout d’un onglet à la page pods.

5.2.1. Développement dynamique de plugins

Il est possible d’exécuter le plugin à l’aide d’un environnement de développement local. Le Red Hat OpenShift Service sur la console web AWS s’exécute dans un conteneur connecté au cluster auquel vous vous êtes connecté.

Conditions préalables

  • Il faut que vous ayez cloné le référentiel console-plugin-template, qui contient un modèle pour créer des plugins.

    Important

    Le Red Hat ne prend pas en charge le code de plugin personnalisé. Le support communautaire coopératif est uniquement disponible pour votre plugin.

  • Il faut avoir un service Red Hat OpenShift sur AWS cluster en cours d’exécution.
  • Il faut que la CLI OpenShift (oc) soit installée.
  • Le fil doit être installé.
  • Docker v3.2.0 ou version ultérieure ou Podman v3.2.0 ou ultérieure sont installées et exécutées.

Procédure

  1. Deux fenêtres terminales.
  2. Dans une fenêtre de terminal, exécutez la commande suivante pour installer les dépendances de votre plugin en utilisant le fil.

    $ yarn install
    Copy to Clipboard Toggle word wrap
  3. Après l’installation, exécutez la commande suivante pour démarrer le fil.

    $ yarn run start
    Copy to Clipboard Toggle word wrap
  4. Dans une autre fenêtre de terminal, connectez-vous au service OpenShift Red Hat sur AWS via le CLI.

    $ oc login
    Copy to Clipboard Toggle word wrap
  5. Exécutez le Red Hat OpenShift Service sur la console web AWS dans un conteneur connecté au cluster auquel vous vous êtes connecté en exécutant la commande suivante:

    $ yarn run start-console
    Copy to Clipboard Toggle word wrap
    Note

    La commande Start-console de fil exécute une image amd64 et peut échouer lorsqu’elle est exécutée avec Apple Silicon et Podman. Il est possible de travailler autour de lui avec qemu-user-statique en exécutant les commandes suivantes:

    $ podman machine ssh
    $ sudo -i
    $ rpm-ostree install qemu-user-static
    $ systemctl reboot
    Copy to Clipboard Toggle word wrap

La vérification

  • Consultez localhost:9000 pour voir le plugin en cours d’exécution. Inspectez la valeur de window.SERVER_FLAGS.consolePlugins pour voir la liste des plugins qui se chargent au moment de l’exécution.

5.3. Déployez votre plugin sur un cluster

Il est possible de déployer le plugin dans un service Red Hat OpenShift sur le cluster AWS.

5.3.1. Construire une image avec Docker

Afin de déployer votre plugin sur un cluster, vous devez d’abord construire une image et la pousser vers un registre d’images.

Procédure

  1. Construisez l’image avec la commande suivante:

    $ docker build -t quay.io/my-repositroy/my-plugin:latest .
    Copy to Clipboard Toggle word wrap
  2. Facultatif: Si vous souhaitez tester votre image, exécutez la commande suivante:

    $ docker run -it --rm -d -p 9001:80 quay.io/my-repository/my-plugin:latest
    Copy to Clipboard Toggle word wrap
  3. Appuyez sur l’image en exécutant la commande suivante:

    $ docker push quay.io/my-repository/my-plugin:latest
    Copy to Clipboard Toggle word wrap

5.3.2. Déployez votre plugin sur un cluster

Après avoir poussé une image avec vos modifications à un registre, vous pouvez déployer le plugin dans un cluster à l’aide d’un graphique Helm.

Conditions préalables

  • Il faut avoir l’emplacement de l’image contenant le plugin qui a déjà été poussé.

    Note

    Il est possible de spécifier des paramètres supplémentaires en fonction des besoins de votre plugin. Le fichier value.yaml fournit un ensemble complet de paramètres pris en charge.

Procédure

  1. Afin de déployer votre plugin dans un cluster, installez un graphique Helm avec le nom du plugin comme nom de sortie Helm dans un nouvel espace de noms ou un espace de noms existant tel que spécifié par l’option ligne de commande -n. Fournissez l’emplacement de l’image dans le paramètre plugin.image en utilisant la commande suivante:

    $ helm upgrade -i  my-plugin charts/openshift-console-plugin -n my-plugin-namespace --create-namespace --set plugin.image=my-plugin-image-location
    Copy to Clipboard Toggle word wrap

    Là où:

    &lt;my-plugin-namespace&gt;
    Indique un espace de noms existant pour déployer votre plugin.
    --créer-namespace
    Facultatif: Si vous déployez dans un nouvel espace de noms, utilisez ce paramètre.
    --set plugin.image=my-plugin-image-localisation
    Indique l’emplacement de l’image dans le paramètre plugin.image.
    Note

    En cas de déploiement sur Red Hat OpenShift Service sur AWS 4.10 et ultérieure, il est recommandé d’exclure les configurations liées à la sécurité des pod en ajoutant le paramètre --set plugin.securityContext.enabled=false.

  2. Facultatif : Vous pouvez spécifier tous les paramètres supplémentaires en utilisant l’ensemble de paramètres pris en charge dans le fichier charts/openshift-console-plugin/values.yaml.

    plugin:
      name: ""
      description: ""
      image: ""
      imagePullPolicy: IfNotPresent
      replicas: 2
      port: 9443
      securityContext:
        enabled: true
      podSecurityContext:
        enabled: true
        runAsNonRoot: true
        seccompProfile:
          type: RuntimeDefault
      containerSecurityContext:
        enabled: true
        allowPrivilegeEscalation: false
        capabilities:
          drop:
            - ALL
      resources:
        requests:
          cpu: 10m
          memory: 50Mi
      basePath: /
      certificateSecretName: ""
      serviceAccount:
        create: true
        annotations: {}
        name: ""
      patcherServiceAccount:
        create: true
        annotations: {}
        name: ""
      jobs:
        patchConsoles:
          enabled: true
          image: "registry.redhat.io/openshift4/ose-tools-rhel8@sha256:e44074f21e0cca6464e50cb6ff934747e0bd11162ea01d522433a1a1ae116103"
          podSecurityContext:
            enabled: true
            runAsNonRoot: true
            seccompProfile:
              type: RuntimeDefault
          containerSecurityContext:
            enabled: true
            allowPrivilegeEscalation: false
            capabilities:
              drop:
                - ALL
          resources:
            requests:
              cpu: 10m
              memory: 50Mi
    Copy to Clipboard Toggle word wrap

La vérification

  • Consultez la liste des plugins activés en naviguant depuis Administration → Paramètres du cluster → Configuration → Console operator.openshift.io → plugins Console ou en visitant la page Aperçu.
Note

Il peut prendre quelques minutes pour que la nouvelle configuration du plugin apparaisse. Lorsque vous ne voyez pas votre plugin, vous devrez peut-être actualiser votre navigateur si le plugin a été récemment activé. Lorsque vous recevez des erreurs au moment de l’exécution, consultez la console JS dans les outils de développement du navigateur pour rechercher des erreurs dans votre code de plugin.

5.3.3. Le proxy du service de plugin

Lorsque vous devez faire des requêtes HTTP à un service d’inclusion à partir de votre plugin, vous pouvez déclarer un proxy de service dans sa ressource ConsolePlugin en utilisant le champ de tableau spec.proxy. Le backend de la console expose le /api/proxy/plugin/&lt;plugin-name&gt;/&lt;proxy-alias&gt;/&lt;request-path&gt;?&lt; optional-query-parameters&gt; pour proxy la communication entre le plugin et le service. La requête proxiée utilise un service CA bundle par défaut. Le service doit utiliser HTTPS.

Note

Le plugin doit utiliser l’API consolefetch pour faire des demandes à partir de son code JavaScript ou certaines demandes pourraient échouer. En savoir plus sur "Dynamic plugin API".

À chaque entrée, vous devez spécifier un point de terminaison et un alias du proxy sous les champs endpoint et alias. Dans le cas du type de proxy Service, vous devez définir le champ de type de point d’extrémité sur Service et le service doit inclure des valeurs pour les champs nom, espace de noms et ports. À titre d’exemple, /api/proxy/plugin/helm-charts/ Releases?limit=10 est un chemin de requête proxy à partir du plugin de barre avec un service helm-charts qui répertorie dix versions de helm.

Exemple de proxy de service

apiVersion: console.openshift.io/v1
kind: ConsolePlugin
metadata:
  name:<plugin-name>
spec:
  proxy:
  - alias: helm-charts 
1

    authorization: UserToken 
2

    caCertificate: '-----BEGIN CERTIFICATE-----\nMIID....'en 
3

    endpoint: 
4

      service:
        name: <service-name>
        namespace: <service-namespace>
        port: <service-port>
      type: Service
Copy to Clipboard Toggle word wrap

1
Alias du proxy.
2
Dans le cas où la demande de proxy de service doit contenir le service Red Hat OpenShift de l’utilisateur connecté sur le jeton d’accès AWS, vous devez définir le champ d’autorisation sur UserToken.
Note

Dans le cas où la demande de proxy de service ne contient pas le service Red Hat OpenShift de l’utilisateur connecté sur le jeton d’accès AWS, définissez le champ d’autorisation sur None.

3
Dans le cas où le service utilise un service personnalisé CA, le champ caCertificate doit contenir le paquet de certificats.
4
Endpoint du proxy.

5.3.4. Désactivation de votre plugin dans le navigateur

Les utilisateurs de console peuvent utiliser le paramètre de requête de désactivation-plugins pour désactiver les plugins spécifiques ou tous les plugins dynamiques qui seraient normalement chargés au moment de l’exécution.

Procédure

  • Désactivez un(s) plugin(s) spécifique(s), supprimez le plugin que vous souhaitez désactiver de la liste des noms de plugins séparés par les virgules.
  • Afin de désactiver tous les plugins, laissez une chaîne vide dans le paramètre de requête désactive-plugins.
Note

Les administrateurs de clusters peuvent désactiver les plugins dans la page Paramètres du cluster de la console Web.

5.4. Exemple de plugin dynamique

Avant de passer par l’exemple, vérifiez que le plugin fonctionne en suivant les étapes du développement de plugin dynamique

5.4.1. Ajout d’un onglet à la page pods

Il existe différentes personnalisations que vous pouvez faire au service Red Hat OpenShift sur la console web AWS. La procédure suivante ajoute un onglet à la page détails Pod comme extension d’exemple à votre plugin.

Note

Le Red Hat OpenShift Service sur la console web AWS s’exécute dans un conteneur connecté au cluster auquel vous vous êtes connecté. Consultez "Dynamic plugin Development" pour obtenir des informations pour tester le plugin avant de créer le vôtre.

Procédure

  1. Consultez le référentiel console-plugin-template contenant un modèle pour créer des plugins dans un nouvel onglet.

    Important

    Le code de plugin personnalisé n’est pas pris en charge par Red Hat. Le support communautaire coopératif est uniquement disponible pour votre plugin.

  2. Créez un référentiel GitHub pour le modèle en cliquant sur Utilisez ce modèle → Créer un nouveau référentiel.
  3. Faites renommer le nouveau référentiel avec le nom de votre plugin.
  4. Clonez le nouveau référentiel sur votre machine locale afin que vous puissiez modifier le code.
  5. Éditez le fichier package.json, en ajoutant les métadonnées de votre plugin à la déclaration consolePlugin. À titre d’exemple:

    "consolePlugin": {
      "name": "my-plugin", 
    1
    
      "version": "0.0.1", 
    2
    
      "displayName": "My Plugin", 
    3
    
      "description": "Enjoy this shiny, new console plugin!", 
    4
    
      "exposedModules": {
        "ExamplePage": "./components/ExamplePage"
      },
      "dependencies": {
        "@console/pluginAPI": "/*"
      }
    }
    Copy to Clipboard Toggle word wrap
    1
    Actualisez le nom de votre plugin.
    2
    Actualisez la version.
    3
    Actualisez le nom d’affichage de votre plugin.
    4
    Actualisez la description avec un synopsis sur votre plugin.
  6. Ajoutez ce qui suit au fichier console-extensions.json:

    {
      "type": "console.tab/horizontalNav",
      "properties": {
        "page": {
          "name": "Example Tab",
          "href": "example"
        },
        "model": {
          "group": "core",
          "version": "v1",
          "kind": "Pod"
        },
        "component": { "$codeRef": "ExampleTab" }
      }
    }
    Copy to Clipboard Toggle word wrap
  7. Modifiez le fichier package.json pour inclure les modifications suivantes:

            "exposedModules": {
                "ExamplePage": "./components/ExamplePage",
                "ExampleTab": "./components/ExampleTab"
            }
    Copy to Clipboard Toggle word wrap
  8. Écrivez un message à afficher sur un nouvel onglet personnalisé sur la page Pods en créant un nouveau fichier src/composents/ExampleTab.tsx et en ajoutant le script suivant:

    import * as React from 'react';
    
    export default function ExampleTab() {
        return (
            <p>This is a custom tab added to a resource using a dynamic plugin.</p>
        );
    }
    Copy to Clipboard Toggle word wrap
  9. Installez un graphique Helm avec le nom du plugin comme nom de libération Helm dans un nouvel espace de noms ou un espace de noms existant tel que spécifié par l’option ligne de commande -n pour déployer votre plugin sur un cluster. Fournissez l’emplacement de l’image dans le paramètre plugin.image en utilisant la commande suivante:

    $ helm upgrade -i  my-plugin charts/openshift-console-plugin -n my-plugin-namespace --create-namespace --set plugin.image=my-plugin-image-location
    Copy to Clipboard Toggle word wrap
    Note

    En savoir plus sur le déploiement de votre plugin sur un cluster, voir « Déployez votre plugin sur un cluster ».

La vérification

  • Consultez une page Pod pour afficher l’onglet ajouté.

5.5. La référence dynamique du plugin

Il est possible d’ajouter des extensions qui vous permettent de personnaliser votre plugin. Ces extensions sont ensuite chargées sur la console au moment de l’exécution.

5.5.1. Les types d’extension de plugin dynamique

console.action/filtre

ActionFilter peut être utilisé pour filtrer une action.

Expand
Le nomLe type de valeurFacultatifDescription

contextId

chaîne de caractères

C) Non

L’ID contextuel aide à limiter la portée des actions contribuées à un domaine particulier de l’application. Les exemples incluent la topologie et la barre.

filtrer

CodeRef&lt;(scope: n’importe quel, action: Action)

C) Non

Fonction qui filtre les actions en fonction de certaines conditions.

champ d’application: la portée dans laquelle les actions devraient être prévues. Il est possible qu’un crochet soit nécessaire si vous souhaitez supprimer l’action ModifyCount d’un déploiement avec un autoscaleur de pod horizontal (HPA).

console.action/groupe

Actiongroup contribue à un groupe d’action qui peut également être un sous-menu.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

ID utilisé pour identifier la section action.

étiquette

chaîne de caractères

♪ oui ♪

L’étiquette à afficher dans l’interface utilisateur. Requis pour le sous-menus.

les sous-menu

booléen

♪ oui ♪

La question de savoir si ce groupe doit être affiché comme sous-menu.

insérer avant

chaîne | string[]

♪ oui ♪

Insérez ce point avant l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé.

insérer après

chaîne | string[]

♪ oui ♪

Insérez cet élément après l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé. L’insertionAvant la valeur a priorité.

console.action/fournisseur

ActionProvider apporte un crochet qui renvoie la liste des actions pour un contexte spécifique.

Expand
Le nomLe type de valeurFacultatifDescription

contextId

chaîne de caractères

C) Non

L’ID contextuel aide à limiter la portée des actions contribuées à un domaine particulier de l’application. Les exemples incluent la topologie et la barre.

fournisseur de services

CodeRef&lt;ExtensionHook&lt;Action[], tout&gt;&gt;

C) Non

Crochet React qui renvoie les actions pour la portée donnée. Dans le cas où contextId = ressource, la portée sera toujours un objet de ressource Kubernetes.

console.action/fournisseur de ressources

ResourceActionProvider apporte un crochet qui renvoie la liste des actions pour un modèle de ressource spécifique.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

ExtensionK8sKindVersionModel

C) Non

Le modèle pour lequel ce fournisseur fournit des actions.

fournisseur de services

CodeRef&lt;ExtensionHook&lt;Action[], tout&gt;&gt;

C) Non

Crochet de réaction qui renvoie des actions pour le modèle de ressource donné

console.alert-action

Cette extension peut être utilisée pour déclencher une action spécifique lorsqu’une alerte Prometheus spécifique est observée par la console en fonction de sa valeur rule.name.

Expand
Le nomLe type de valeurFacultatifDescription

alerte

chaîne de caractères

C) Non

Le nom d’alerte tel que défini par la propriété alert.rule.name

le texte

chaîne de caractères

C) Non

 

à l’action

CodeRef&lt;(alert: n’importe quel)

C) Non

Fonction pour effectuer l’effet secondaire

console.catalog/filtre d’objet

Cette extension peut être utilisée pour les plugins pour contribuer à un gestionnaire qui peut filtrer des éléments de catalogue spécifiques. À titre d’exemple, le plugin peut contribuer à un filtre qui filtre les graphiques de helm à partir d’un fournisseur spécifique.

Expand
Le nomLe type de valeurFacultatifDescription

catalogueId

chaîne | string[]

C) Non

L’identifiant unique pour le catalogue auquel ce fournisseur contribue.

le type

chaîne de caractères

C) Non

ID de type pour le type d’élément de catalogue.

filtrer

CodeRef&lt;(item: CatalogItem) ⋆ booléen&gt;

C) Non

Filtre les éléments d’un type spécifique. La valeur est une fonction qui prend CatalogItem[] et retourne un sous-ensemble basé sur les critères de filtre.

console.catalog/item-metadata

Cette extension peut être utilisée pour contribuer à un fournisseur qui ajoute des métadonnées supplémentaires à des éléments de catalogue spécifiques.

Expand
Le nomLe type de valeurFacultatifDescription

catalogueId

chaîne | string[]

C) Non

L’identifiant unique pour le catalogue auquel ce fournisseur contribue.

le type

chaîne de caractères

C) Non

ID de type pour le type d’élément de catalogue.

fournisseur de services

CodeRef&lt;ExtensionHook&lt;CatalogItemMetadataProviderFunction, CatalogExtensionHookOptions&gt;&gt;

C) Non

Crochet qui renvoie une fonction qui sera utilisée pour fournir des métadonnées aux éléments de catalogue d’un type spécifique.

console.catalog/fournisseur d’objets

Cette extension permet aux plugins de contribuer à un fournisseur pour un type d’élément de catalogue. À titre d’exemple, un plugin Helm peut ajouter un fournisseur qui récupère tous les graphiques Helm. Cette extension peut également être utilisée par d’autres plugins pour ajouter plus d’éléments à un type d’élément de catalogue spécifique.

Expand
Le nomLe type de valeurFacultatifDescription

catalogueId

chaîne | string[]

C) Non

L’identifiant unique pour le catalogue auquel ce fournisseur contribue.

le type

chaîne de caractères

C) Non

ID de type pour le type d’élément de catalogue.

le titre

chaîne de caractères

C) Non

Le titre du fournisseur d’articles du catalogue

fournisseur de services

CodeRef&lt;ExtensionHook&lt;CatalogItem&lt;any&gt;[], CatalogExtensionHookOptions&gt;&gt;

C) Non

Chercher des articles et les normaliser pour le catalogue. La valeur est un crochet d’effet de réaction.

la priorité

le numéro

♪ oui ♪

La priorité pour ce fournisseur. Défaut à 0. Les fournisseurs de plus haute priorité peuvent outrepasser les articles de catalogue fournis par d’autres fournisseurs.

console.catalog/type d’objet

Cette extension permet aux plugins de contribuer à un nouveau type d’élément de catalogue. À titre d’exemple, un plugin Helm peut définir un nouveau type d’élément de catalogue comme HelmCharts qu’il souhaite contribuer au catalogue des développeurs.

Expand
Le nomLe type de valeurFacultatifDescription

le type

chaîne de caractères

C) Non

Entrez pour l’élément de catalogue.

le titre

chaîne de caractères

C) Non

Le titre de l’élément catalogue.

catalogueDescription

chaîne | CodeRef&lt;React.ReactNode&gt;

♪ oui ♪

Description pour le catalogue spécifique de type.

description de type

chaîne de caractères

♪ oui ♪

Description pour le type d’élément du catalogue.

filtres

CatalogueItemAttribute[]

♪ oui ♪

Filtres personnalisés spécifiques à l’élément catalogue.

groupements

CatalogueItemAttribute[]

♪ oui ♪

Groupements personnalisés spécifiques à l’élément du catalogue.

console.catalog/item-type-metadata

Cette extension permet aux plugins de contribuer des métadonnées supplémentaires comme des filtres personnalisés ou des regroupements pour n’importe quel type d’élément de catalogue. À titre d’exemple, un plugin peut joindre un filtre personnalisé pour HelmCharts qui peut filtrer en fonction du fournisseur de graphiques.

Expand
Le nomLe type de valeurFacultatifDescription

le type

chaîne de caractères

C) Non

Entrez pour l’élément de catalogue.

filtres

CatalogueItemAttribute[]

♪ oui ♪

Filtres personnalisés spécifiques à l’élément catalogue.

groupements

CatalogueItemAttribute[]

♪ oui ♪

Groupements personnalisés spécifiques à l’élément du catalogue.

console.cluster-overview/inventaire-item

Ajoute un nouvel élément d’inventaire à la page d’aperçu du cluster.

Expand
Le nomLe type de valeurFacultatifDescription

component

CodeRef&lt;React.ComponentType&lt;{}&gt;&gt;

C) Non

Le composant à rendre.

console.cluster-overview/multiline-utilization-item

Ajoute un nouvel élément d’utilisation multiligne d’aperçu de cluster.

Expand
Le nomLe type de valeurFacultatifDescription

le titre

chaîne de caractères

C) Non

Le titre de l’élément d’utilisation.

GetUtilizationQueries

CodeRef&lt;GetMultilineQueries&gt;

C) Non

Demande d’utilisation de Prometheus.

humaniser

CodeRef&lt;Humaniser&gt;

C) Non

Convertissez les données Prometheus en forme lisible par l’homme.

Accueil &gt; TopConsumerPopovers

CodeRef&lt;React.ComponentType&lt;TopConsumerPopoverProps&gt;[]&gt;

♪ oui ♪

Affiche le popover grand public au lieu d’une valeur simple.

console.cluster-overview/utilization-item

Ajoute un nouvel élément d’utilisation d’une vue d’ensemble du cluster.

Expand
Le nomLe type de valeurFacultatifDescription

le titre

chaîne de caractères

C) Non

Le titre de l’élément d’utilisation.

GetUtilizationQuery

CodeRef&lt;GetQuery&gt;

C) Non

Demande d’utilisation de Prometheus.

humaniser

CodeRef&lt;Humaniser&gt;

C) Non

Convertissez les données Prometheus en forme lisible par l’homme.

GetTotalQuery

CodeRef&lt;GetQuery&gt;

♪ oui ♪

Demande totale de Prometheus.

GetRequestQuery

CodeRef&lt;GetQuery&gt;

♪ oui ♪

Demande de requête Prometheus.

GetLimitQuery

CodeRef&lt;GetQuery&gt;

♪ oui ♪

La requête Prometheus limite.

À propos de TopConsumerPopover

CodeRef&lt;React.ComponentType&lt;TopConsumerPopoverProps&gt;&gt;

♪ oui ♪

Affiche le popover grand public au lieu d’une valeur simple.

console.context-fourr

Ajoute un nouveau fournisseur de contexte React à la racine de l’application de console Web.

Expand
Le nomLe type de valeurFacultatifDescription

fournisseur de services

CodeRef&lt;Provider&lt;T&gt;&gt;

C) Non

Composante fournisseur de contexte.

à utiliserValueHook

CodeRef&lt;() er T&gt;

C) Non

Crochet pour la valeur Contexte.

console.create-project-modal

Cette extension peut être utilisée pour passer un composant qui sera rendu à la place de la norme de création modale de projet.

Expand
Le nomLe type de valeurFacultatifDescription

component

CodeRef&lt;ModalComponent&lt;CreateProjectModalProps&gt;&gt;

C) Non

Composant à rendre à la place du projet de création modale.

console.dashboards/carte

Ajoute une nouvelle carte de tableau de bord.

Expand
Le nomLe type de valeurFacultatifDescription

onglet

chaîne de caractères

C) Non

L’ID de l’onglet tableau de bord auquel la carte sera ajoutée.

la position

'GAUCHE' | 'RIGHT' | 'MAIN'

C) Non

La position de la grille de la carte sur le tableau de bord.

component

CodeRef&lt;React.ComponentType&lt;{}&gt;&gt;

C) Non

Composant de carte de tableau de bord.

durée de vie

AperçuCardSpan

♪ oui ♪

La portée verticale de la carte dans la colonne. Ignoré pour les petits écrans; par défaut à 12.

console.dashboards/custom/overview/detail/item

Ajoute un article à la carte Détails du tableau de bord Aperçu.

Expand
Le nomLe type de valeurFacultatifDescription

le titre

chaîne de caractères

C) Non

Détails du titre de la carte

component

CodeRef&lt;React.ComponentType&lt;{}&gt;&gt;

C) Non

La valeur, rendue par le composant AperçuDetailItem

classe de valeurName

chaîne de caractères

♪ oui ♪

La valeur d’une classeName

isLoading

CodeRef&lt;() ▲ booléen&gt;

♪ oui ♪

Fonction renvoyant l’état de chargement du composant

erreur

CodeRef&lt;() - chaîne de caractères&gt;

♪ oui ♪

Fonction de retour des erreurs à afficher par le composant

console.dashboards/overview/activité/ressource

Ajoute une activité à la carte d’activité du tableau de bord d’aperçu où le déclenchement de l’activité est basé sur la surveillance d’une ressource Kubernetes.

Expand
Le nomLe type de valeurFacultatifDescription

k8sResource

CodeRef&lt;FirehoseResource &amp; { isList: true; }&gt;

C) Non

L’élément d’utilisation à remplacer.

component

CodeRef&lt;React.ComponentType&lt;K8sActivityProps&lt;T&gt;&gt;&gt;

C) Non

Le volet action.

isActivité

CodeRef&lt;(ressource: T) ▲ booléen&gt;

♪ oui ♪

Fonction qui détermine si la ressource donnée représente l’action. Chaque ressource représente, si elle n’est pas définie, l’activité.

GetTimestamp

CodeRef&lt;(ressource: T) er Date&gt;

♪ oui ♪

Horodatage pour l’action donnée, qui sera utilisé pour la commande.

console.dashboards/overview/santé/opérateur

Ajoute un sous-système de santé à la carte d’état du tableau de bord Aperçu, où la source d’état est une API Kubernetes REST.

Expand
Le nomLe type de valeurFacultatifDescription

le titre

chaîne de caractères

C) Non

Le titre de la section Opérateurs dans le menu contextuel.

les ressources

CodeRef&lt;FirehoseResource[]&gt;

C) Non

Kubernetes ressources qui seront récupérées et transmises à HealthHandler.

GetOperators WithStatuses

CodeRef&lt;GetOperators WithStatuses&lt;T&gt;&gt;

♪ oui ♪

Résout l’état des opérateurs.

l’opérateurRowLoader

CodeRef&lt;React.ComponentType&lt;OperatorRowProps&lt;T&gt;&gt;&gt;

♪ oui ♪

Chargeur pour composant de ligne pop-up.

afficherAllLink

chaîne de caractères

♪ oui ♪

Liens vers toutes les pages de ressources. Dans le cas contraire, une page de liste de la première ressource à partir de ressources est utilisée.

console.dashboards/overview/santé/prométhée

Ajoute un sous-système de santé à la carte d’état du tableau de bord Aperçu où la source du statut est Prometheus.

Expand
Le nomLe type de valeurFacultatifDescription

le titre

chaîne de caractères

C) Non

Le nom d’affichage du sous-système.

demandes de renseignements

chaîne[]

C) Non

Les requêtes de Prometheus.

HealthHandler

CodeRef&lt;PrometheusHealthHandler&gt;

C) Non

De résoudre la santé du sous-système.

des ressources supplémentaires

CodeRef&lt;FirehoseResource&gt;

♪ oui ♪

Des ressources supplémentaires qui seront récupérées et transmises à HealthHandler.

composant popup

CodeRef&lt;React.ComponentType&lt;PrometheusHealthPopupProps&gt;&gt;

♪ oui ♪

Chargeur pour le contenu du menu contextuel. Lorsqu’il est défini, un élément de santé est représenté comme un lien, ce qui ouvre un menu contextuel avec le contenu donné.

à propos de PopupTitle

chaîne de caractères

♪ oui ♪

Le titre du popover.

interditControlPlaneTopology

chaîne[]

♪ oui ♪

La topologie du plan de contrôle pour laquelle le sous-système doit être caché.

console.dashboards/overview/santé/ressource

Ajoute un sous-système de santé à la carte d’état du tableau de bord Aperçu où la source du statut est une ressource Kubernetes.

Expand
Le nomLe type de valeurFacultatifDescription

le titre

chaîne de caractères

C) Non

Le nom d’affichage du sous-système.

les ressources

CodeRef&lt;WatchK8sResources&lt;T&gt;&gt;

C) Non

Kubernetes des ressources qui seront récupérées et transmises à HealthHandler.

HealthHandler

CodeRef&lt;ResourceHealthHandler&lt;T&gt;&gt;

C) Non

De résoudre la santé du sous-système.

composant popup

CodeRef&lt;WatchK8sRésultats&lt;T&gt;&gt;

♪ oui ♪

Chargeur pour le contenu du menu contextuel. Lorsqu’il est défini, un élément de santé est représenté comme un lien, ce qui ouvre un menu contextuel avec le contenu donné.

à propos de PopupTitle

chaîne de caractères

♪ oui ♪

Le titre du popover.

console.dashboards/overview/santé/url

Ajoute un sous-système de santé à la carte d’état du tableau de bord Aperçu où la source du statut est une API Kubernetes REST.

Expand
Le nomLe type de valeurFacultatifDescription

le titre

chaîne de caractères

C) Non

Le nom d’affichage du sous-système.

l’URL

chaîne de caractères

C) Non

L’URL pour récupérer des données. Il sera préfixé avec l’URL Kubernetes de base.

HealthHandler

CodeRef&lt;URLHealthHandler&lt;T, K8sResourceCommon | K8sResourceCommon[]&gt;&gt;

C) Non

De résoudre la santé du sous-système.

des ressources supplémentaires

CodeRef&lt;FirehoseResource&gt;

♪ oui ♪

Des ressources supplémentaires qui seront récupérées et transmises à HealthHandler.

composant popup

CodeRef&lt;React.ComponentType&lt;{ healthResult?: T; healthResultEror?: k8sResult?: FirehoseResult&lt;R&gt;; }&gt;&gt;

♪ oui ♪

Chargeur pour le contenu popup. Lorsqu’il est défini, un élément de santé sera représenté comme un lien qui ouvre popup avec du contenu donné.

à propos de PopupTitle

chaîne de caractères

♪ oui ♪

Le titre du popover.

console.dashboards/overview/inventaire/item

Ajoute une tuile de ressource à la carte d’inventaire d’aperçu.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

CodeRef&lt;T&gt;

C) Non

Le modèle de ressource qui sera récupéré. J’avais l’habitude d’obtenir l’étiquette du modèle ou abbr.

carteur

CodeRef&lt;StatusGroupMapper&lt;T, R&gt;&gt;

♪ oui ♪

Fonction qui cartographie divers statuts en groupes.

Des ressources supplémentaires

CodeRef&lt;WatchK8sResources&lt;R&gt;&gt;

♪ oui ♪

Des ressources supplémentaires qui seront récupérées et transmises à la fonction mapper.

console.dashboards/overview/inventaire/item/groupe

Ajoute un groupe d’état de l’inventaire.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

L’ID du groupe d’état.

icône

CodeRef&lt;React.ReactElement&lt;any, string | React.JSXElementConstructor&lt;any&gt;&gt;

C) Non

Composant de réaction représentant l’icône du groupe d’état.

console.dashboards/overview/inventaire/item/replacement

Il remplace une carte d’inventaire d’aperçu.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

CodeRef&lt;T&gt;

C) Non

Le modèle de ressource qui sera récupéré. J’avais l’habitude d’obtenir l’étiquette du modèle ou abbr.

carteur

CodeRef&lt;StatusGroupMapper&lt;T, R&gt;&gt;

♪ oui ♪

Fonction qui cartographie divers statuts en groupes.

Des ressources supplémentaires

CodeRef&lt;WatchK8sResources&lt;R&gt;&gt;

♪ oui ♪

Des ressources supplémentaires qui seront récupérées et transmises à la fonction mapper.

console.dashboards/overview/prometheus/activité/ressource

Ajoute une activité à la carte d’activité de Prometheus Aperçu Dashboard où le déclenchement de l’activité est basé sur la surveillance d’une ressource Kubernetes.

Expand
Le nomLe type de valeurFacultatifDescription

demandes de renseignements

chaîne[]

C) Non

Des questions à regarder.

component

CodeRef&lt;React.ComponentType&lt;PrometheusActivityProps&gt;

C) Non

Le volet action.

isActivité

CodeRef&lt;(résultats: PrometheusResponse[]) ⋆ booléen&gt;

♪ oui ♪

Fonction qui détermine si la ressource donnée représente l’action. Chaque ressource représente, si elle n’est pas définie, l’activité.

console.dashboards/projet/overview/item

Ajoute une tuile de ressources à la carte d’inventaire d’aperçu du projet.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

CodeRef&lt;T&gt;

C) Non

Le modèle de ressource qui sera récupéré. J’avais l’habitude d’obtenir l’étiquette du modèle ou abbr.

carteur

CodeRef&lt;StatusGroupMapper&lt;T, R&gt;&gt;

♪ oui ♪

Fonction qui cartographie divers statuts en groupes.

Des ressources supplémentaires

CodeRef&lt;WatchK8sResources&lt;R&gt;&gt;

♪ oui ♪

Des ressources supplémentaires qui seront récupérées et transmises à la fonction mapper.

console.dashboards/tab

Ajoute un nouvel onglet de tableau de bord, placé après l’onglet Aperçu.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

Identifiant d’onglet unique, utilisé comme lien d’onglet href et lors de l’ajout de cartes à cet onglet.

la navsection

'Maison' | 'stockage'

C) Non

La section de navigation à laquelle appartient l’onglet.

le titre

chaîne de caractères

C) Non

Le titre de l’onglet.

console.file-upload

Cette extension peut être utilisée pour fournir un gestionnaire pour l’action de chute de fichier sur des extensions de fichier spécifiques.

Expand
Le nomLe type de valeurFacultatifDescription

fichiersExtensions

chaîne[]

C) Non

Extensions de fichiers supportées.

gestionnaire du gestionnaire

CodeRef&lt;FileUploadHandler&gt;

C) Non

Fonction qui gère l’action de chute de fichier.

console.flag

Donne un contrôle total sur les drapeaux des fonctionnalités de la console Web.

Expand
Le nomLe type de valeurFacultatifDescription

gestionnaire du gestionnaire

CodeRef&lt;FeatureFlagHandler&gt;

C) Non

Il est utilisé pour définir ou désinitialiser des drapeaux de caractéristiques arbitraires.

console.flag/hookProvider

Donne un contrôle total sur les drapeaux des fonctionnalités de la console Web avec des gestionnaires de crochets.

Expand
Le nomLe type de valeurFacultatifDescription

gestionnaire du gestionnaire

CodeRef&lt;FeatureFlagHandler&gt;

C) Non

Il est utilisé pour définir ou désinitialiser des drapeaux de caractéristiques arbitraires.

console.flag/modèle

Ajoute un nouveau drapeau de fonctionnalité de console Web piloté par la présence d’un objet CustomResourceDefinition (CRD) sur le cluster.

Expand
Le nomLe type de valeurFacultatifDescription

drapeau

chaîne de caractères

C) Non

Le nom du drapeau à définir après le CRD est détecté.

le modèle

ExtensionK8sModel

C) Non

Le modèle qui fait référence à un CRD.

console.global-config

Cette extension identifie une ressource utilisée pour gérer la configuration du cluster. Le lien vers la ressource sera ajouté à la page Administration → Paramètres de cluster → Configuration.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

Identifiant unique pour l’instance de ressource de configuration de cluster.

le nom

chaîne de caractères

C) Non

Le nom de l’instance de ressource de configuration du cluster.

le modèle

ExtensionK8sModel

C) Non

Le modèle qui fait référence à une ressource de configuration de cluster.

espace de noms

chaîne de caractères

C) Non

L’espace de noms de l’instance de ressource de configuration du cluster.

console.model-metadata

Personnalisez l’affichage des modèles en dépassant les valeurs récupérées et générées par la découverte d’API.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

ExtensionK8sGroupModel

C) Non

Le modèle à personnaliser. Il peut spécifier uniquement un groupe, ou une version et un type optionnels.

badge

À propos de ModelBadge

♪ oui ♪

Considérer ou non ce modèle de référence en tant qu’aperçu technologique ou aperçu des développeurs.

couleur

chaîne de caractères

♪ oui ♪

La couleur à associer à ce modèle.

étiquette

chaîne de caractères

♪ oui ♪

L’emporter sur l’étiquette. Il faut que l’on fournisse bienveillance.

labelPlural

chaîne de caractères

♪ oui ♪

L’emporter sur l’étiquette plurielle. Il faut que l’on fournisse bienveillance.

abbr

chaîne de caractères

♪ oui ♪

Personnaliser l’abréviation. Défaut pour tous les caractères majuscules en nature, jusqu’à 4 caractères de long. Cela exige que ce type soit fourni.

console.navigation/href

Cette extension peut être utilisée pour contribuer un élément de navigation qui pointe vers un lien spécifique dans l’interface utilisateur.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

Identificateur unique pour cet article.

le nom

chaîne de caractères

C) Non

Le nom de cet article.

href

chaîne de caractères

C) Non

La valeur du lien href.

le point de vue

chaîne de caractères

♪ oui ♪

L’ID de perspective auquel appartient cet article. Dans le cas contraire, contribue à la perspective par défaut.

la section

chaîne de caractères

♪ oui ♪

La section de navigation à laquelle appartient cet article. Dans le cas contraire, rendez cet élément comme un lien de niveau supérieur.

Attributs de données

{ [clé: chaîne]: chaîne; }

♪ oui ♪

Ajoute des attributs de données au DOM.

Commence par

chaîne[]

♪ oui ♪

Indiquez cet élément comme actif lorsque l’URL commence par l’un de ces chemins.

insérer avant

chaîne | string[]

♪ oui ♪

Insérez ce point avant l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé.

insérer après

chaîne | string[]

♪ oui ♪

Insérez cet élément après l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé. insertAvant prend la priorité.

espace de nom

booléen

♪ oui ♪

Lorsqu’il est vrai, ajoute /ns/active-namespace à la fin.

le préfixNamespaced

booléen

♪ oui ♪

Lorsque c’est vrai, ajoute /k8s/ns/active-namespace au début.

console.navigation/resource-cluster

Cette extension peut être utilisée pour contribuer un élément de navigation qui pointe vers une page de détails de ressource de cluster. Le modèle K8s de cette ressource peut être utilisé pour définir l’élément de navigation.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

Identificateur unique pour cet article.

le modèle

ExtensionK8sModel

C) Non

Le modèle pour lequel cet élément de navigation est lié.

le point de vue

chaîne de caractères

♪ oui ♪

L’ID de perspective auquel appartient cet article. Dans le cas contraire, contribue à la perspective par défaut.

la section

chaîne de caractères

♪ oui ♪

La section de navigation à laquelle appartient cet article. Dans le cas contraire, rendez cet élément comme un lien de niveau supérieur.

Attributs de données

{ [clé: chaîne]: chaîne; }

♪ oui ♪

Ajoute des attributs de données au DOM.

Commence par

chaîne[]

♪ oui ♪

Indiquez cet élément comme actif lorsque l’URL commence par l’un de ces chemins.

insérer avant

chaîne | string[]

♪ oui ♪

Insérez ce point avant l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé.

insérer après

chaîne | string[]

♪ oui ♪

Insérez cet élément après l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé. insertAvant prend la priorité.

le nom

chaîne de caractères

♪ oui ♪

Remplace le nom par défaut. Dans le cas contraire, le nom du lien sera égal à la valeur plurielle du modèle.

console.navigation/ressource-ns

Cette extension peut être utilisée pour contribuer un élément de navigation qui pointe vers une page de détails de ressource espacement par nom. Le modèle K8s de cette ressource peut être utilisé pour définir l’élément de navigation.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

Identificateur unique pour cet article.

le modèle

ExtensionK8sModel

C) Non

Le modèle pour lequel cet élément de navigation est lié.

le point de vue

chaîne de caractères

♪ oui ♪

L’ID de perspective auquel appartient cet article. Dans le cas contraire, contribue à la perspective par défaut.

la section

chaîne de caractères

♪ oui ♪

La section de navigation à laquelle appartient cet article. Dans le cas contraire, rendez cet élément comme un lien de niveau supérieur.

Attributs de données

{ [clé: chaîne]: chaîne; }

♪ oui ♪

Ajoute des attributs de données au DOM.

Commence par

chaîne[]

♪ oui ♪

Indiquez cet élément comme actif lorsque l’URL commence par l’un de ces chemins.

insérer avant

chaîne | string[]

♪ oui ♪

Insérez ce point avant l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé.

insérer après

chaîne | string[]

♪ oui ♪

Insérez cet élément après l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé. insertAvant prend la priorité.

le nom

chaîne de caractères

♪ oui ♪

Remplace le nom par défaut. Dans le cas contraire, le nom du lien sera égal à la valeur plurielle du modèle.

console.navigation/section

Cette extension peut être utilisée pour définir une nouvelle section d’éléments de navigation dans l’onglet navigation.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

Identificateur unique pour cet article.

le point de vue

chaîne de caractères

♪ oui ♪

L’ID de perspective auquel appartient cet article. Dans le cas contraire, contribue à la perspective par défaut.

Attributs de données

{ [clé: chaîne]: chaîne; }

♪ oui ♪

Ajoute des attributs de données au DOM.

insérer avant

chaîne | string[]

♪ oui ♪

Insérez ce point avant l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé.

insérer après

chaîne | string[]

♪ oui ♪

Insérez cet élément après l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé. insertAvant prend la priorité.

le nom

chaîne de caractères

♪ oui ♪

Le nom de cette section. En cas de non-fourniture, seul un séparateur sera indiqué au-dessus de la section.

console.navigation/séparateur

Cette extension peut être utilisée pour ajouter un séparateur entre les éléments de navigation dans la navigation.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

Identificateur unique pour cet article.

le point de vue

chaîne de caractères

♪ oui ♪

L’ID de perspective auquel appartient cet article. Dans le cas contraire, contribue à la perspective par défaut.

la section

chaîne de caractères

♪ oui ♪

La section de navigation à laquelle appartient cet article. Dans le cas contraire, rendez cet élément comme un lien de niveau supérieur.

Attributs de données

{ [clé: chaîne]: chaîne; }

♪ oui ♪

Ajoute des attributs de données au DOM.

insérer avant

chaîne | string[]

♪ oui ♪

Insérez ce point avant l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé.

insérer après

chaîne | string[]

♪ oui ♪

Insérez cet élément après l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé. insertAvant prend la priorité.

console.page/ressource/détails
Expand
Le nomLe type de valeurFacultatifDescription

le modèle

ExtensionK8sGroupKindModel

C) Non

Le modèle pour lequel cette page de ressource se connecte.

component

CodeRef&lt;React.ComponentType&lt;{ match: match&lt;{}&gt;; espace de noms: chaîne; modèle: ExtensionK8sModel; }&gt;&gt;

C) Non

Le composant à rendre lorsque l’itinéraire correspond.

console.page/ressource/liste

Ajoute une nouvelle page de liste de ressources au routeur Console.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

ExtensionK8sGroupKindModel

C) Non

Le modèle pour lequel cette page de ressource se connecte.

component

CodeRef&lt;React.ComponentType&lt;{ match: match&lt;{}&gt;; espace de noms: chaîne; modèle: ExtensionK8sModel; }&gt;&gt;

C) Non

Le composant à rendre lorsque l’itinéraire correspond.

console.page/route

Ajoute une nouvelle page au routeur de console Web. Consultez React Router.

Expand
Le nomLe type de valeurFacultatifDescription

component

CodeRef&lt;React.ComponentType&lt;RouteComponentProps&lt;{}, StaticContext, n’importe quel&gt;&gt;&gt;

C) Non

Le composant à rendre lorsque l’itinéraire correspond.

le chemin

chaîne | string[]

C) Non

Chemin d’URL valide ou tableau de chemins que le chemin d’accès à-regexp@^1.7.0 comprend.

le point de vue

chaîne de caractères

♪ oui ♪

La perspective à laquelle appartient cette page. Dans la mesure où elle n’est pas précisée, elle contribue à toutes les perspectives.

C’est exact

booléen

♪ oui ♪

Lorsque true, ne correspondra que si le chemin correspond exactement à l’emplacement.pathname.

console.page/route/standalone

Ajoute une nouvelle page autonome, rendue en dehors de la mise en page commune, au routeur de console Web. Consultez React Router.

Expand
Le nomLe type de valeurFacultatifDescription

component

CodeRef&lt;React.ComponentType&lt;RouteComponentProps&lt;{}, StaticContext, n’importe quel&gt;&gt;&gt;

C) Non

Le composant à rendre lorsque l’itinéraire correspond.

le chemin

chaîne | string[]

C) Non

Chemin d’URL valide ou tableau de chemins que le chemin d’accès à-regexp@^1.7.0 comprend.

C’est exact

booléen

♪ oui ♪

Lorsque true, ne correspondra que si le chemin correspond exactement à l’emplacement.pathname.

console.perspective

Cette extension apporte une nouvelle perspective à la console, ce qui permet la personnalisation du menu de navigation.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

L’identifiant de perspective.

le nom

chaîne de caractères

C) Non

Le nom d’affichage de la perspective.

icône

CodeRef&lt;LazyComponent&gt;

C) Non

L’icône d’affichage de perspective.

landingPageURL

CodeRef&lt;(flags: { [key: string]: boolean; }, isFirstVisit: booléen)

C) Non

La fonction pour obtenir l’URL de page de destination perspective.

ImportRedirectURL

CodeRef&lt;(namespace: string)

C) Non

La fonction pour obtenir une URL de redirection pour le flux d’importation.

défaut par défaut

booléen

♪ oui ♪

La perspective est-elle la valeur par défaut? Il ne peut y avoir qu’un seul défaut.

defaultPins

ExtensionK8sModel[]

♪ oui ♪

Les ressources épinglées par défaut sur le nav

détection d’utilisationPerspective

CodeRef&lt;() ▲ [boolean, booléen]&gt;

♪ oui ♪

Le crochet pour détecter la perspective par défaut

console.project-overview/inventaire-item

Ajoute un nouvel élément d’inventaire à la page Aperçu du projet.

Expand
Le nomLe type de valeurFacultatifDescription

component

CodeRef&lt;React.ComponentType&lt;{ projectName: chaîne; }&gt;&gt;

C) Non

Le composant à rendre.

console.project-overview/utilization-item

Ajoute un nouvel élément d’utilisation de la vue d’ensemble du projet.

Expand
Le nomLe type de valeurFacultatifDescription

le titre

chaîne de caractères

C) Non

Le titre de l’élément d’utilisation.

GetUtilizationQuery

CodeRef&lt;GetProjectQuery&gt;

C) Non

Demande d’utilisation de Prometheus.

humaniser

CodeRef&lt;Humaniser&gt;

C) Non

Convertissez les données Prometheus en forme lisible par l’homme.

GetTotalQuery

CodeRef&lt;GetProjectQuery&gt;

♪ oui ♪

Demande totale de Prometheus.

GetRequestQuery

CodeRef&lt;GetProjectQuery&gt;

♪ oui ♪

Demande de requête Prometheus.

GetLimitQuery

CodeRef&lt;GetProjectQuery&gt;

♪ oui ♪

La requête Prometheus limite.

À propos de TopConsumerPopover

CodeRef&lt;React.ComponentType&lt;TopConsumerPopoverProps&gt;&gt;

♪ oui ♪

Affiche le popover le plus grand consommateur au lieu d’une valeur simple.

console.pvc/alert

Cette extension peut être utilisée pour apporter des alertes personnalisées sur la page de détails en PVC.

Expand
Le nomLe type de valeurFacultatifDescription

alerte

CodeRef&lt;React.ComponentType&lt;{ pvc: K8sResourceCommon; }&gt;&gt;

C) Non

Le composant d’alerte.

console.pvc/create-prop

Cette extension peut être utilisée pour spécifier des propriétés supplémentaires qui seront utilisées lors de la création de ressources en PVC sur la page de liste de PVC.

Expand
Le nomLe type de valeurFacultatifDescription

étiquette

chaîne de caractères

C) Non

Étiquette pour l’action d’accessoires de création.

le chemin

chaîne de caractères

C) Non

Chemin pour l’action de l’prop de création.

console.pvc/delete

Cette extension permet de s’accrocher à la suppression des ressources en PVC. Il peut fournir une alerte avec des informations supplémentaires et une logique de suppression de PVC personnalisée.

Expand
Le nomLe type de valeurFacultatifDescription

le prédicat

CodeRef&lt;(pvc: K8sResourceCommon) ⋆ booléen&gt;

C) Non

Indiquez s’il faut utiliser l’extension ou non.

à propos dePVCKill

CodeRef&lt;(pvc: K8sResourceCommon) ▲ Promesse&lt;void&gt;&gt;

C) Non

La méthode pour l’opération de suppression de PVC.

alerte

CodeRef&lt;React.ComponentType&lt;{ pvc: K8sResourceCommon; }&gt;&gt;

C) Non

Composant d’alerte pour afficher des informations supplémentaires.

console.pvc/status
Expand
Le nomLe type de valeurFacultatifDescription

la priorité

le numéro

C) Non

La priorité pour la composante statut. La plus grande valeur signifie une priorité plus élevée.

status

CodeRef&lt;React.ComponentType&lt;{ pvc: K8sResourceCommon; }&gt;&gt;

C) Non

La composante statut.

le prédicat

CodeRef&lt;(pvc: K8sResourceCommon) ⋆ booléen&gt;

C) Non

Indiquez s’il faut rendre le composant statut ou non.

console.redux-réducteur

Ajoute un nouveau réducteur au magasin Console Redux qui fonctionne sur les plugins.&lt;scope&gt; sous-état.

Expand
Le nomLe type de valeurFacultatifDescription

champ d’application

chaîne de caractères

C) Non

La clé pour représenter le sous-état géré par réducteur dans l’objet d’état Redux.

le réducteur

CodeRef&lt;Réducteur&lt;any, AnyAction&gt;&gt;

C) Non

La fonction réductrice, fonctionnant sur le sous-état géré par réducteur.

console.resource/créer

Cette extension permet aux plugins de fournir un composant personnalisé (c’est-à-dire un assistant ou un formulaire) pour des ressources spécifiques, qui seront rendues, lorsque les utilisateurs essaient de créer une nouvelle instance de ressources.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

ExtensionK8sModel

C) Non

Le modèle pour lequel cette page de ressources de création sera rendue

component

CodeRef&lt;React.ComponentType&lt;CreateResourceComponentProps&gt;&gt;

C) Non

Le composant à rendre lorsque le modèle correspond

console.resource/détails-item

Ajoute un nouvel élément de détails au résumé de la ressource par défaut sur la page de détails.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

ExtensionK8sModel

C) Non

Le groupe, la version et le genre d’API de la ressource sujet.

carte d’identité

chaîne de caractères

C) Non

Identificateur unique.

colonne

DétailsItemColumn

C) Non

Détermine si l’élément apparaîtra dans la colonne 'gauche' ou 'droite' du résumé de la ressource sur la page de détails. Défaut: 'right'

le titre

chaîne de caractères

C) Non

Le titre de l’article détaillé.

le chemin

chaîne de caractères

♪ oui ♪

Chemin optionnel et entièrement qualifié vers une propriété de ressource à utiliser comme valeur d’élément de détail. Les valeurs de type primitif peuvent être rendues directement. La propriété du composant est utilisée pour traiter d’autres types de données.

component

CodeRef&lt;React.ComponentType&lt;DétailsItem ComponentProps&lt;K8sResourceCommon, n’importe quel&gt;&gt;&gt;

♪ oui ♪

Composant React optionnel qui rendra la valeur de l’élément détaillé.

triWeight

le numéro

♪ oui ♪

Le poids de tri optionnel, par rapport à tous les autres éléments de détails dans la même colonne. Il est représenté par n’importe quel JavaScriptNumber valide. Les éléments de chaque colonne sont triés indépendamment, les plus bas au plus haut. Les articles sans poids de tri sont triés après les articles avec des poids de tri.

console.storage-classe/fournisseur

Ajoute un nouveau provisionneur de classe de stockage comme option lors de la création de classe de stockage.

Expand
Le nomLe type de valeurFacultatifDescription

CSI

Détails de Provisioner

♪ oui ♪

Conteneur Type de provisionneur d’interface de stockage

D’AUTRES

Détails de Provisioner

♪ oui ♪

Autre type de provisionneur

console.storage-fournisseur

Cette extension peut être utilisée pour aider un nouveau fournisseur de stockage à sélectionner, lors de la fixation du stockage et d’un composant spécifique au fournisseur.

Expand
Le nomLe type de valeurFacultatifDescription

le nom

chaîne de caractères

C) Non

Affiché le nom du fournisseur.

Composante

CodeRef&lt;React.ComponentType&lt;Partial&lt;RouteComponentProps&lt;{}, StaticContext, n’importe quel&gt;&gt;&gt;&gt;&gt;

C) Non

Composant spécifique du fournisseur à rendre.

console.tab

Ajoute un onglet à une nav horizontale correspondant au contextId.

Expand
Le nomLe type de valeurFacultatifDescription

contextId

chaîne de caractères

C) Non

ID contextuel attribué à la nav horizontale dans laquelle l’onglet sera injecté. Les valeurs possibles: dev-console-observe

le nom

chaîne de caractères

C) Non

L’étiquette d’affichage de l’onglet

href

chaîne de caractères

C) Non

La href annexée à l’URL existante

component

CodeRef&lt;React.ComponentType&lt;PageComponentProps&lt;K8sResourceCommon&gt;&gt;&gt;

C) Non

Composant de contenu d’onglet.

console.tab/horizontalNav

Cette extension peut être utilisée pour ajouter un onglet sur la page de détails des ressources.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

ExtensionK8sKindVersionModel

C) Non

Le modèle pour lequel ce fournisseur affiche l’onglet.

la page

{ nom: chaîne; href: chaîne; }

C) Non

La page à afficher dans l’onglet horizontal. Il prend le nom de l’onglet comme nom et href de l’onglet

component

CodeRef&lt;React.ComponentType&lt;PageComponentProps&lt;K8sResourceCommon&gt;&gt;&gt;

C) Non

Le composant à rendre lorsque l’itinéraire correspond.

console.télémétrie/écouteur

Ce composant peut être utilisé pour enregistrer une fonction d’auditeur recevant des événements de télémétrie. Ces événements comprennent l’identification de l’utilisateur, la navigation de page et d’autres événements spécifiques à l’application. L’auditeur peut utiliser ces données à des fins de reporting et d’analyse.

Expand
Le nomLe type de valeurFacultatifDescription

l’auditeur

CodeRef&lt;TelemetryEventListener&gt;

C) Non

Écouter les événements de télémétrie

console.topologie/adaptateur/construction

BuildAdapter contribue à un adaptateur pour adapter l’élément aux données qui peuvent être utilisées par le composant Build.

Expand
Le nomLe type de valeurFacultatifDescription

adapter

CodeRef&lt;(élément: GraphElement) ⋆ AdaptateurDataType&lt;BuildConfigData&gt; | undefined&gt;

C) Non

Adaptateur pour adapter l’élément aux données qui peuvent être utilisées par le composant Build.

console.topologie/adaptateur/réseau

L’adaptateur NetworkAdapater permet d’adapter l’élément aux données qui peuvent être utilisées par le composant Networking.

Expand
Le nomLe type de valeurFacultatifDescription

adapter

CodeRef&lt;(élément: GraphElement) ⋆ NetworkAdapterType | undefined&gt;

C) Non

Adaptateur pour adapter l’élément aux données qui peuvent être utilisées par le composant Networking.

console.topologie/adaptateur/pod

Le PodAdapter contribue à adapter l’élément aux données qui peuvent être utilisées par le composant Pod.

Expand
Le nomLe type de valeurFacultatifDescription

adapter

CodeRef&lt;(élément: GraphElement) ☰ AdaptateurDataType&lt;PodsAdapterDataType&gt; | undefined&gt;

C) Non

Adaptateur pour adapter l’élément aux données qui peuvent être utilisées par le composant Pod.

console.topologie/composant/usine

Getter pour un ViewComponentFactory.

Expand
Le nomLe type de valeurFacultatifDescription

GetFactory

CodeRef&lt;ViewComponentFactory&gt;

C) Non

Getter pour un ViewComponentFactory.

console.topologie/création/connecteur

Getter pour la fonction de connecteur de création.

Expand
Le nomLe type de valeurFacultatifDescription

GetCreateConnector

CodeRef&lt;CreateConnectionGetter&gt;

C) Non

Getter pour la fonction de connecteur de création.

console.topologie/données/usine

Extension de l’usine de modèle de topologie

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

ID unique pour l’usine.

la priorité

le numéro

C) Non

La priorité pour l’usine

les ressources

Accueil &gt; WatchK8sResourcesGeneric

♪ oui ♪

Les ressources à récupérer à partir du crochet useK8sWatchResources.

clés de la charge de travail

chaîne[]

♪ oui ♪

Clés dans les ressources contenant des charges de travail.

GetDataModel

CodeRef&lt;TopologyDataModelGetter&gt;

♪ oui ♪

Getter pour l’usine de modèles de données.

isResourceDepicted

CodeRef&lt;TopologyDataModelDepicted&gt;

♪ oui ♪

Getter pour la fonction pour déterminer si une ressource est représentée par cette usine de modèle.

GetDataModelReconciler

CodeRef&lt;TopologyDataModelReconciler&gt;

♪ oui ♪

Getter pour la fonction de concilier le modèle de données après que tous les modèles d’extensions ont chargé.

console.topologie/décorateur/fournisseur

Extension du fournisseur de décorateur de topologie

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

ID pour décorateur topologique spécifique à l’extension

la priorité

le numéro

C) Non

La priorité pour le décorateur topologique spécifique à l’extension

le quadrant

À propos de TopologyQuadrant

C) Non

Quadrant pour décorateur topologique spécifique à l’extension

décorateur

CodeRef&lt;TopologyDecoratorGetter&gt;

C) Non

Décorateur spécifique à l’extension

console.topologie/détails/ressource-alert

DetailsResourceAlert apporte une alerte pour un contexte de topologie spécifique ou un élément graphique.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

L’ID de cette alerte. Utilisé pour enregistrer l’état si l’alerte ne doit pas être affichée après le rejet.

fournisseur de contenu

CodeRef&lt;(élément: GraphElement) er DétailsResourceAlertContenu | null&gt;

C) Non

Crochet pour retourner le contenu de l’alerte.

DetailsResourceLink apporte un lien pour un contexte de topologie spécifique ou un élément graphique.

Expand
Le nomLe type de valeurFacultatifDescription

lien

CodeRef&lt;(élément: GraphElement) ⋆ React.Component | undefined&gt;

C) Non

Indiquez le lien de ressource s’il est fourni, autrement indéfini. Les propriétés ResourceIcon et ResourceLink sont utilisées pour les styles.

la priorité

le numéro

♪ oui ♪

La première chance de créer le lien d’une usine de priorité plus élevée.

console.topologie/détails/tab

DetailsTab fournit un onglet pour le panneau de détails de topologie.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

Identifiant unique pour cet onglet de détails.

étiquette

chaîne de caractères

C) Non

L’étiquette de l’onglet à afficher dans l’interface utilisateur.

insérer avant

chaîne | string[]

♪ oui ♪

Insérez ce point avant l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé.

insérer après

chaîne | string[]

♪ oui ♪

Insérez cet élément après l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé. L’insertionAvant la valeur a priorité.

console.topologie/détails/tab-section

DetailsTabSection apporte une section pour un onglet spécifique dans le panneau de détails de topologie.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

Identificateur unique pour cette section d’onglet détails.

onglet

chaîne de caractères

C) Non

L’onglet parent ID auquel cette section devrait contribuer.

fournisseur de services

CodeRef&lt;DétailsTabsectionExtensionHook&gt;

C) Non

Crochet qui renvoie un composant, ou si nul ou indéfini, rend dans la barre latérale topologique. Composant SDK: &lt;titre de section=\{}&gt;…​ zone rembourrée

la section

CodeRef&lt;(élément: GraphElement, renderNull?: () er null) er React.Component | undefined&gt;

C) Non

Déprécié: Fallback si aucun fournisseur n’est défini. renderNull est déjà un no-op.

insérer avant

chaîne | string[]

♪ oui ♪

Insérez ce point avant l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé.

insérer après

chaîne | string[]

♪ oui ♪

Insérez cet élément après l’article référencé ici. Dans le cas des tableaux, le premier trouvé dans l’ordre est utilisé. L’insertionAvant la valeur a priorité.

console.topologie/affichage/filtres

Extension des filtres d’affichage topologie

Expand
Le nomLe type de valeurFacultatifDescription

GetTopologyFilters

CodeRef&lt;() ⋆ TopologyDisplayOption[]&gt;

C) Non

Getter pour filtres topologiques spécifiques à l’extension

appliquerDisplayOptions

CodeRef&lt;TopologyApplyDisplayOptions&gt;

C) Non

Fonction pour appliquer des filtres au modèle

console.topologie/relation/fournisseur

Extension de connecteur de fournisseur de relation topologie

Expand
Le nomLe type de valeurFacultatifDescription

fournit

CodeRef&lt;RelationProviderProvides&gt;

C) Non

Déterminer si une connexion peut être créée entre la source et le nœud cible

info de l’outil

chaîne de caractères

C) Non

Info-outil pour montrer lorsque l’opération du connecteur est survolée au-dessus de la cible de chute, par exemple, "Créer un connecteur visuel"

créer

CodeRef&lt;RelationshipProviderCreate&gt;

C) Non

Rappel à exécuter lorsque le connecteur tombe sur le nœud cible pour créer une connexion

la priorité

le numéro

C) Non

La priorité pour la relation, plus élevée sera préférée en cas de multiples

console.user-préférence/groupe

Cette extension peut être utilisée pour ajouter un groupe sur la page de préférences utilisateur de la console. Il apparaîtra comme une option d’onglet vertical sur la page de préférences utilisateur de la console.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

ID utilisé pour identifier le groupe de préférences utilisateur.

étiquette

chaîne de caractères

C) Non

L’étiquette du groupe de préférences utilisateur

insérer avant

chaîne de caractères

♪ oui ♪

ID du groupe de préférences utilisateur avant lequel ce groupe doit être placé

insérer après

chaîne de caractères

♪ oui ♪

ID du groupe de préférences utilisateur après quoi ce groupe doit être placé

console.user-préférence/item

Cette extension peut être utilisée pour ajouter un élément au groupe de préférences utilisateur sur la page des préférences de l’utilisateur de la console.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

ID utilisé pour identifier l’élément de préférence utilisateur et référencé dans insert After et insertAvant de définir la commande d’article

étiquette

chaîne de caractères

C) Non

L’étiquette de la préférence utilisateur

description

chaîne de caractères

C) Non

La description de la préférence de l’utilisateur

le champ

UserPreferenceField

C) Non

Les options de champ d’entrée utilisées pour rendre les valeurs pour définir la préférence de l’utilisateur

groupe de travail

chaîne de caractères

♪ oui ♪

Identifiants utilisés pour identifier les groupes de préférences d’utilisateur auxquels l’élément appartient

insérer avant

chaîne de caractères

♪ oui ♪

ID de l’élément de préférence utilisateur avant lequel cet élément doit être placé

insérer après

chaîne de caractères

♪ oui ♪

ID de l’élément de préférence utilisateur après lequel cet élément doit être placé

console.yaml-template

Les modèles YAML pour l’édition des ressources via l’éditeur yaml.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

ExtensionK8sModel

C) Non

Le modèle associé au modèle.

le modèle

CodeRef&lt;string&gt;

C) Non

Le modèle YAML.

le nom

chaîne de caractères

C) Non

Le nom du modèle. Utilisez le nom par défaut pour marquer ceci comme modèle par défaut.

dev-console.add/action

Cette extension permet aux plugins de contribuer à ajouter un élément d’action à la page d’ajout de perspective du développeur. À titre d’exemple, un plugin Serverless peut ajouter un nouvel élément d’action pour ajouter des fonctions sans serveur à la page d’ajout de la console de développeur.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

ID utilisé pour identifier l’action.

étiquette

chaîne de caractères

C) Non

L’étiquette de l’action.

description

chaîne de caractères

C) Non

La description de l’action.

href

chaîne de caractères

C) Non

Le href vers lequel naviguer.

groupe de travail

chaîne de caractères

♪ oui ♪

ID utilisé pour identifier les groupes d’action auxquels l’action appartient.

icône

CodeRef&lt;React.ReactNode&gt;

♪ oui ♪

L’icône d’affichage de perspective.

AccessReview

AccessReviewResourceAttributes[]

♪ oui ♪

Examen d’accès optionnel pour contrôler la visibilité ou l’activation de l’action.

dev-console.add/action-groupe

Cette extension permet aux plugins de contibuter un groupe dans la page d’ajout de la console de développeur. Les groupes peuvent être référencés par des actions, qui seront regroupées dans la page d’action additionnelle en fonction de leur définition d’extension. À titre d’exemple, un plugin Serverless peut contribuer à un groupe Serverless et à plusieurs actions d’ajout.

Expand
Le nomLe type de valeurFacultatifDescription

carte d’identité

chaîne de caractères

C) Non

ID utilisé pour identifier le groupe d’action

le nom

chaîne de caractères

C) Non

Le titre du groupe d’action

insérer avant

chaîne de caractères

♪ oui ♪

ID du groupe d’action devant lequel ce groupe doit être placé

insérer après

chaîne de caractères

♪ oui ♪

ID du groupe d’action après lequel ce groupe doit être placé

dev-console.import/environnement

Cette extension peut être utilisée pour spécifier des champs de variables d’environnement de construction supplémentaires sous le sélecteur d’image du constructeur dans le formulaire d’importation git de console de développement. Lorsqu’ils sont définis, les champs remplacent les variables d’environnement du même nom dans la section build.

Expand
Le nomLe type de valeurFacultatifDescription

imageStreamName

chaîne de caractères

C) Non

Le nom du flux d’images pour fournir des variables d’environnement personnalisées pour

imageStreamTags

chaîne[]

C) Non

Liste des balises de flux d’images prises en charge

les environnements

Environnement de l’image[]

C) Non

Liste des variables d’environnement

console.dashboards/overview/detail/item

Désapprouvé. utilisez CustomOverviewDetailItem type à la place

Expand
Le nomLe type de valeurFacultatifDescription

component

CodeRef&lt;React.ComponentType&lt;{}&gt;&gt;

C) Non

La valeur, basée sur le composant DetailItem

console.page/ressource/tab

Déprécié. À la place, utilisez console.tab/horizontalNav. Ajoute une nouvelle page d’onglet ressource au routeur Console.

Expand
Le nomLe type de valeurFacultatifDescription

le modèle

ExtensionK8sGroupKindModel

C) Non

Le modèle pour lequel cette page de ressource se connecte.

component

CodeRef&lt;React.ComponentType&lt;RouteComponentProps&lt;{}, StaticContext, n’importe quel&gt;&gt;&gt;

C) Non

Le composant à rendre lorsque l’itinéraire correspond.

le nom

chaîne de caractères

C) Non

Le nom de l’onglet.

href

chaîne de caractères

♪ oui ♪

Href optionnel pour le lien de l’onglet. Dans le cas contraire, le premier chemin est utilisé.

C’est exact

booléen

♪ oui ♪

Lorsque true, ne correspondra que si le chemin correspond exactement à l’emplacement.pathname.

5.5.2. API de plugin dynamique

à utiliserActivePerspective

Crochet qui fournit la perspective actuellement active et un rappel pour définir la perspective active. Il renvoie un tuple contenant la perspective active actuelle et le rappel de décalage.

Exemple :

const Component: React.FC = (props) => {
   const [activePerspective, setActivePerspective] = useActivePerspective();
   return <select
     value={activePerspective}
     onChange={(e) => setActivePerspective(e.target.value)}
   >
     {
       // ...perspective options
     }
   </select>
}
Copy to Clipboard Toggle word wrap

GreenCheckCircleIcon

Composant pour l’affichage d’une icône de cercle de cocher vert.

Exemple :

<GreenCheckCircleIcon title="Healthy" />
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

Le nom de classe

(facultatif) nom de classe supplémentaire pour le composant

le titre

(facultatif) titre de l’icône

la taille

(facultatif) taille de l’icône: (sm, md, lg, xl)

Le RedExclamationCircleIcon

Composant pour afficher une icône de cercle de marque d’exclamation rouge.

Exemple :

<RedExclamationCircleIcon title="Failed" />
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

Le nom de classe

(facultatif) nom de classe supplémentaire pour le composant

le titre

(facultatif) titre de l’icône

la taille

(facultatif) taille de l’icône: (sm, md, lg, xl)

JauneExclamationTriangleIcon

Composant pour afficher une icône d’exclamation triangle jaune.

Exemple :

<YellowExclamationTriangleIcon title="Warning" />
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

Le nom de classe

(facultatif) nom de classe supplémentaire pour le composant

le titre

(facultatif) titre de l’icône

la taille

(facultatif) taille de l’icône: (sm, md, lg, xl)

BlueInfoCircleIcon

Composant pour afficher une icône bleue de cercle d’informations.

Exemple :

<BlueInfoCircleIcon title="Info" />
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

Le nom de classe

(facultatif) nom de classe supplémentaire pour le composant

le titre

(facultatif) titre de l’icône

la taille

(facultatif) taille de l’icône: (sm", 'md', 'lg', 'xl')

ErreurStatus

Composant pour afficher un statut d’erreur popover.

Exemple :

<ErrorStatus title={errorMsg} />
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

le titre

(facultatif) texte d’état

icône seule

(facultatif) si true, affiche uniquement l’icône

à propos de NoTooltip

(facultatif) si true, tooltip n’est pas affiché

Le nom de classe

(facultatif) nom de classe supplémentaire pour le composant

à propos de PopoverTitle

(facultatif) titre pour popover

InfoStatus

Composant pour afficher un popover d’état d’information.

Exemple :

<InfoStatus title={infoMsg} />
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

le titre

(facultatif) texte d’état

icône seule

(facultatif) si true, affiche uniquement l’icône

à propos de NoTooltip

(facultatif) si true, tooltip n’est pas affiché

Le nom de classe

(facultatif) nom de classe supplémentaire pour le composant

à propos de PopoverTitle

(facultatif) titre pour popover

État des progrès

Composant pour afficher un popover d’état en progression.

Exemple :

<ProgressStatus title={progressMsg} />
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

le titre

(facultatif) texte d’état

icône seule

(facultatif) si true, affiche uniquement l’icône

à propos de NoTooltip

(facultatif) si true, tooltip n’est pas affiché

Le nom de classe

(facultatif) nom de classe supplémentaire pour le composant

à propos de PopoverTitle

(facultatif) titre pour popover

Le succèsStatus

Composant pour afficher un statut de succès popover.

Exemple :

<SuccessStatus title={successMsg} />
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

le titre

(facultatif) texte d’état

icône seule

(facultatif) si true, affiche uniquement l’icône

à propos de NoTooltip

(facultatif) si true, tooltip n’est pas affiché

Le nom de classe

(facultatif) nom de classe supplémentaire pour le composant

à propos de PopoverTitle

(facultatif) titre pour popover

contrôle d’accès

Fournit des informations sur l’accès de l’utilisateur à une ressource donnée. Il renvoie un objet avec des informations d’accès aux ressources.

Expand
Le nom du paramètreDescription

attributs des ressources

attributs des ressources pour l’examen de l’accès

imiter l’identité

détails de l’imitation

comment utiliserAccessReview

Crochet qui fournit des informations sur l’accès de l’utilisateur à une ressource donnée. Il renvoie un tableau avec isAllowed et des valeurs de chargement.

Expand
Le nom du paramètreDescription

attributs des ressources

attributs des ressources pour l’examen de l’accès

imiter l’identité

détails de l’imitation

l’utilisationResolvedExtensions

Crochet de réaction pour la consommation d’extensions Console avec les propriétés CodeRef résolues. Ce crochet accepte le même argument que le crochet useExtensions et renvoie une liste adaptée d’instances d’extension, résolvant toutes les références de code dans les propriétés de chaque extension.

Initialement, le crochet retourne un tableau vide. Après la résolution est terminée, le composant React est redémarré avec le crochet renvoyant une liste adaptée d’extensions. Lorsque la liste des extensions correspondantes change, la résolution est redémarrée. Le crochet continue de retourner le résultat précédent jusqu’à ce que la résolution soit terminée.

Les éléments de résultat du crochet sont garantis pour être référentiellement stables à travers les re-renders. Il renvoie un tuple contenant une liste d’instances d’extension adaptées avec des références de code résolues, un drapeau booléen indiquant si la résolution est complète et une liste d’erreurs détectées pendant la résolution.

Exemple :

const [navItemExtensions, navItemsResolved] = useResolvedExtensions<NavItem>(isNavItem);
// process adapted extensions and render your component
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

jeux de TypeGuards

Liste des rappels qui acceptent chacun une extension dynamique de plugin comme argument et renvoient un drapeau booléen indiquant si l’extension répond ou non aux contraintes de type souhaitées

HorizontalNav

Composant qui crée une barre de navigation pour une page. Le routage est géré dans le cadre du composant. console.tab/horizontalNav peut être utilisé pour ajouter du contenu supplémentaire à toute navigation horizontale.

Exemple :

const HomePage: React.FC = (props) => {
    const page = {
      href: '/home',
      name: 'Home',
      component: () => <>Home</>
    }
    return <HorizontalNav match={props.match} pages={[page]} />
}
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

a) Ressources

La ressource associée à cette navigation, un objet de type K8sResourceCommon

les pages

Ensemble d’objets de page

le match

correspondance de l’objet fourni par React Router

La table virtualisée

Composant pour faire des tables virtualisées.

Exemple :

const MachineList: React.FC<MachineListProps> = (props) => {
  return (
    <VirtualizedTable<MachineKind>
     {...props}
     aria-label='Machines'
     columns={getMachineColumns}
     Row={getMachineTableRow}
    />
  );
}
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

données

données pour tableau

chargé

drapeau indiquant que les données sont chargées

chargeError

erreur de l’objet en cas d’émission de données de chargement

colonnes

configuration des colonnes

Ligne de ligne

configuration de la ligne

données non filtrées

données originales sans filtre

Informations sur NoDataEmptyMsg

(facultatif) Aucun composant de message vide de données

EmptyMsg

composant de message vide (facultatif)

défilementNode

fonction (facultative) pour gérer le défilement

étiquette

(facultatif) étiquette pour table

ariaLabel

(facultatif) étiquette aria

grilleBreakPoint

dimensionnement de la façon de casser la grille pour la réactivité

cliquez sur Select

fonction (facultative) pour la gestion de la sélection de table

données de ligne

données (facultatives) spécifiques à la ligne

Données de table

Composant pour afficher les données de table dans une ligne de table.

Exemple :

const PodRow: React.FC<RowProps<K8sResourceCommon>> = ({ obj, activeColumnIDs }) => {
  return (
    <>
      <TableData id={columns[0].id} activeColumnIDs={activeColumnIDs}>
        <ResourceLink kind="Pod" name={obj.metadata.name} namespace={obj.metadata.namespace} />
      </TableData>
      <TableData id={columns[1].id} activeColumnIDs={activeColumnIDs}>
        <ResourceLink kind="Namespace" name={obj.metadata.namespace} />
      </TableData>
    </>
  );
};
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

carte d’identité

ID unique pour table

activeColumnIDs

colonnes actives

Le nom de classe

(facultatif) nom de classe d’option pour le style

comment utiliserActiveColumns?

Crochet qui fournit une liste de TableColumns actifs sélectionnés par l’utilisateur.

Exemple :

// See implementation for more details on TableColumn type
  const [activeColumns, userSettingsLoaded] = useActiveColumns({
    columns,
    showNamespaceOverride: false,
    columnManagementID,
  });
  return userSettingsAreLoaded ? <VirtualizedTable columns={activeColumns} {...otherProps} /> : null
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

les options

Qui sont passés comme une carte clé-valeur

\{TABLECOLUMN[]} options.columns

Liste de tous les TableColumns disponibles

{Boolean} [options.showNamespaceOverride]

(facultatif) Si vrai, une colonne d’espace de noms est incluse, indépendamment des sélections de gestion de colonnes

{string} [options.columnManagementID]

(facultatif) Un identifiant unique utilisé pour persister et récupérer les sélections de gestion des colonnes vers et à partir des paramètres de l’utilisateur. Habituellement une chaîne de groupe/version/type (GVK) pour une ressource.

Le tuple contenant les colonnes actives sélectionnées par l’utilisateur actuel (un sous-ensemble d’options.columns) et un drapeau booléen indiquant si les paramètres de l’utilisateur ont été chargés.

ListePageHeader

Composant pour générer un en-tête de page.

Exemple :

const exampleList: React.FC = () => {
  return (
    <>
      <ListPageHeader title="Example List Page"/>
    </>
  );
};
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

le titre

titre de titre

Le texte d’aide

(facultatif) section d’aide comme nœud de réaction

badge

(facultatif) Icône de badge en tant que nœud de réaction

ListPageCreate

Composant pour ajouter un bouton de création pour un type de ressource spécifique qui génère automatiquement un lien vers la création YAML pour cette ressource.

Exemple :

const exampleList: React.FC<MyProps> = () => {
  return (
    <>
      <ListPageHeader title="Example Pod List Page"/>
        <ListPageCreate groupVersionKind="Pod">Create Pod</ListPageCreate>
      </ListPageHeader>
    </>
  );
};
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

GroupVersionKind

le groupe de ressources/version/type à représenter

Composant pour créer un lien stylisé.

Exemple :

const exampleList: React.FC<MyProps> = () => {
 return (
  <>
   <ListPageHeader title="Example Pod List Page"/>
      <ListPageCreateLink to={'/link/to/my/page'}>Create Item</ListPageCreateLink>
   </ListPageHeader>
  </>
 );
};
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

à

emplacement de chaîne où le lien doit diriger

créerAccessReview

(facultatif) objet avec espace de noms et type utilisé pour déterminer l’accès

enfants

enfants (facultatifs) pour la composante

ListePageCreateButton

Composant pour créer le bouton.

Exemple :

const exampleList: React.FC<MyProps> = () => {
  return (
    <>
      <ListPageHeader title="Example Pod List Page"/>
        <ListPageCreateButton createAccessReview={access}>Create Pod</ListPageCreateButton>
      </ListPageHeader>
    </>
  );
};
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

créerAccessReview

(facultatif) objet avec espace de noms et type utilisé pour déterminer l’accès

à propos de pfButtonProps

(facultatif) Bouton de motif

ListePageCreateDropdown

Composant pour créer un déroulant enveloppé avec la vérification des autorisations.

Exemple :

const exampleList: React.FC<MyProps> = () => {
  const items = {
    SAVE: 'Save',
    DELETE: 'Delete',
  }
  return (
    <>
     <ListPageHeader title="Example Pod List Page"/>
       <ListPageCreateDropdown createAccessReview={access} items={items}>Actions</ListPageCreateDropdown>
     </ListPageHeader>
    </>
  );
};
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

articles

clé:ReactNode paires d’éléments à afficher dans le composant déroulant

En cliquant sur

fonction de rappel pour cliquer sur les éléments déroulants

créerAccessReview

(facultatif) objet avec espace de noms et type utilisé pour déterminer l’accès

enfants

enfants (facultatifs) pour le déroulant

ListePageFilter

Composant qui génère un filtre pour la page de liste.

Exemple :

  // See implementation for more details on RowFilter and FilterValue types
  const [staticData, filteredData, onFilterChange] = useListPageFilter(
    data,
    rowFilters,
    staticFilters,
  );
  // ListPageFilter updates filter state based on user interaction and resulting filtered data can be rendered in an independent component.
  return (
    <>
      <ListPageHeader .../>
      <ListPagBody>
        <ListPageFilter data={staticData} onFilterChange={onFilterChange} />
        <List data={filteredData} />
      </ListPageBody>
    </>
  )
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

données

Ensemble de points de données

chargé

indique que les données ont chargé

à propos de FilterChange

fonction de rappel pour quand le filtre est mis à jour

fondeurs de lignes

(facultatif) Un tableau d’éléments RowFilter qui définissent les options de filtre disponibles

nomFilterPlaceholder

(facultatif) espace réservé pour le filtre de nom

labelFilterPlaceholder

(facultatif) espace réservé pour le filtre d’étiquette

HideLabelFilter

(facultatif) affiche uniquement le filtre de nom au lieu du filtre de nom et d’étiquette

HideNameLabelFilter

(facultatif) cache à la fois le nom et le filtre d’étiquette

colonneLayout

(facultatif) objet de mise en page de colonne

hideColumnManagement

drapeau (facultatif) pour masquer la gestion des colonnes

à propos de UseListPageFilter

Crochet qui gère l’état du filtre pour le composant ListPageFilter. Il renvoie un tuple contenant les données filtrées par tous les filtres statiques, les données filtrées par tous les filtres statiques et les lignes, et un rappel qui met à jour rowFilters.

Exemple :

  // See implementation for more details on RowFilter and FilterValue types
  const [staticData, filteredData, onFilterChange] = useListPageFilter(
    data,
    rowFilters,
    staticFilters,
  );
  // ListPageFilter updates filter state based on user interaction and resulting filtered data can be rendered in an independent component.
  return (
    <>
      <ListPageHeader .../>
      <ListPagBody>
        <ListPageFilter data={staticData} onFilterChange={onFilterChange} />
        <List data={filteredData} />
      </ListPageBody>
    </>
  )
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

données

Ensemble de points de données

fondeurs de lignes

(facultatif) Un tableau d’éléments RowFilter qui définissent les options de filtre disponibles

filtres statiques

(facultatif) Un tableau d’éléments FilterValue qui sont appliqués statiquement aux données

Composant qui crée un lien vers un type de ressource spécifique avec un badge d’icône.

Exemple :

  <ResourceLink
      kind="Pod"
      name="testPod"
      title={metadata.uid}
  />
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

kind

(facultatif) le type de ressource, c’est-à-dire Pod, Déploiement, Namespace

GroupVersionKind

(facultatif) objet avec groupe, version et genre

Le nom de classe

(facultatif) style de classe pour composant

DisplayName

(facultatif) nom d’affichage pour le composant, écrase le nom de la ressource si défini

en ligne

drapeau (facultatif) pour créer un badge d’icône et un nom en ligne avec les enfants

Lien vers

(facultatif) drapeau pour créer un objet Link - par défaut à true

le nom

(facultatif) nom de la ressource

accueil &gt; Nameapce

(facultatif) espace de noms spécifique pour le type de ressource à lier à

HideIcon

(facultatif) drapeau pour masquer le badge de l’icône

le titre

(facultatif) titre pour l’objet lien (non affiché)

DataTest

(facultatif) identificateur pour les essais

En cliquant sur

(facultatif) fonction de rappel pour quand le composant est cliqué

tronqué

(facultatif) drapeau pour tronquer le lien si trop long

Icône des ressources

Composant qui crée un badge d’icône pour un type de ressource spécifique.

Exemple :

<ResourceIcon kind="Pod"/>
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

kind

(facultatif) le type de ressource, c’est-à-dire Pod, Déploiement, Namespace

GroupVersionKind

(facultatif) objet avec groupe, version et genre

Le nom de classe

(facultatif) style de classe pour composant

à propos de useK8sModel

Crochet qui récupère le modèle k8s pour K8sGroupVersionKind fourni à partir de redux. Il retourne un tableau avec le premier élément en tant que modèle k8s et deuxième élément en tant qu’état de vol.

Exemple :

const Component: React.FC = () => {
  const [model, inFlight] = useK8sModel({ group: 'app'; version: 'v1'; kind: 'Deployment' });
  return ...
}
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

GroupVersionKind

K8sGroupVersionKind est préférable alternativement pour passer la référence pour groupe, version, genre qui est déprécié, c’est-à-dire groupe/version/type (GVK) K8sResourceKindReference.

à propos de UseK8sModels

Crochet qui récupère tous les modèles k8s actuels de redux. Il renvoie un tableau avec le premier élément comme la liste du modèle k8s et le deuxième élément en tant qu’état de vol.

Exemple :

const Component: React.FC = () => {
  const [models, inFlight] = UseK8sModels();
  return ...
}
Copy to Clipboard Toggle word wrap

à propos de UseK8sWatchResource

Crochet qui récupère la ressource k8s ainsi que l’état pour le chargement et l’erreur. Il renvoie un tableau avec le premier élément en tant que ressource(s), deuxième élément en tant qu’état chargé et troisième élément en tant qu’état d’erreur le cas échéant.

Exemple :

const Component: React.FC = () => {
  const watchRes = {
        ...
      }
  const [data, loaded, error] = useK8sWatchResource(watchRes)
  return ...
}
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

initResource

les options nécessaires pour surveiller les ressources.

à propos de UseK8sWatchResources

Crochet qui récupère les ressources k8s ainsi que leur statut respectif pour le chargement et l’erreur. Il renvoie une carte où les clés sont telles que fournies dans initResouces et la valeur a trois propriétés données, chargées et erreur.

Exemple :

const Component: React.FC = () => {
  const watchResources = {
        'deployment': {...},
        'pod': {...}
        ...
      }
  const {deployment, pod} = useK8sWatchResources(watchResources)
  return ...
}
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

initResources

Les ressources doivent être surveillées comme une paire clé-valeur, où la clé est unique à la ressource et la valeur est des options nécessaires pour surveiller la ressource respective.

consoleFetch

Il valide également le code d’état de la réponse et jette l’erreur appropriée ou déconnecte l’utilisateur si nécessaire. Il renvoie une promesse qui résout la réponse.

Expand
Le nom du paramètreDescription

l’URL

L’URL à chercher

les options

Les options pour passer à chercher

délai d’expiration

Le délai d’attente en millisecondes

consoleFetchJSON

Enveloppeuse personnalisée autour de la prise qui ajoute des en-têtes spécifiques à la console et permet des retries et des chronométrages. Il valide également le code d’état de la réponse et lance l’erreur appropriée ou déconnecte l’utilisateur si nécessaire. Il renvoie la réponse en tant qu’objet JSON. Utilise consoleFetch en interne. Il renvoie une promesse qui résout la réponse en tant qu’objet JSON.

Expand
Le nom du paramètreDescription

l’URL

L’URL à chercher

la méthode

La méthode HTTP à utiliser. Les valeurs par défaut pour GET

les options

Les options pour passer à chercher

délai d’expiration

Le délai d’attente en millisecondes

cluster

Le nom du cluster pour faire la demande à. Les valeurs par défaut du cluster actif que l’utilisateur a sélectionné

consoleFetchText

Enveloppeuse personnalisée autour de la prise qui ajoute des en-têtes spécifiques à la console et permet des retries et des chronométrages. Il valide également le code d’état de la réponse et lance l’erreur appropriée ou déconnecte l’utilisateur si nécessaire. Il renvoie la réponse sous forme de texte. Utilise consoleFetch en interne. Il renvoie une promesse qui résout la réponse en tant que texte.

Expand
Le nom du paramètreDescription

l’URL

L’URL à chercher

les options

Les options pour passer à chercher

délai d’expiration

Le délai d’attente en millisecondes

cluster

Le nom du cluster pour faire la demande à. Les valeurs par défaut du cluster actif que l’utilisateur a sélectionné

GetConsoleRequestHeaders

Fonction qui crée des en-têtes liés à l’imitation et au multicluster pour les requêtes API en utilisant l’état redux actuel. Il renvoie un objet contenant l’identité appropriée et les en-têtes de requst de clustr, basés sur l’état redux.

Expand
Le nom du paramètreDescription

groupe cible

Remplacer le cluster actif actuel avec le cluster cible fourni

k8sGetResource

Il sort une ressource du cluster, en fonction des options fournies. Lorsque le nom est fourni, il retourne une ressource d’autre part, il retourne toutes les ressources correspondant au modèle. Il renvoie une promesse qui résout la réponse en tant qu’objet JSON avec une ressource si le nom est fournielse, il retourne toutes les ressources correspondant au modèle. En cas d’échec, la promesse est rejetée avec la réponse d’erreur HTTP.

Expand
Le nom du paramètreDescription

les options

Qui sont passés comme paires clé-valeur dans la carte

les options.model

k8s modèle

options.nom

Le nom de la ressource, s’il n’est pas fourni, recherche toutes les ressources correspondant au modèle.

les options.ns

L’espace de noms à examiner ne doit pas être spécifié pour les ressources en grappe.

les options.path

Ajoute comme sous-chemin s’il est fourni

les options.queryParams

Les paramètres de requête à inclure dans l’URL.

les options.requestInit

L’objet de recherche init à utiliser. Cela peut avoir des en-têtes de requête, méthode, redirection, etc. Consultez Interface RequestInit pour plus de détails.

k8sCreateResource

Il crée une ressource dans le cluster, basé sur les options fournies. Il renvoie une promesse qui résout la réponse de la ressource créée. En cas de promesse d’échec est rejetée avec la réponse d’erreur HTTP.

Expand
Le nom du paramètreDescription

les options

Qui sont passés comme paires clé-valeur dans la carte

les options.model

k8s modèle

informations sur Options.data

Charge utile pour la ressource à créer

les options.path

Ajoute comme sous-chemin s’il est fourni

les options.queryParams

Les paramètres de requête à inclure dans l’URL.

k8sUpdateResource

Il met à jour l’ensemble de la ressource dans le cluster, en fonction des options fournies. Lorsqu’un client doit remplacer entièrement une ressource existante, il peut utiliser k8sUpdate. Alternativement, vous pouvez utiliser k8sPatch pour effectuer la mise à jour partielle. Il renvoie une promesse qui résout la réponse de la ressource mise à jour. En cas de promesse d’échec est rejetée avec la réponse d’erreur HTTP.

Expand
Le nom du paramètreDescription

les options

Qui sont passés comme paire clé-valeur dans la carte

les options.model

k8s modèle

informations sur Options.data

Charge utile pour la ressource k8s à mettre à jour

les options.ns

Espace de noms à examiner, il ne devrait pas être spécifié pour les ressources à champ cluster.

options.nom

Le nom de la ressource doit être mis à jour.

les options.path

Ajoute comme sous-chemin s’il est fourni

les options.queryParams

Les paramètres de requête à inclure dans l’URL.

k8sPatchResource

Il corrige n’importe quelle ressource dans le cluster, en fonction des options fournies. Lorsqu’un client doit effectuer la mise à jour partielle, il peut utiliser k8sPatch. Alternativement, vous pouvez utiliser k8sUpdate pour remplacer entièrement une ressource existante. Consultez Data Tracker pour en savoir plus. Il renvoie une promesse qui résout la réponse de la ressource corrigée. En cas de promesse d’échec est rejetée avec la réponse d’erreur HTTP.

Expand
Le nom du paramètreDescription

les options

Qui sont passés comme paires clé-valeur dans la carte.

les options.model

k8s modèle

les options.resource

La ressource à corriger.

informations sur Options.data

Il n’y a que les données à corriger sur la ressource existante avec l’opération, le chemin et la valeur.

les options.path

Ajoute comme sous-chemin s’il est fourni.

les options.queryParams

Les paramètres de requête à inclure dans l’URL.

k8sDeleteResource

Il supprime les ressources du cluster, en fonction du modèle fourni, la ressource. Les travaux de collecte des ordures basés sur Foreground|Background peuvent être configurés avec la propriété de propagationPolicy dans le modèle fourni ou passés en json. Il renvoie une promesse qui résout la réponse du genre Statut. En cas de promesse d’échec est rejetée avec la réponse d’erreur HTTP.

Exemple :

genre: 'DeleteOptions', apiVersion: 'v1', propagationPolitique

Expand
Le nom du paramètreDescription

les options

Qui sont passés comme paire clé-valeur dans la carte.

les options.model

k8s modèle

les options.resource

La ressource à supprimer.

les options.path

Ajoute comme sous-chemin s’il est fourni

les options.queryParams

Les paramètres de requête à inclure dans l’URL.

les options.requestInit

L’objet de recherche init à utiliser. Cela peut avoir des en-têtes de requête, méthode, redirection, etc. Consultez Interface RequestInit pour plus de détails.

les options.json

Il peut contrôler explicitement la collecte des déchets des ressources si elle est fournie ou si elle est par défaut à la «propagationPolicy» du modèle.

k8sListResource

Liste les ressources en tant que tableau dans le cluster, en fonction des options fournies. Il renvoie une promesse qui résout la réponse.

Expand
Le nom du paramètreDescription

les options

Qui sont passés comme paires clé-valeur dans la carte

les options.model

k8s modèle

les options.queryParams

Les paramètres de requête à inclure dans l’URL et peuvent passer le sélecteur d’étiquettes ainsi que la clé "labelSelector".

les options.requestInit

L’objet de recherche init à utiliser. Cela peut avoir des en-têtes de requête, méthode, redirection, etc. Consultez Interface RequestInit pour plus de détails.

k8sListResourceItems

La même interface que k8sListResource mais renvoie les sous-éléments. Il renvoie l’apiVersion pour le modèle, c’est-à-dire le groupe/version.

GetAPIVersionForModel

Fournit apiVersion pour un modèle k8s.

Expand
Le nom du paramètreDescription

le modèle

k8s modèle

GetGroupVersionKindForResource

Fournit un groupe, une version et un type pour une ressource. Il renvoie le groupe, la version, le genre pour la ressource fournie. Dans le cas où la ressource n’a pas de groupe d’API, le groupe "core" est retourné. Lorsque la ressource a une apiVersion invalide, elle lance une erreur.

Expand
Le nom du paramètreDescription

a) Ressources

k8s ressource

GetGroupVersionKindForModel

Fournit un groupe, une version et un type pour un modèle k8s. Cela renvoie le groupe, la version, le type pour le modèle fourni. Dans le cas où le modèle n’a pas d’apiGroup, le groupe "core" est retourné.

Expand
Le nom du paramètreDescription

le modèle

k8s modèle

ÉtatPopupsection

Composant qui affiche l’état dans une fenêtre contextuelle. Composant utile pour construire des extensions console.dashboards/overview/santé/ressource.

Exemple :

  <StatusPopupSection
    firstColumn={
      <>
        <span>{title}</span>
        <span className="text-secondary">
          My Example Item
        </span>
      </>
    }
    secondColumn='Status'
  >
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

La première colonne

les valeurs pour la première colonne de popup

deuxième colonne

(facultatif) valeurs pour la deuxième colonne de popup

enfants

enfants (facultatifs) pour la popup

ÉtatPopupItem

Élément d’état utilisé dans Status popup; utilisé dans StatusPopupsection.

Exemple :

<StatusPopupSection
   firstColumn='Example'
   secondColumn='Status'
>
   <StatusPopupItem icon={healthStateMapping[MCGMetrics.state]?.icon}>
      Complete
   </StatusPopupItem>
   <StatusPopupItem icon={healthStateMapping[RGWMetrics.state]?.icon}>
       Pending
   </StatusPopupItem>
</StatusPopupSection>
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

la valeur

(facultatif) valeur de texte à afficher

icône

icône (facultative) à afficher

enfants

éléments pour enfants

Aperçu général

Crée un composant d’emballage pour un tableau de bord.

Exemple :

    <Overview>
      <OverviewGrid mainCards={mainCards} leftCards={leftCards} rightCards={rightCards} />
    </Overview>
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

Le nom de classe

classe de style (facultatif) pour div

enfants

éléments (facultatifs) du tableau de bord

AperçuGrid

Crée une grille d’éléments de carte pour un tableau de bord; utilisé dans Aperçu.

Exemple :

    <Overview>
      <OverviewGrid mainCards={mainCards} leftCards={leftCards} rightCards={rightCards} />
    </Overview>
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

cartes principales

cartes pour grille

gaucheCards

cartes (facultatives) pour le côté gauche de la grille

cartes à droite

cartes (facultatives) pour le côté droit de la grille

InventaireItem

Crée un élément de carte d’inventaire.

Exemple :

  return (
    <InventoryItem>
      <InventoryItemTitle>{title}</InventoryItemTitle>
      <InventoryItemBody error={loadError}>
        {loaded && <InventoryItemStatus count={workerNodes.length} icon={<MonitoringIcon />} />}
      </InventoryItemBody>
    </InventoryItem>
  )
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

enfants

éléments à rendre à l’intérieur de l’élément

InventaireItemTitle

Crée un titre pour un élément de carte d’inventaire; utilisé dans InventoryItem.

Exemple :

 return (
   <InventoryItem>
     <InventoryItemTitle>{title}</InventoryItemTitle>
     <InventoryItemBody error={loadError}>
       {loaded && <InventoryItemStatus count={workerNodes.length} icon={<MonitoringIcon />} />}
     </InventoryItemBody>
   </InventoryItem>
 )
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

enfants

éléments à rendre à l’intérieur du titre

InventaireItemBody

Crée le corps d’une carte d’inventaire; utilisé dans InventoryCard et peut être utilisé avec InventoryTitle.

Exemple :

 return (
   <InventoryItem>
     <InventoryItemTitle>{title}</InventoryItemTitle>
     <InventoryItemBody error={loadError}>
       {loaded && <InventoryItemStatus count={workerNodes.length} icon={<MonitoringIcon />} />}
     </InventoryItemBody>
   </InventoryItem>
 )
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

enfants

éléments à rendre à l’intérieur de la carte d’inventaire ou du titre

erreur

éléments de la div

InventaireItemStatus

Crée un compte et une icône pour une carte d’inventaire avec adresse de lien optionnelle; utilisé dans InventoryItemBody

Exemple :

 return (
   <InventoryItem>
     <InventoryItemTitle>{title}</InventoryItemTitle>
     <InventoryItemBody error={loadError}>
       {loaded && <InventoryItemStatus count={workerNodes.length} icon={<MonitoringIcon />} />}
     </InventoryItemBody>
   </InventoryItem>
 )
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

comptez

compter pour l’affichage

icône

icône pour l’affichage

Lien vers

adresse du lien (facultatif)

InventaireItemLoading

Crée un conteneur squelette pour le chargement d’une carte d’inventaire; utilisé avec InventoryItem et les composants connexes

Exemple :

if (loadError) {
   title = <Link to={workerNodesLink}>{t('Worker Nodes')}</Link>;
} else if (!loaded) {
  title = <><InventoryItemLoading /><Link to={workerNodesLink}>{t('Worker Nodes')}</Link></>;
}
return (
  <InventoryItem>
    <InventoryItemTitle>{title}</InventoryItemTitle>
  </InventoryItem>
)
Copy to Clipboard Toggle word wrap

à propos de UseFlag

Crochet qui renvoie le drapeau de caractéristique donné de l’état FLAGS redux. Il renvoie la valeur booléenne de l’indicateur de fonctionnalité demandé ou non défini.

Expand
Le nom du paramètreDescription

drapeau

Le drapeau de fonctionnalité à retourner

Éditeur de code

L’éditeur de code paresseux de base avec l’aide et l’achèvement du voleur.

Exemple :

<React.Suspense fallback={<LoadingBox />}>
  <CodeEditor
    value={code}
    language="yaml"
  />
</React.Suspense>
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

la valeur

Chaîne représentant le code yaml à rendre.

langue

Chaîne représentant la langue de l’éditeur.

les options

Les options de monégasque. Consultez Interface IStandAloneEditorConstructionOptions pour plus de détails.

♪ minHeight ♪

Hauteur minimale de l’éditeur dans les valeurs de hauteur CSS valides.

afficherShortcuts

Boolean pour afficher des raccourcis en haut de l’éditeur.

barre d’outilsLinks

Le tableau de ReactNode rendu sur la section liens de barre d’outils en haut de l’éditeur.

à propos du changement

Rappel pour l’événement de changement de code.

à propos de OnSave

Rappel appelé lorsque la commande CTRL / CMD + S est déclenchée.

à propos de Ref

La référence à { Editor?: IStandaloneCodeEditor }. En utilisant la propriété de l’éditeur, vous pouvez accéder à toutes les méthodes pour contrôler l’éditeur. Consultez Interface IStandaloneCodeEditor pour plus d’informations.

À propos de ResourceYAMLEditor

C’est un éditeur YAML chargé paresseux pour les ressources Kubernetes avec l’aide et l’achèvement du survol. Le composant utilise le YAMLEditor et ajoute plus de fonctionnalités comme la gestion des mises à jour des ressources, les alertes, l’enregistrement, l’annulation et le rechargement des boutons, l’accessibilité et plus encore. À moins que le rappel onSave ne soit fourni, la mise à jour de ressources est automatiquement gérée.Il doit être emballé dans un composant React.Suspense.

Exemple :

<React.Suspense fallback={<LoadingBox />}>
  <ResourceYAMLEditor
    initialResource={resource}
    header="Create resource"
    onSave={(content) => updateResource(content)}
  />
</React.Suspense>
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

la ressource initiale

JAML/Object représentant une ressource à afficher par l’éditeur. Cet accessoire n’est utilisé que pendant le rendu initial

en-tête

Ajouter un en-tête sur le dessus de l’éditeur YAML

à propos de OnSave

Rappel pour le bouton Enregistrer. Le passage remplace la mise à jour par défaut effectuée sur la ressource par l’éditeur

À propos de ResourceEventStream

Composante pour montrer les événements liés à une ressource particulière.

Exemple :

const [resource, loaded, loadError] = useK8sWatchResource(clusterResource);
return <ResourceEventStream resource={resource} />
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

a) Ressources

D’un objet dont les événements connexes doivent être affichés.

à propos de PrometheusPoll

Configure un sondage pour Prometheus pour une seule requête. Il renvoie un tuple contenant la réponse de requête, un drapeau booléen indiquant si la réponse est terminée et les erreurs rencontrées lors de la demande ou du post-traitement de la demande.

Expand
Le nom du paramètreDescription

{PrometheusEndpoint} props.endpoint

l’un des PrometheusEndpoint (étiquette, requête, plage, règles, cibles)

{string} [props.query]

(facultatif) Chaîne de requête Prometheus. En cas de vide ou d’indéfini, le sondage n’est pas commencé.

{numéro} [props.delay]

(facultatif) intervalle de retard de vote (ms)

{numéro} [props.endTime]

(facultatif) pour QUERY_RANGE enpoint, fin de la plage de requête

{numéro} [props.samples]

(facultatif) pour QUERY_RANGE enpoint

{numéro} [options.timespan]

(facultatif) pour QUERY_RANGE enpoint

{string} [options.namespace]

(facultatif) un param de recherche à ajouter

{string} [options.timeout]

(facultatif) un param de recherche à ajouter

Horodatage

Composant pour rendre l’horodatage. Les horodatages sont synchronisés entre les instances inviduelles du composant Timestamp. L’horodatage fourni est formaté en fonction de la localisation de l’utilisateur.

Expand
Le nom du paramètreDescription

horodatage

l’horodatage à rendre. Le format devrait être ISO 8601 (utilisé par Kubernetes), l’horodatage d’époque, ou une instance d’une date.

C’est simple

le rendu de la version simple de l’icône de l’omission des composants et de l’infobulle.

à propos de OmitSuffix

formate la date d’ommiting du suffixe.

Le nom de classe

autre nom de classe pour le composant.

à utiliserModal

C’est un crochet pour lancer Modals.

Exemple :

const context: AppPage: React.FC = () => {<br/> const [launchModal] = useModal();<br/> const onClick = () => launchModal(ModalComponent);<br/> return (<br/>   <Button onClick={onClick}>Launch a Modal</Button><br/> )<br/>}<br/>`
Copy to Clipboard Toggle word wrap

ActionServiceProvider

Composant qui permet de recevoir des contributions d’autres plugins pour le type d’extension console.action/fournisseur.

Exemple :

   const context: ActionContext = { 'a-context-id': { dataFromDynamicPlugin } };

   ...

   <ActionServiceProvider context={context}>
       {({ actions, options, loaded }) =>
         loaded && (
           <ActionMenu actions={actions} options={options} variant={ActionMenuVariant.DROPDOWN} />
         )
       }
   </ActionServiceProvider>
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

contexte

L’objet avec contextId et les données optionnelles du plugin

À propos de NamespaceBar

Composant qui rend une barre d’outils horizontale avec un menu déroulant de l’espace de noms dans la position la plus à gauche. Des composants supplémentaires peuvent être transmis en tant qu’enfants et sont rendus à droite de la liste déroulante de l’espace de noms. Ce composant est conçu pour être utilisé en haut de la page. Il doit être utilisé sur les pages où l’utilisateur doit pouvoir modifier l’espace de noms actif, comme sur les pages avec des ressources k8s.

Exemple :

   const logNamespaceChange = (namespace) => console.log(`New namespace: ${namespace}`);

   ...

   <NamespaceBar onNamespaceChange={logNamespaceChange}>
     <NamespaceBarApplicationSelector />
   </NamespaceBar>
   <Page>

     ...
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

à propos de NamespaceChange

(facultatif) Une fonction qui est exécutée lorsqu’une option d’espace de noms est sélectionnée. Il accepte le nouvel espace de noms sous la forme d’une chaîne comme seul argument. L’espace de noms actif est mis à jour automatiquement lorsqu’une option est sélectionnée, mais une logique supplémentaire peut être appliquée via cette fonction. Lorsque l’espace de noms est modifié, le paramètre namespace de l’URL est changé de l’espace de noms précédent à l’espace de noms nouvellement sélectionné.

isDisabled

(facultatif) Un drapeau booléen qui désactive le déroulant de l’espace de noms s’il est défini à true. Cette option s’applique uniquement au déroulant de l’espace de noms et n’a aucun effet sur les composants enfants.

enfants

(facultatif) Éléments supplémentaires à rendre à l’intérieur de la barre d’outils à droite de la liste déroulante de l’espace de noms.

ErrorBoundaryFallbackPage

Crée une page complète ErrorBoundaryFallbackPage composant pour afficher le "Oh non! Le message s’est passé avec la trace de la pile et d’autres informations utiles de débogage. Ceci est à utiliser inconjunction avec un composant.

Exemple :

//in ErrorBoundary component
 return (
   if (this.state.hasError) {
     return <ErrorBoundaryFallbackPage errorMessage={errorString} componentStack={componentStackString}
      stack={stackTraceString} title={errorString}/>;
   }

   return this.props.children;
)
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

erreurMessage

description textuelle du message d’erreur

composantStack

composante trace de l’exception

empiler

empiler la trace de l’exception

le titre

le titre à rendre en tant qu’en-tête de la page limite d’erreur

À propos de QueryBrowser

Composant qui rend un graphique des résultats d’une requête Prometheus PromQL ainsi que des contrôles pour interagir avec le graphique.

Exemple :

<QueryBrowser
  defaultTimespan={15 * 60 * 1000}
  namespace={namespace}
  pollInterval={30 * 1000}
  queries={[
    'process_resident_memory_bytes{job="console"}',
    'sum(irate(container_network_receive_bytes_total[6h:5m])) by (pod)',
  ]}
/>
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

données personnaliséesSource

(facultatif) URL de base d’un point de terminaison API qui gère les requêtes PromQL. Le cas échéant, il est utilisé au lieu de l’API par défaut pour récupérer des données.

exemples par défaut

(facultatif) Le nombre par défaut d’échantillons de données tracés pour chaque série de données. En cas de nombreuses séries de données, QueryBrowser peut automatiquement choisir un nombre d’échantillons de données inférieur à celui spécifié ici.

durée par défaut

(facultatif) La durée par défaut du graphique en millisecondes - par défaut à 1 800 000 (30 minutes).

la série handicapée

(facultatif) Désactiver (ne pas afficher) série de données avec ces paires exactes d’étiquettes / de valeur.

désactiverZoom

(facultatif) Drapeau pour désactiver les contrôles de zoom graphique.

filtreLabels

(facultatif) Filtrer en option les séries de données retournées uniquement à celles qui correspondent à ces paires d’étiquettes/valeurs.

FixEndTime

(facultatif) Définir l’heure de fin de la plage de temps affichée plutôt que d’afficher des données jusqu’à l’heure actuelle.

formatSérieTitle

(facultatif) Fonction qui renvoie une chaîne à utiliser comme titre pour une seule série de données.

GraphLink

(facultatif) Composant pour rendre un lien vers une autre page (par exemple obtenir plus d’informations sur cette requête).

cacherControls

(facultatif) Drapeau pour masquer les contrôles graphiques pour changer la durée du graphique, et ainsi de suite.

isStack

(facultatif) Drapeau pour afficher un graphique empilé au lieu d’un graphique de ligne. Lorsque showStackedControl est défini, il est toujours possible pour l’utilisateur de passer à un graphique de ligne.

espace de noms

(facultatif) Si les données sont fournies, les données ne sont retournées que pour cet espace de noms (seulement les séries ayant cette étiquette d’espace de noms).

à propos de OnZoom

(facultatif) Callback appelé lorsque le graphique est zoomé.

intervalle de sondage

(facultatif) Si défini, détermine la fréquence à laquelle le graphique est mis à jour pour afficher les données les plus récentes (en millisecondes).

demandes de renseignements

Gamme de requêtes PromQL pour exécuter et afficher les résultats dans le graphique.

afficherLegend

(facultatif) Drapeau pour activer l’affichage d’une légende sous le graphique.

afficherStackedControl

Drapeau pour activer l’affichage d’un contrôle graphique pour la commutation entre le mode graphique empilé et le mode graphique en ligne.

durée de la période

(facultatif) La durée qui devrait être couverte par le graphique en millisecondes.

les unités

(facultatif) Unités à afficher sur l’axe Y et dans l’outil.

AnnotationsModales

Crochet qui fournit un rappel pour lancer un modal pour éditer les annotations de ressources Kubernetes.

Exemple :

const PodAnnotationsButton = ({ pod }) => {
  const { t } = useTranslation();
  const launchAnnotationsModal = useAnnotationsModal<PodKind>(pod);
  return <button onClick={launchAnnotationsModal}>{t('Edit Pod Annotations')}</button>
}
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

a) Ressources

La ressource pour modifier les annotations pour un objet de type K8sResourceCommon.

Les retours

Fonction qui lance un modal pour éditer les annotations d’une ressource.

comment utiliserDeleteModal?

Crochet qui fournit un rappel pour lancer un modal pour supprimer une ressource.

Exemple :

const DeletePodButton = ({ pod }) => {
  const { t } = useTranslation();
  const launchDeleteModal = useDeleteModal<PodKind>(pod);
  return <button onClick={launchDeleteModal}>{t('Delete Pod')}</button>
}
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

a) Ressources

La ressource à supprimer.

la redirection vers

(facultatif) Un emplacement à rediriger après la suppression de la ressource.

le message

(facultatif) Un message à afficher dans le modal.

btnText

(facultatif) Le texte à afficher sur le bouton Supprimer.

effacerAllResources

(facultatif) Une fonction pour supprimer toutes les ressources du même type.

Les retours

Fonction qui lance un modal pour la suppression d’une ressource.

comment utiliserLabelsModel?

Crochet qui fournit un rappel pour lancer un modal pour éditer les étiquettes de ressources Kubernetes.

Exemple :

const PodLabelsButton = ({ pod }) => {
  const { t } = useTranslation();
  const launchLabelsModal = useLabelsModal<PodKind>(pod);
  return <button onClick={launchLabelsModal}>{t('Edit Pod Labels')}</button>
}
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

a) Ressources

La ressource pour modifier les étiquettes pour, un objet de type K8sResourceCommon.

Les retours

Fonction qui lance un modal pour éditer les étiquettes d’une ressource.

espace d’utilisationActiveNamespace

Crochet qui fournit l’espace de noms actuellement actif et un rappel pour configurer l’espace de noms actif.

Exemple :

const Component: React.FC = (props) => {
   const [activeNamespace, setActiveNamespace] = useActiveNamespace();
   return <select
     value={activeNamespace}
     onChange={(e) => setActiveNamespace(e.target.value)}
   >
     {
       // ...namespace options
     }
   </select>
}
Copy to Clipboard Toggle word wrap

Les retours

D’un tuple contenant l’espace de noms actif actuel et le rappel de réglage.

les paramètres d’utilisationUserSettings

Crochet qui fournit une valeur de réglage de l’utilisateur et un rappel pour définir la valeur de réglage de l’utilisateur.

Exemple :

const Component: React.FC = (props) => {
   const [state, setState, loaded] = useUserSettings(
     'devconsole.addPage.showDetails',
     true,
     true,
   );
   return loaded ? (
      <WrappedComponent {...props} userSettingState={state} setUserSettingState={setState} />
    ) : null;
};
Copy to Clipboard Toggle word wrap

Les retours

D’un tuple contenant le vauel de réglage de l’utilisateur, un rappel de setter et un booléen chargé.

comment utiliserQuickStartContext

Crochet qui fournit les valeurs actuelles du contexte de démarrage rapide. Cela permet aux plugins d’interopérer avec la fonctionnalité de démarrage rapide de la console.

Exemple :

const OpenQuickStartButton = ({ quickStartId }) => {
   const { setActiveQuickStart } = useQuickStartContext();
   const onClick = React.useCallback(() => {
       setActiveQuickStart(quickStartId);
   }, [quickStartId]);
   return <button onClick={onClick}>{t('Open Quick Start')}</button>
};
Copy to Clipboard Toggle word wrap

Les Reterns

Démarrage rapide des valeurs contextuelles objet.

La perspectiveContexte

Désapprouvé : Utilisez l’utilisation fourniePerspectiveContext à la place. Crée le contexte de perspective.

Expand
Le nom du paramètreDescription

À propos de PerspectiveContextType

l’objet avec perspective active et setter

comment utiliserAccessReviewAllowed

Désagrégé: Utilisez à la placeAccessReview de @console/dynamic-plugin-sdk. Hook qui fournit un statut autorisé sur l’accès de l’utilisateur à une ressource donnée. Il renvoie la valeur booléenne isAllowed.

Expand
Le nom du paramètreDescription

attributs des ressources

attributs des ressources pour l’examen de l’accès

imiter l’identité

détails de l’imitation

la sécurité d’abord

Désapprouvé: Ce crochet n’est pas lié à la fonctionnalité de la console. Crochet qui assure un réglage asynchronne sûr de l’état React dans le cas où un composant donné pourrait être démonté. Il renvoie un tableau avec une paire de valeur d’état et sa fonction définie.

Expand
Le nom du paramètreDescription

État initial

la valeur initiale de l’état

À propos de YAMLEditor

Déprécié: Un éditeur de base de YAML chargé paresseux avec l’aide du survol et l’achèvement.

Exemple :

<React.Suspense fallback={<LoadingBox />}>
  <YAMLEditor
    value={code}
  />
</React.Suspense>
Copy to Clipboard Toggle word wrap

Expand
Le nom du paramètreDescription

la valeur

Chaîne représentant le code yaml à rendre.

les options

Les options de monégasque.

♪ minHeight ♪

Hauteur minimale de l’éditeur dans les valeurs de hauteur CSS valides.

afficherShortcuts

Boolean pour afficher des raccourcis en haut de l’éditeur.

barre d’outilsLinks

Le tableau de ReactNode rendu sur la section liens de barre d’outils en haut de l’éditeur.

à propos du changement

Rappel pour l’événement de changement de code.

à propos de OnSave

Rappel appelé lorsque la commande CTRL / CMD + S est déclenchée.

à propos de Ref

La référence à { Editor?: IStandaloneCodeEditor }. En utilisant la propriété de l’éditeur, vous pouvez accéder à toutes les méthodes pour contrôler l’éditeur.

5.5.3. Dépannage de votre plugin dynamique

Consultez cette liste de conseils de dépannage si vous rencontrez des problèmes de chargement de votre plugin.

  • Assurez-vous que vous avez activé votre plugin dans la configuration de l’opérateur de la console et que votre nom de plugin est la sortie en exécutant la commande suivante:

    $ oc get console.operator.openshift.io cluster -o jsonpath='{.spec.plugins}'
    Copy to Clipboard Toggle word wrap
    • Dans la perspective de l’administrateur, vérifiez les plugins activés sur la carte d’état de la page Aperçu. Il faut actualiser votre navigateur si le plugin a été récemment activé.
  • Assurez-vous que votre service de plugin est sain en:

    • La vérification de l’état de votre pod plugin est en cours d’exécution et vos conteneurs sont prêts.
    • La vérification du sélecteur d’étiquette de service correspond au pod et le port cible est correct.
    • Bouclez le plugin-manifest.json à partir du service dans un terminal sur le pod de console ou un autre pod sur le cluster.
  • Le nom de ressource ConsolePlugin (consolePlugin.name) correspond au nom du plugin utilisé dans package.json.
  • Le nom de votre service, l’espace de noms, le port et le chemin sont déclarés correctement dans la ressource ConsolePlugin.
  • Assurez-vous que votre service de plugin utilise HTTPS et des certificats de service de service.
  • La vérification des certificats ou des erreurs de connexion dans les logs des pod consoles.
  • Il n’est pas désactivé de vérifier l’indicateur de fonctionnalité sur lequel votre plugin s’appuie.
  • Assurez-vous que votre plugin n’a pas de consolePlugin.dependencies dans package.json qui ne sont pas satisfaits.

    • Cela peut inclure des dépendances de version console ou des dépendances sur d’autres plugins. Filtrez la console JS dans votre navigateur pour le nom de votre plugin pour voir les messages qui sont enregistrés.
  • Assurez-vous qu’il n’y a pas de typos dans la perspective d’extension nav ou les ID de section.

    • Il se peut que votre plugin soit chargé, mais les éléments nav manquants si les identifiants sont incorrects. Essayez de naviguer sur une page de plugin directement en éditant l’URL.
  • Assurez-vous qu’il n’y a pas de stratégies réseau qui bloquent le trafic du pod de console vers votre service de plugin.

    • Au besoin, ajustez les stratégies réseau pour permettre aux pods de console dans l’espace de noms openshift-console de faire des demandes à votre service.
  • Consultez la liste des plugins dynamiques à charger dans votre navigateur dans l’onglet Console du navigateur des outils de développement.

    • Évaluez window.SERVER_FLAGS.consolePlugins pour voir le plugin dynamique sur la console frontale.

Chapitre 6. Terminal Web

6.1. Installation du terminal web

Il est possible d’installer le terminal Web à l’aide de l’opérateur de terminal Web listé dans le service OpenShift Red Hat sur AWS OperatorHub. Lorsque vous installez l’opérateur de terminal Web, les définitions de ressources personnalisées (CRD) requises pour la configuration de la ligne de commande, telles que DevWorkspace CRD, sont automatiquement installées. La console Web crée les ressources requises lorsque vous ouvrez le terminal Web.

Conditions préalables
  • Il est connecté au service Red Hat OpenShift sur la console web AWS.
  • Il y a des autorisations d’administrateur de clusters.
Procédure
  1. Dans la perspective de l’administrateur de la console Web, accédez à Opérateurs → OperatorHub.
  2. Cliquez sur la case Filtrer par mot-clé pour rechercher l’opérateur de terminal Web dans le catalogue, puis cliquez sur la tuile du terminal Web.
  3. Lisez la brève description de l’opérateur sur la page Terminal Web, puis cliquez sur Installer.
  4. Dans la page Installer l’opérateur, conservez les valeurs par défaut pour tous les champs.

    • L’option rapide dans le menu Update Channel permet l’installation de la dernière version de l’opérateur de terminal Web.
    • L’option Tous les espaces de noms dans le menu Mode d’installation permet à l’opérateur de regarder et d’être disponible pour tous les espaces de noms du cluster.
    • L’option Openshift-operators dans le menu Installed Namespace installe l’opérateur dans l’espace de noms openshift-operators par défaut.
    • L’option Automatique du menu Stratégie d’approbation garantit que les futures mises à niveau de l’opérateur sont gérées automatiquement par le gestionnaire du cycle de vie de l’opérateur.
  5. Cliquez sur Install.
  6. Dans la page Opérateurs installés, cliquez sur l’opérateur de visualisation pour vérifier que l’opérateur est listé sur la page Opérateurs installés.

    Note

    L’opérateur de terminal Web installe l’opérateur DevWorkspace en tant que dépendance.

  7. Après l’installation de l’opérateur, actualisez votre page pour voir l’icône du terminal de ligne de commande () dans le mât de la console.

6.2. En utilisant le terminal web

Il est possible de lancer une instance de terminal de ligne de commande intégrée dans la console Web. Cette instance terminale est préinstallée avec des outils CLI communs pour interagir avec le cluster, tels que oc, kubectl,odo, kn, tkn, helm et subctl. Il a également le contexte du projet sur lequel vous travaillez et vous connecte automatiquement à l’aide de vos informations d’identification.

6.2.1. Accéder au terminal web

Après l’installation de l’opérateur de terminal Web, vous pouvez accéder au terminal Web. Après l’initialisation du terminal web, vous pouvez utiliser les outils CLI préinstallés comme oc, kubectl, odo, kn, tkn, barre et sous-ctl dans le terminal Web. Il est possible de redémarrer les commandes en les sélectionnant dans la liste des commandes que vous avez exécutées dans le terminal. Ces commandes persistent sur plusieurs sessions terminales. Le terminal Web reste ouvert jusqu’à ce que vous le fermez ou jusqu’à ce que vous fermez la fenêtre ou l’onglet du navigateur.

Conditions préalables

  • Il y a accès à un service Red Hat OpenShift sur le cluster AWS et vous êtes connecté à la console Web.
  • L’opérateur de terminal Web est installé sur votre cluster.

Procédure

  1. Cliquez sur l’icône du terminal de la ligne de commande () dans le mât de la console. L’instance de terminal Web s’affiche dans le volet terminal de la ligne de commande. Cette instance est automatiquement connectée avec vos identifiants.
  2. Dans le cas où un projet n’a pas été sélectionné dans la session en cours, sélectionnez le projet dans lequel DevWorkspace CR doit être créé à partir de la liste déroulante Projet. Le projet en cours est sélectionné par défaut.

    Note
    • DevWorkspace CR définit le terminal web d’un utilisateur. Ce CR contient des détails sur l’état du terminal Web de l’utilisateur et les composants d’image de conteneur.
    • Le DevWorkspace CR n’est créé que s’il n’existe pas déjà.
  3. Cliquez sur Démarrer pour initialiser le terminal Web en utilisant le projet sélectionné.
  4. Cliquez sur + pour ouvrir plusieurs onglets dans le terminal Web de la console.

6.3. Dépannage du terminal web

6.3.1. Les politiques des terminaux Web et des réseaux

Le terminal Web pourrait ne pas démarrer si le cluster a des stratégies réseau configurées. Afin de démarrer une instance de terminal Web, l’opérateur de terminal Web doit communiquer avec le pod du terminal Web pour vérifier qu’il est en cours d’exécution, et le service Red Hat OpenShift sur la console Web AWS doit envoyer des informations pour se connecter automatiquement au cluster dans le terminal. En cas d’échec de l’une ou l’autre étape, le terminal Web ne démarre pas et le panneau terminal est dans un état de chargement jusqu’à ce qu’une date limite de contexte dépasse l’erreur.

Afin d’éviter ce problème, assurez-vous que les stratégies réseau pour les espaces de noms utilisés pour les terminaux permettent l’entrée des espaces de noms openshift-console et openshift-operators.

Les échantillons suivants montrent les objets NetworkPolicy pour permettre l’entrée des espaces de noms openshift-console et openshift-operators.

Autoriser l’entrée à partir de l’espace de noms openshift-console

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-from-openshift-console
spec:
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          kubernetes.io/metadata.name: openshift-console
  podSelector: {}
  policyTypes:
  - Ingress
Copy to Clipboard Toggle word wrap

Autoriser l’entrée à partir de l’espace de noms openshift-operators

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-from-openshift-operators
spec:
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          kubernetes.io/metadata.name: openshift-operators
  podSelector: {}
  policyTypes:
  - Ingress
Copy to Clipboard Toggle word wrap

6.4. Désinstallation du terminal web

La désinstallation de l’opérateur de terminal Web ne supprime aucune des définitions de ressources personnalisées (CRD) ou des ressources gérées qui sont créées lorsque l’opérateur est installé. À des fins de sécurité, vous devez désinstaller manuellement ces composants. En supprimant ces composants, vous économisez des ressources en cluster parce que les terminaux ne sont pas inactifs lorsque l’opérateur est désinstallé.

La désinstallation du terminal web est un processus en deux étapes:

  1. Désinstallez l’opérateur de terminal Web et les ressources personnalisées (CR) qui ont été ajoutées lors de l’installation de l’opérateur.
  2. Désinstallez l’opérateur DevWorkspace et ses ressources personnalisées qui ont été ajoutées en tant que dépendance de l’opérateur de terminal Web.

6.4.1. La suppression de l’opérateur de terminal Web

Il est possible de désinstaller le terminal Web en supprimant l’opérateur de terminal Web et les ressources personnalisées utilisées par l’opérateur.

Conditions préalables

  • Accès à un service Red Hat OpenShift sur le cluster AWS avec les autorisations d’administrateur de clusters.
  • C’est vous qui avez installé le CLI oc.

Procédure

  1. Dans la perspective de l’administrateur de la console Web, accédez aux opérateurs → Opérateurs installés.
  2. Faites défiler la liste de filtres ou tapez un mot clé dans la zone Filtrer par nom pour trouver l’opérateur de terminal Web.
  3. Cliquez sur le menu Options de l’opérateur de terminal Web, puis sélectionnez Opérateur de désinstallation.
  4. Dans la boîte de dialogue de confirmation de l’opérateur de désinstallation, cliquez sur Désinstaller pour supprimer les déploiements de l’opérateur, de l’opérateur et des pods du cluster. L’opérateur cesse de fonctionner et ne reçoit plus de mises à jour.

6.4.2. La suppression de l’opérateur DevWorkspace

Afin de désinstaller complètement le terminal Web, vous devez également supprimer l’opérateur DevWorkspace et les ressources personnalisées utilisées par l’opérateur.

Important

L’opérateur DevWorkspace est un opérateur autonome et peut être requis en tant que dépendance pour d’autres opérateurs installés dans le cluster. Suivez les étapes ci-dessous uniquement si vous êtes sûr que l’opérateur DevWorkspace n’est plus nécessaire.

Conditions préalables

  • Accès à un service Red Hat OpenShift sur le cluster AWS avec les autorisations d’administrateur de clusters.
  • C’est vous qui avez installé le CLI oc.

Procédure

  1. Enlevez les ressources personnalisées DevWorkspace utilisées par l’Opérateur, ainsi que tous les objets Kubernetes associés:

    $ oc delete devworkspaces.workspace.devfile.io --all-namespaces --all --wait
    Copy to Clipboard Toggle word wrap
    $ oc delete devworkspaceroutings.controller.devfile.io --all-namespaces --all --wait
    Copy to Clipboard Toggle word wrap
    Avertissement

    Dans le cas où cette étape n’est pas terminée, les finalisateurs rendent difficile la désinstallation complète de l’opérateur.

  2. Enlevez tous les services restants, secrets et configuration des cartes. En fonction de l’installation, certaines ressources incluses dans les commandes suivantes peuvent ne pas exister dans le cluster.

    $ oc delete all --selector app.kubernetes.io/part-of=devworkspace-operator,app.kubernetes.io/name=devworkspace-webhook-server -n openshift-operators
    Copy to Clipboard Toggle word wrap
    $ oc delete serviceaccounts devworkspace-webhook-server -n openshift-operators
    Copy to Clipboard Toggle word wrap
    $ oc delete clusterrole devworkspace-webhook-server
    Copy to Clipboard Toggle word wrap
    $ oc delete clusterrolebinding devworkspace-webhook-server
    Copy to Clipboard Toggle word wrap
  3. Désinstaller l’opérateur DevWorkspace:

    1. Dans la perspective de l’administrateur de la console Web, accédez aux opérateurs → Opérateurs installés.
    2. Faites défiler la liste de filtres ou tapez un mot clé dans la zone Filtrer par nom pour trouver l’opérateur DevWorkspace.
    3. Cliquez sur le menu Options de l’opérateur, puis sélectionnez Opérateur de désinstallation.
    4. Dans la boîte de dialogue de confirmation de l’opérateur de désinstallation, cliquez sur Désinstaller pour supprimer les déploiements de l’opérateur, de l’opérateur et des pods du cluster. L’opérateur cesse de fonctionner et ne reçoit plus de mises à jour.

Chapitre 7. À propos des tutoriels de démarrage rapide

Lorsque vous créez des tutoriels de démarrage rapide pour le Red Hat OpenShift Service sur la console web AWS, suivez ces directives pour maintenir une expérience utilisateur cohérente tout au long de tous les démarrages rapides.

7.1. Comprendre les débuts rapides

Le démarrage rapide est un tutoriel guidé avec des tâches utilisateur. Dans la console Web, vous pouvez accéder à des démarrages rapides sous le menu Aide. Ils sont particulièrement utiles pour être orientés avec une application, un opérateur ou une autre offre de produits.

Le démarrage rapide se compose principalement de tâches et d’étapes. Chaque tâche a plusieurs étapes, et chaque démarrage rapide a plusieurs tâches. À titre d’exemple:

  • La tâche 1

    • Étape 1
    • Étape 2
    • Étape 3
  • La tâche 2

    • Étape 1
    • Étape 2
    • Étape 3
  • La tâche 3

    • Étape 1
    • Étape 2
    • Étape 3

7.2. Démarrage rapide du flux de travail de l’utilisateur

Lorsque vous interagissez avec un tutoriel de démarrage rapide existant, c’est l’expérience de workflow attendue:

  1. Dans la perspective Administrateur ou développeur, cliquez sur l’icône Aide et sélectionnez Démarrage rapide.
  2. Cliquez sur une carte de démarrage rapide.
  3. Dans le panneau qui apparaît, cliquez sur Démarrer.
  4. Complétez les instructions à l’écran, puis cliquez sur Suivant.
  5. Dans le module Vérifiez votre module de travail qui apparaît, répondez à la question pour confirmer que vous avez terminé la tâche avec succès.

    1. Lorsque vous sélectionnez Oui, cliquez sur Suivant pour continuer à la tâche suivante.
    2. Lorsque vous sélectionnez Non, répétez les instructions de tâche et vérifiez à nouveau votre travail.
  6. Effectuez les étapes 1 à 6 ci-dessus pour terminer les tâches restantes dans le démarrage rapide.
  7. Après avoir terminé la tâche finale, cliquez sur Fermer pour fermer le démarrage rapide.

7.3. Composants de démarrage rapide

Le démarrage rapide se compose des sections suivantes:

  • Carte: La tuile de catalogue qui fournit les informations de base du démarrage rapide, y compris le titre, la description, l’engagement de temps et l’état d’achèvement
  • Introduction: Un bref aperçu de l’objectif et des tâches du démarrage rapide
  • En-têtes de tâches: titres hyper-liés pour chaque tâche dans le démarrage rapide
  • Consultez votre module de travail : Un module permettant à un utilisateur de confirmer qu’il a accompli une tâche avec succès avant de passer à la tâche suivante dans le démarrage rapide
  • Conseils: Une animation pour aider les utilisateurs à identifier des zones spécifiques du produit
  • Boutons

    • Boutons suivants et arrière: Boutons pour naviguer dans les étapes et les modules dans chaque tâche d’un démarrage rapide
    • Boutons d’écran finaux: Boutons pour fermer le démarrage rapide, revenir aux tâches précédentes dans le démarrage rapide et afficher tous les démarrages rapides

La principale zone de contenu d’un démarrage rapide comprend les sections suivantes:

  • Copie de carte
  • Introduction
  • Étapes des tâches
  • Les modales et la messagerie in-app
  • Consultez votre module de travail

Legal Notice

Copyright © 2025 Red Hat

OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).

Modified versions must remove all Red Hat trademarks.

Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.

Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.

Linux® is the registered trademark of Linus Torvalds in the United States and other countries.

Java® is a registered trademark of Oracle and/or its affiliates.

XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.

MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.

Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.

The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.

All other trademarks are the property of their respective owners.

Retour au début
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. Découvrez nos récentes mises à jour.

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 le Blog 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.

Theme

© 2025 Red Hat