inventraires des frames pseries

Creation: 27 aout 2013
Mise à jour:
Version: 1.0
Author: Jean-Louis Bicquelet-Salaün
Location: http://jlbicquelet.free.fr
Copyright: (c) 2013 Jean-Louis BICQUELET-SALAÜN

faire l'inventaire des frames pseries

Voila une tùche bien fastidieuce à l'aide de l'interface graphique et encore plus compliquée si on utilise la screen.

Nous allons nous munir d'une trousse à outils de commandes pour lister le contenu matériel des frames des pseries à partir de la hmc.

exemple de commandes pour l'inventaire

  1. Liste de toutes les frames
    lssyscfg -r sys -F name
    P570-S02
    P570-S03
    P570-S04
    P590-S03
    P570-S01
    P590-S02
    P595-S01
    
  2. Liste des type, numéro de série adresse IP
    lssyscfg -r sys -F name,type_model,serial_num,ipaddr,ipaddr_secondary
    P570-S02,9117-570,65XXXXD,10.0.0.249,null
    P570-S03,9117-570,65XXXXE,10.0.0.246,null 
    ...
  3. Liste de toutes les frames et de toutes les partitions qu'elles contiennent
    for i in `lssyscfg -r sys -F name`; do echo $i; lssyscfg -m $i -r lpar -F name; done
    P590-S02
    server05
    server03
    server02
    ...
  4. Liste des CPUS installées et disponiblespour chaque frame
    for i in `lssyscfg -r sys -F name`; do   printf "$i " ; lshwres -r proc -m $i --level sys -F"installed_sys_proc_units,configurable_sys_proc_units"; done
    P590-S01 32.0,32.0
    P590-S02 16.0,16.0
    P570-S01 12.0,10.0
    P595-S01 64.0,57.0
    P590-S02 32.0,26.0
    ...
  5. Liste de l’ensemble de la mĂ©moire pour l’ensemble des frames
    for i in `lssyscfg -r sys -F name`; do printf "$i "; lshwres  -m $i -r mem --level sys -F"installed_sys_mem,configurable_sys_mem,curr_avail_sys_mem" ;  done
    P590-S01 131072,131072,512
    P590-S02 163840,163840,24064
    P570-S01 90112,90112,23424
    P595-S01 262144,237568,11520
    P590-S02-HFE 196608,196608,1792 
    ...
  6. Liste de l’ensemble de la mĂ©moire installĂ©e formatĂ©e pour l’ensemble des armoires
    for i in `lssyscfg -r sys -F name`; do  v=`lshwres  -m $i -r mem --level sys -F installed_sys_mem `; printf "$i $v Go\n"  ; done
    P590-S01 131072 Go
    P590-S02 163840 Go
    P570-S01 90112 Go
    P595-S01 237568 Go
    P590-S03 196608 Go 
    ...
  7. Lister toutes les cartes installées
    for i in `lssyscfg -r sys -F name`; do   lshwres -r io --rsubtype slot  –m $i -F "unit_phys_loc,bus_id,phys_loc,description"; done 
    
  8. Lister toutes les cartes d’une frame
    lshwres -r io --rsubtype slot -m P590-S01 -F "lpar_name,unit_phys_loc,bus_id,phys_loc,description"
    server05,U5881.001.9XXXXX3-P1,10,T6,SCSI bus controller
    server03,U5881.001.9XXXXX3-P1,10,C08,Fibre Channel Serial Bus
    null,U5881.001.9XXXXX3-P1,10,C09,Fibre Channel Serial Bus
    null,U5881.001.9XXXXX3-P1,10,C10,SCSI bus controller
    server01,U5881.001.9XXXXX3-P1,11,C01,PCI 10/100/1000Mbps Ethernet UTP 2-port
    server01,U5881.001.9XXXXX3-P1,11,C02,Fibre Channel Serial Bus
    null,U5881.001.9XXXXX3-P1,11,C03,Empty slot
    null,U5881.001.9XXXXX3-P1,11,C04,Empty slot 
    ...
  9. Compter le nombre de cartes réseau
    for i in `lssyscfg -r sys -F name`; do   lshwres -r io --rsubtype slot -m $i -F "unit_phys_loc,bus_id,phys_loc,description"; done | grep Ethernet | sed -n '$='
    
  10. Lister les cartes résau avec un numéro d'ordre
    for i in `lssyscfg -r sys -F name`; do   lshwres -r io --rsubtype slot -m $i -F "unit_phys_loc,bus_id,phys_loc,description"; done | grep Ethernet |sed =
    ...
    225
    U5881.001.9BBBBBC-P2,31,C09,PCI 10/100/1000Mbps Ethernet UTP 2-port
    226
    U5881.001.9BBBBBC-P2,32,C01,PCI 10/100/1000Mbps Ethernet UTP 2-port
    
  11. Compter le nombre de cartes fibres
     for i in `lssyscfg -r sys -F name`; do   lshwres -r io --rsubtype slot -m $i -F "unit_phys_loc,bus_id,phys_loc,description"; done | grep Ethernet | sed -n '$='
    198
    
  12. Compter le nombre de SCSI
    for i in `lssyscfg -r sys -F name`; do   lshwres -r io --rsubtype slot -m $i -F "unit_phys_loc,bus_id,phys_loc,description"; done | grep SCSI | sed -n "$="
    108
    

    Les principaux éléments sont:

    • Ethernet
    • Fibre
    • SCSI
    • Storage
    • Communications
    • Universal
    • SAS
    • RAID
    • Network
    • Empty

    Il suffit d'effectuer le grep sur ce que vous cherchez.

    Un exemple, le nombre de cartes ethernet:

    for i in `lssyscfg -r sys -F name`; do
    do  
    printf “Eternet : “ ; lshwres -r io --rsubtype slot -m $i –F description | grep Ethernet | sed –n ‘$=”
    done 
    
  13. Lister les cartes par serveur
    for i in `lssyscfg -r sys -F name`; do
    echo $i;  
    printf "Ethernet : " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Ethernet | sed -n "$=";
    printf "Network : " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Network| sed -n "$=";
    printf "Fibre : " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Fibre | sed -n "$=";
    printf "Communications: " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Communications | sed -n "$=";
    printf "SAS : " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep SAS| sed -n "$=";
    printf "Storage : " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Storage| sed -n "$=";
    printf "SCSI : " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep SCSI| sed -n "$=";
    printf "USB : " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Universal| sed -n "$=";
    echo
    done 
    

    Dans cet exemple, le rĂ©sultat est destinĂ© Ă  ĂȘtre affichĂ©. C'est pour cela que j'ai utilisĂ© le caractĂšre :.

  14. configuration d’une armoire (destinĂ© Ă  excel)

    Dans cette exemple, le résultat estt séparé par le caractÚre ,. Ce sera ainsi plus facile pour l'importer et le mettre en forme dans excel.

    for i in `lssyscfg -r sys -F name`; do
    echo $i;  
    printf “type ,” ;lssyscfg -r sys -m $i -F "type_model"
    printf “serial number ,” ;lssyscfg -r sys -m $i -F "serial_num"
    
    lshwres -r proc -m $i --level sys -F"installed_sys_proc_units,configurable_sys_proc_units" --header
    lshwres  -m $i -r mem --level sys -F"installed_sys_mem,configurable_sys_mem,curr_avail_sys_mem" --header  
    printf "Ethernet , " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Ethernet | sed -n "$=";
    printf "Network , " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Network| sed -n "$=";
    printf "Fiber Channel , " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Fibre | sed -n "$=";
    printf "Communications, " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Communications | sed -n "$=";
    printf "SAS , " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep SAS| sed -n "$=";
    printf "Storage , " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Storage| sed -n "$=";
    printf "SCSI , " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep SCSI| sed -n "$=";
    printf "USB , " ; lshwres -r io --rsubtype slot -m $i -F"description" | grep Universal| sed -n "$=";
    echo
    echo
    done 
    

conclusion

Il est possible d'extraire un grand nombre d'information Ă  partir dela hmc sur le contenu des frames qu'elle manage.

On peut bien entendu récupérer la mémoire installée ou utilisée, les cpus, les pools installés,etc...

Il est aussi possible de connaitre les extensions et les licences détenues.

A vous de chercher et d'extraire les informations dont vous avez besoin.