Leçon 1 : Réaffectation de grandes quantités d'instances logicielles

Cette leçon vous montre comment réaffecter de grandes quantités d'instances logicielles avec l'API REST et un utilitaire de ligne de commande cURL. Vous pouvez utiliser les informations de cette leçon pour implémenter un utilitaire automatique externe pour le regroupement à grande échelle.

Avant de commencer

Vous devez disposer des privilèges de système d'exploitation root.

Pourquoi et quand exécuter cette tâche

Une fois les données d'analyse logicielle importées depuis le serveur BigFix, les instances logicielles sont automatiquement associées aux produits d'après les règles de regroupement automatique. Si certaines instances sont affectées au mauvais produit, elles doivent être réaffectées correctement.

Dans cette leçon, certaines instances de Tivoli® Storage FlashCopy® Manager sont affectées au mauvais produit. Le produit Tivoli® Storage FlashCopy® Manager n'est installé que sur les ordinateurs dotés d'un nom d'hôte commençant par nc04, et seulement sur les ordinateurs Linux. Vous réaffectez toutes les autres instances de Tivoli® Storage FlashCopy® Manager à une édition d'Tivoli® Storage Manager.

Important :
  • Certaines des commandes dans cette leçon sont longues et, pour la lisibilité de la présentation, des retours à la ligne ont été insérés. Traitez chaque retour à la ligne comme un espace.
  • Vous devez ajouter un ID de jeton à la fin de chaque commande cURL. Pour obtenir le jeton,
    1. Dans l'interface utilisateur de BigFix Inventory, cliquez sur Gestion > Utilisateurs.
    2. Cliquez sur le nom d'utilisateur.
    3. Dans la partie inférieure de la page, cliquez sur Afficher le jeton.

Procédure

  1. Ouvrez une session sur votre ordinateur et lancez l'interface en ligne de commande.
  2. Récupérez une liste de tous les produits reconnus dans votre environnement. Exécutez la commande suivante :
    curl -v -X GET http://server_url:server_port/api/sam/swinventory/products?token=token_ID
  3. Vérifiez la liste pour obtenir l'ID produit d'IBM Tivoli® Storage FlashCopy® Manager.
    {
      "id": "16790",
      "level": "product",
      "isConfirmed": "false",
      "productReleaseComponent": "IBM Tivoli Storage FlashCopy Manager",
      "children": "true",
      "nmbOfAllRows": "44",
      "confidence": "11",
      "type": "root"
    }
  4. Récupérez toutes les éditions du produit. Utilisez l'ID produit obtenu dans l'étape précédente. Exécutez la commande suivante :
    curl -v -X GET http://server_url:server_port/api/sam/swinventory/product/16790/
    releases?token=token_ID
  5. Vérifiez la liste pour obtenir les ID édition d'IBM Tivoli® Storage FlashCopy® Manager.
    {
      "label": "name",
      "identifier": "id",
      "numRows": "1",
      "items": [{
      "id": "985",
      "level": "release",
      "isConfirmed": "false",
      "numberOfAllInstances": "5",
      "productReleaseComponent": "IBM Tivoli Storage FlashCopy Manager 3.1",
        "children": "true",
        "nmbOfAllRows": "1",
        "confidence": "11"
    }
  6. Récupérez la liste de toutes les instances pour les éditions. Utilisez les ID édition obtenus dans l'étape précédente. Exécutez la commande suivante :
    curl -v -X GET http://server_url:server_port/api/sam/swinventory/release/985/
    instances?token=token_ID
  7. Vérifiez la liste pour obtenir les ID inventaire de produits pour les instances d'Tivoli® Storage FlashCopy® Manager qui correspondent à vos critères.

    Instances non installées sur un ordinateur doté d'un nom d'hôte commençant par nc04, ou non installées sur un ordinateur Linux.

    Remarque : Vous devrez peut-être filtrer la liste à l'aide d'un utilitaire externe.
    {
      "isCharged": "true",
      "operatingSystem": "AIX 6.1",
      "isConfirmed": "false",
      "currentServerId": "8233 06A851P",
      "updateTime": "1381322771321",
      "children": "false",
      "hostname": "NC107073",
      "confidence": "11",
      "productInventoryId": "134",
      "id": "134",
      "level": "instance",
      "bundleRules": "the relation in the software catalog, the stand-alone pr
    oduct discovery",
      "isAgentDeleted": "false",
      "processorType": "BigFix(R) POWER7 (750, 755, 775 servers) Multi-core All E
    xisting",
    "productReleaseComponent": "BigFix Tivoli Storage Manager Client 6.3",
      "pvuPerCore": "100",
      "installationPaths": "/BigFix/TSM",
      "nmbOfAllRows": "5",
      "isSimple": "false"
    },
    {
      "isCharged": "true",
      "operatingSystem": "Win2008R2 6.1.7601",
      "isConfirmed": "false",
      "currentServerId": "TLM_VM_42362841-6b4e-ea26-9755-07b28dc0fd41",
      "updateTime": "1381322771321",
      "children": "false",
      "hostname": "VMW009128109094",
      "confidence": "11",
      "productInventoryId": "137",
      "id": "137",
      "level": "instance",
      "bundleRules": "the relation in the software catalog, the stand-alone pr
    oduct discovery",
      "isAgentDeleted": "false",
      "processorType": "Other Other One core All Existing",
      "productReleaseComponent": "IBM Tivoli Storage Manager Client 6.3",
      "pvuPerCore": "100",
      "installationPaths": "C:\\BigFix Software\\TSM",
      "nmbOfAllRows": "5",
      "isSimple": "false"
    }
  8. Récupérez une liste des éditions dans lesquelles les instances peuvent être réaffectées. Utilisez un ID instance obtenu dans l'étape précédente. Exécutez la commande suivante :
    curl -v -X GET http://server_url:server_port/api/sam/swinventory/
    targetBundlesOfInstances?productInventoryId=134&token=token_ID
  9. Vérifiez la liste pour obtenir l'ID édition d'IBM Tivoli® Storage Manager que vous souhaitez réaffecter aux instances.
    {
      "id": "33424",
      	"appliedRules": 
      "the infrastructure co-location, the relation in the software catalog",
      	"releaseId": "33424",
    	  "isSelected": "false",
    	  "branchType": "0",
      	"confidenceLevel":3,
    	  "isShared": "false",
    	  "productName": "IBM Tivoli Storage Manager 6.3",
    	  "productInventoryId": "134},
    }
  10. Réaffectez les éditions en exécutant la commande suivante :
    curl -v -X POST http://server_url:server_port/api/sam/swinventory/reassign -d 
    "productInventoryId=inventory_IDs&productId=release_ID&updateTime=timestamp"?token=token_ID
    Où :
    • inventory_IDs correspond aux instances à réaffecter
    • release_ID représente l'édition du produit à réaffecter
    • timestamp représente l'heure de mise à jour, exprimée en millisecondes. L'horodatage doit être supérieur ou égal aux horodatages récupérés comme propriété des instances à réaffecter, par étape.6

    Par exemple :

    curl -v -X POST http://server_url:server_port/api/sam/swinventory/reassign -d 
    "productInventoryId=134,137&productId=33424&updateTime=9949237658579"
    Une réponse HTTP 204 est reçue. Les instances sélectionnées sont réaffectées à la nouvelle édition.