Détection de Pivotal Cloud Foundry

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 9 minutes de lecture
  • L’application ServiceNow Découverte recherche Pivotal Cloud Foundry les composants (PCF) version 3 à l’aide du Pivotal Cloud Foundry modèle. La détection de certaines de ces ressources nécessite la mise à jour de l’application Schémas de découverte et de mappage des servicesServiceNow Storeà partir du .

    Vous pouvez utiliser ce modèle sur la Now Platform version Kingston de départ.

    La découverte des composants PCF V3 est prise en charge lorsque le module d’extension Schémas de découverte et de mappage des services version 1.0.99, mars 2023 est installé. Le modèle continue de prendre en charge la découverte de composants PCF V2.

    Demander des applications dans l'App Store

    Visitez le site Web ServiceNow Store pour découvrir toutes les applications disponibles et pour obtenir des informations sur la procédure à suivre pour soumettre des demandes à la boutique. Pour obtenir des informations sur les notes de publication cumulatives pour toutes les applications publiées, consultez les ServiceNow Storenotes de publication relatives à l'historique des versions.

    Prérequis

    Informations d'identification Pivotal Cloud Foundry
    Créez les informations d’identification Pivotal Cloud Foundry .
    1. Accédez à la Découverte > Informations d'identification.
    2. Sélectionnez Nouveau.
    3. Sélectionnez les informations d’identification CloudFoundry.
    4. Renseignez les champs suivants du formulaire :
      Champ Description
      Nom Nom des informations d'identification. Par exemple, pcf_user credentials
      Actif Option permettant la détection de ces informations d'identification. Cochez cette case pour activer la détection.
      S'applique à Les informations d'identification que vous souhaitez appliquer ou non à Tous les serveurs MID de votre réseau, ou à un ou plusieurs MID Servers spécifiques. Sélectionnez MID Servers spécifiques.
      Commande Ordre dans lequel la plateforme teste ces informations d’identification lorsqu’elle tente de se connecter aux appareils. Un nombre plus faible indique que les informations d’identification semblent plus haut dans la liste. Établissez l’ordre des informations d’identification lors de l’utilisation d’un grand nombre d’informations d’identification ou lorsque la sécurité verrouille les utilisateurs après trois tentatives de connexion infructueuses. Si toutes les informations d'identification ont le même numéro d'ordre (ou n'en ont pas), l'instance les essaie de manière aléatoire. La valeur par défaut est 100.
      Noms d'utilisateur Nom de l'utilisateur de ces informations d'identification. Évitez les espaces blancs dans les noms d'utilisateur. Un avertissement s’affiche si la plateforme détecte des espaces de début ou de fin dans le nom d’utilisateur. Par exemple, pcf_user. Utilisez l'élément client_id qui permet de générer le jeton JWT.
      Mot de passe Mot de passe pour l'utilisateur de ces informations d'identification. Utilisez l'élément client_secret qui permet de générer le jeton JWT.
      Alias d'identification Autre nom pour ces informations d'identification. Par exemple, cf.

      Si ce champ est fermé, sélectionnez l’icône de déverrouillage pour le déverrouiller.

    5. Sélectionnez Mettre à jour.
    Informations d'identification de jeton Web JSON
    Pour vérifier le jeton Web JSON (JWT), effectuez les étapes de validation de jeton suivantes.

    Le format du jeton JWT est : https://docs.cloudfoundry.org/api/uaa/version/4.27.0/index.html#jwt-bearer-token-grant

    1. Exécutez le script cURL suivant par rapport à l'API de serveur User Account and Authentication (UAA) et vérifiez les résultats :

      curl -s -k https://ip_address:port/oauth/token -X; POST -H ”Content-Type: application/x-www-form-urlencoded” -H “Accept: application/json” -d “client_id=<INSERT_USER_HERE>&client_secret=<INSERT_PASS_HERE>&grant_type=client_credentials&token_format=jwt&response_type=token”

      Si cette commande ne génère pas de jeton, vérifiez que les informations d’identification dans le référentiel sont correctes, sinon passez à l’étape ServiceNow 2.

    2. Exécutez le script cURL suivant par rapport à l'API Pivotal Cloud Foundry :

      curl https ://ip_address :port/v3/spaces -k -v -H « Accepter : application/json » -H « Autorisation : porteur<INSÉRER UN JETON ICI> »

      Si cette commande ne récupère pas les informations sur les espaces PCF, vérifiez les informations d’identification dans le référentiel des ServiceNow informations d’identification.

    Informations d’identification pour les éléments d’API V3
    Autorisez un utilisateur en lecture seule à utiliser les éléments d’API suivants :
    • –/v3/organisations
    • –/v3/espaces
    • –/v3/domaines
    • –/v3/routes
    • –/v3/organization_quotas
    • –/v3/space_quotas
    • –/v3/apps
    • -/v3/service_offerings
    • -/v3/service_plans
    • -/v3/service_instances
    • -/v3/gouttelettes
    Remarque :
    Le Pivotal Cloud Foundry modèle prend également en charge les API PCF V2.
    Créer un calendrier Découverte sans serveur
    1. Accédez à la Découverte > Calendriers de découverte.
    2. Sélectionnez Nouveau.
    3. Renseignez les champs suivants du formulaire :
      Tableau 1. Formulaire Calendrier Découverte
      Champ Description
      Nom Entrez un nom unique et descriptif pour ce calendrier Découverte, par exemple pcf
      Détecter Pour le type de détection, sélectionnez Sans serveur
      Serveur MID Serveurs MID auxquels les informations d'identification s'appliquent. Spécifiez les Serveur MID requis, par exemple Discovery_Server
      Actif Option permettant la détection de ces informations d'identification. Cochez cette case pour activer Discovery.
      Alias d'identification Autre nom pour ces informations d'identification. Utilisez l’alias associé aux informations d’identification Pivotal Cloud Foundry que vous avez créées précédemment.
    4. Cliquez avec le bouton droit sur l'en-tête du formulaire Calendrier Découverte, puis sélectionnez Enregistrer.

      Modèle d'exécution sans serveur

    5. Sélectionnez l'onglet Modèles d'exécution sans serveur.
    6. Sélectionnez Nouveau.
    7. Renseignez les champs suivants du formulaire :
      Tableau 2. Formulaire Modèle d'exécution sans serveur
      Champ Description
      Nom Saisissez un nom unique et descriptif pour ce modèle d’exécution sans serveur, par exemple, pcf1
      Modèle Sélectionnez Cloud Foundry.
      Hôte proxy Nom de domaine complet de l’ordinateur sur lequel vous installez le serveur proxy. Spécifiez Global.
      Actif Cochez la case pour activer ce calendrier de détection. Cochez cette case.
    8. Cliquez avec le bouton droit sur l’en-tête du formulaire Schémas d’exécution sans serveur et sélectionnez Enregistrer.
    9. Sélectionnez l’onglet Schémas d’exécution sans serveur
    10. Créez et définissez le modèle d'exécution sans serveur conformément à la description de la documentation du produit.
      Configurez les paramètres requis par le Pivotal Cloud Foundry modèle comme suit :
      Tableau 3. Paramètres du lanceur de modèle Découverte
      Paramètre Description
      Organisation Nom de l’organisation qui doit être détectée, ou toutes où l’entrée est « * ».
      credential_alias Autre nom pour ces informations d'identification. Utilisez l’alias associé aux informations d’identification Pivotal Cloud Foundry que vous avez créées précédemment.
      URL_CF URL de l’API du contrôleur du cloud utilisé pour récupérer les informations à partir de Pivotal Cloud Foundry.
      URL_CF_AUTH API de serveur UAA​utiliséee pour générer le jeton. Entrez la valeur au format suivant : https://uaa.sys.dev.phx.pcf.example.com/oauth/token
    11. Mettre à jour.
    12. Pour démarrer la découverte, accédez à la définition de Serverless Découverte et sélectionnez Détecter maintenant.
    Fonctions de fermeture EVAL

    Utilisez les fonctions de fermeture EVAL suivantes pour concaténer toutes les organisations en utilisant « , » comme séparateur.

    var rtrn = ’’;
    var organizations = ${organizations[*].name};
    var beforeReturn = ’’;
    var separator = ’’;
    for (var i = 0; i < organizations.size(); i++)   
    	{
    	beforeReturn += separator + organizations.get(i);  
    	separator = ',';   
    	}
    rtrn = beforeReturn;
    

    Utilisez les fonctions de fermeture suivantes EVAL pour renvoyer 1 si l’état opérationnel est actif et 2 s’il n’est pas actif.

    var rtrn = '';
    var currentOrgStatus = ${organizations[].operational_status};
    var status = currentOrgStatus.toLowerCase();
    if(status == "active"){  
       rtrn = "1";  
    }
    else { 
       rtrn = "2";
    }
    

    Utilisez la fonction de fermeture suivante EVAL pour renvoyer 1 si l’état opérationnel est démarré et 2 s’il n’est pas démarré.

    var rtrn = '';
    var currentAppStatus = ${apps[].state};
    var status = currentAppStatus.toLowerCase();
    if(status == "started"){
       rtrn = "1";  
    }
    else {   
       rtrn = "2";   
    }
    
    Obtenir un appel Cloud Foundry
    L'opération personnalisée Obtenir un appel Cloud Foundry gère la génération de jetons. Elle utilise les informations d'identification et la variable de contexte URL_CF_AUTH pour générer un jeton utilisé pour créer des appels API.

    Lorsqu'un jeton est généré, l'élément URL_CF est utilisé pour créer les appels API définis dans le champ Ressource. L'opération personnalisée gère également la pagination lorsque laquelle la réponse s'étend sur plus d'une page.

    L'opération Obtenir un appel Cloud Foundry analyse l'entrée JSON pour remplir les tables et les variables.

    Opération personnalisée Cloud Foundry

    Pivotal Cloud Foundry Section d’extension BOSH

    Le Pivotal Cloud Foundry BOSH est une section d’extension du Pivotal Cloud Foundry Pattern.

    L’extension est disponible sur le pour ServiceNow® Store la version 1.6.0 de Schémas de découverte et de mappage des services juin 2023.
    Exigences pour Pivotal Cloud Foundry BOSH
    Remarque :
    Les exigences suivantes ne concernent que la section d’extension BOSH.
    L’URL d’authentification Opsman doit être fournie en tant que paramètre de modèle avec le nom URL_OPSMAN_AUTH. Par exemple : https://< point d’entrée Opsman >/uaa/oauth/token
    Les informations d’identification ajoutées doivent être autorisées à exécuter les API suivantes :
    • /uaa/oauth/jeton
    • /api/v0/deployed/products
    Remarque :
    Les API personnalisées sont ajoutées en tant qu’étape d’API Tanzu Opsman Get au modèle.

    Données collectées par Découverte lors d'une détection horizontale

    Tableau 4. Informations collectées
    Champ Description
    CI principal : Fondation PCF [cmdb_ci_pcf_foundation]
    Nom Pivotal Cloud Foundry Nom de l’entrée de grappe

    <name>-<hostCf:<portCf>

    ip_address Pivotal Cloud Foundry IP de l’hôte.
    port Pivotal Cloud Foundry Port de service.
    short_description Pivotal Cloud Foundry Numéro de version du service.
    Organisation Liste d'organisations, gérée par la grappe PCF. Les entrées sont séparées à l'aide d'une virgule « , ».
    Organisation PCF [cmdb_ci_pcf_organization]
    Nom Nom de l'organisation
    URL URL unique de l'organisation
    pcf_guid UID d'organisation dans Cloud Foundry
    operational_status État de l'organisation
    Espace PCF [cmdb_ci_pcf_space]
    Nom Nom de l'espace
    URL URL unique de l'espace
    pcf_guid UID d'espace dans Cloud Foundry
    Application PCF [cmdb_ci_pcf_appl]
    Nom Nom de l'application
    URL URL unique de l'application
    pcf_guid UID d'application dans Cloud Foundry
    Itinéraire PCF [cmdb_ci_pcf_route]
    Nom Nom de la route
    URL URL unique de la route
    pcf_guid UID de route dans Cloud Foundry
    port Port de la route
    type Type de routage
    Quota PCF [cmdb_ci_pcf_quota]
    Nom Nom du quota
    URL URL unique du quota
    pcf_guid UID de quota dans Cloud Foundry
    Domaine PCF [cmdb_ci_pcf_domain]
    nom Nom du domaine
    URL URL unique du domaine
    pcf_guid UID de domaine dans Cloud Foundry
    Instance d’espace PCF [cmdb_ci_pcf_space_instance]
    nom Nom de l'instance de service d'espace
    URL URL unique de l'instance de service d'espace
    pcf_guid UID d'instance de service d'espace dans Cloud Foundry
    Plan de service PCF [cmdb_ci_pcf_service_plan]
    nom Nom de l'instance de plan de service
    URL URL unique de plan de service
    pcf_guid UID d'instance de service d'espace dans Cloud Foundry
    Service PCF [cmdb_ci_pcf_service]
    nom Nom de service
    URL URL unique du service
    pcf_guid UID de service dans Cloud Foundry
    Gouttelette PCF [cmdb_ci_pcf_droplet]
    nom URL de ressource
    pcf_guid ID de gouttelette
    URL Droplet URL
    install_status État d’installation : 1, « installé »
    operational_status Statut opérationnel : 1, « opérationnel »
    Valeur clé [cmdb_key_value]
    clé Clé de la balise de ressource
    Remarque :
    Ces données ne sont collectées que pour les appels d’API V3.
    valide Valeur de la balise de ressource.
    Remarque :
    Ces données ne sont collectées que pour les appels d’API V3.
    Tableau 5. Données détectées par la section d’extension Pivotal Cloud Foundry BOSH
    Champ Description

    Déploiement BOSH (cmdb_ci_bosh_deployment)

    Nom Le nom d’installation de la ressource.
    object_id ID du produit déployé.
    install_status Codé en dur sur la valeur : 1= installé.
    operational_status Codé en dur sur la valeur : 1= opérationnel.
    deployment_version Version du produit déployé.
    deployment_type Type du produit déployé.

    Relations CI

    Ces relations sont créées pour prendre en charge la détection d'Pivotal Cloud Foundry.

    CI Relation CI
    Espace PCF [cmdb_ci_pcf_space]
    cmdb_ci_pcf_space Contains::Contained by cmdb_ci_pcf_organization
    Application PCF [cmdb_ci_pcf_appl]
    cmdb_ci_pcf_appl Contains::Contained by cmdb_ci_pcf_space
    Itinéraire PCF [cmdb_ci_pcf_route]
    cmdb_ci_pcf_route Contains::Contained by cmdb_ci_pcf_foundation
    Quota PCF [cmdb_ci_pcf_quota]
    cmdb_ci_pcf_quota Uses::Used by cmdb_ci_pcf_space

    cmdb_ci_pcf_organization

    Domaine PCF [cmdb_ci_pcf_domain]
    cmdb_ci_pcf_domain Uses::Used by cmdb_ci_pcf_route
    Owns::Owned by cmdb_ci_pcf_organization
    Contains::Contained by cmdb_ci_pcf_foundation
    Instance d’espace PCF [cmdb_ci_pcf_space_instance]
    cmdb_ci_pcf_space_instance Contains::Contained by cmdb_ci_pcf_space
    Plan de service PCF [cmdb_ci_pcf_service_plan]
    cmdb_ci_pcf_service_plan Uses::Used by cmdb_ci_pcf_space_instance
    Service PCF [cmdb_ci_pcf_service]
    cmdb_ci_pcf_service Uses::Used by cmdb_ci_pcf_service_plan
    Gouttelette PCF [cmdb_ci_pcf_droplet]
    cmdb_ci_pcf_appl Contains::Contained by cmdb_ci_pcf_droplet
    Valeur clé [cmdb_key_value]
    cmdb_key_value Référence uniquement.

    Par exemple : configuration_item

    cmdb_ci_pcf_droplet
    cmdb_key_value Référence uniquement.

    Par exemple : configuration_item

    cmdb_ci_pcf_organization
    cmdb_key_value Référence uniquement.

    Par exemple : configuration_item

    cmdb_ci_pcf_space
    cmdb_key_value Référence uniquement.

    Par exemple : configuration_item

    cmdb_ci_pcf_domain
    cmdb_key_value Référence uniquement.

    Par exemple : configuration_item

    cmdb_ci_pcf_route
    cmdb_key_value Référence uniquement.

    Par exemple : configuration_item

    cmdb_ci_pcf_appl
    cmdb_key_value Référence uniquement.

    Par exemple : configuration_item

    cmdb_ci_pcf_service
    cmdb_key_value Référence uniquement.

    Par exemple : configuration_item

    cmdb_ci_pcf_service_plan
    cmdb_key_value Référence uniquement.

    Par exemple : configuration_item

    cmdb_ci_pcf_space_instance

    Pivotal Cloud Foundry Relations BOSH

    Ces relations sont créées pour prendre en charge Pivotal Cloud Foundry la découverte de la section d’extension BOSH.

    CI Relation CI

    Grappe Cloud Foundry [cmdb_ci_pcf_foundation]

    Contains::Contained by

    Déploiement BOSH [cmdb_ci_bosh_deployment]