FusionInventory at LSM/RMLL 2012

21,160 views
21,110 views

Published on

Presentation at Libre So

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
21,160
On SlideShare
0
From Embeds
0
Number of Embeds
19,890
Actions
Shares
0
Downloads
16
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

FusionInventory at LSM/RMLL 2012

  1. 1. The FusionInventory project RMLL / LSM 2012 Walid Nouh - Mathieu Simon ` Geneve Juillet 2012
  2. 2. About us Walid Nouh FusionInventory contributor GLPI contributor Working for TECLIB’, Montpellier
  3. 3. About us Mathieu Simon FusionInventory contributor (l10n) GLPI plugin translation ¨ Working for Gymnasium Koniz-Lerbermatt, Bern
  4. 4. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  5. 5. FusionInventory timeline 2006 First unified inventory agent for Unix 2008 First server implementation (Tracker, a plugin for GLPI) 2009 Agent and server integration 2010 FusionInventory project is born! 2010 Uranos integration 2011 Rudder (cfengine) integration 2012 OTRS integration
  6. 6. The project FusionInventory is a community driven project Active mailing list IRC: #FusionInventory on FreeNode Forge, Git repositories, etc
  7. 7. Contributors 4 active developers An active community 2 companies involved We’re looking for more contributors !
  8. 8. Contributors 4 active developers An active community 2 companies involved We’re looking for more contributors !
  9. 9. Before starting FusionInventory is not a software Agent: a software to install on the computers Server: handles communication with the agents Task: is prepared by the server, executed by an agent
  10. 10. pull / push FusionInventory enables ”push” or ”pull” mode ”pull”: Agent =⇒ Server the agent contacts the server. ”push”: Agent ⇐= Server the server initiates the contact.
  11. 11. Available servers today 4 solutions so far FusionInventory for GLPI http://www.FusionInventory.org Uranos http://uranos.sourceforge.net/ Rudder by Normation http://www.normation.com/#produits OCS Inventory NG Mandriva Pulse 2 ... it’s also possible to perform local XML inventory (soon: switch to JSON).
  12. 12. In contact with developers of FusionDirectory OTRS ITSM (work already in progress)
  13. 13. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  14. 14. Why GLPI for the server? We’re also members of the GLPI community Motivation: Don’t reinvent the wheel! Avoid having a second database and synchronization Focus on what’s important to us - let GLPI do the rest
  15. 15. GLPI: about (1/4) Powerfull web based asset management software Project started in 2003 LAMP Provides a complete plugin API
  16. 16. GLPI: inventory (2/4) Computers, screens, printers, etc Network devices, phones Financial informations Warranties Licenses
  17. 17. GLPI: Service Desk (3/4) ITIL compatible Servicedesk Incident management Problem management Statistics
  18. 18. GLPI (4/4) Reports and statistics Powerful authorization system (LDAP IMAP/POP etc) , , WebSSO (CAS, LemonLDAP etc) ,
  19. 19. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  20. 20. Agent: Installation Many ways to do it Distribution packages Debian, Fedora, EPEL, Ubuntu, Mageia, ... Windows installer GPO, psexec, ... Static prebuilt packages: untar and run 62 differents system so far Tarball and CPAN
  21. 21. Agent: Installation There’s also an Android agent available on Google Play.
  22. 22. Supported operating systems Linux Windows MacOSX BSD illumos AIX HP-UX Solaris Android
  23. 23. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  24. 24. Network discovery Quickly detect and collect all connected devices nmap NetBIOS SNMP queries
  25. 25. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  26. 26. ... INTERLUDE ...
  27. 27. SNMP SNMP origin A standard First RFC in 1988 Designed to monitor equipments 3 versions 1, 2c, 3 (Cyphering) OID: Information location MIB: A collection of OIDs
  28. 28. SNMP: what for in FusionInventory? How do we use SNMP? Identify remote devices (network equipments, printers, ...) Perform a remote inventory Get the most important informations
  29. 29. SNMP: a nightmare “Please support my hardware, here is the MIB!” Might be hard to find Often no free or not redistributable Important informations might be missing But worth, they may be wrong !
  30. 30. SNMP: a nightmare “Please support my hardware, here is the MIB!” Might be hard to find Often no free or not redistributable Important informations might be missing But worth, they may be wrong !
  31. 31. SNMP: an example Example: Cisco 6500 firmware 12.2(33)SXI2a (02-Sep-09 01:00) Serial OID: .1.3.6.1.2.1.47.1.1.1.1.11.1 12.2(33)SXI3 (27-Oct-09 11:12) Serial OID: .1.3.6.1.2.1.47.1.1.1.1.11.2⇐= Gni?!
  32. 32. SNMP: outch
  33. 33. SNMP: how to be reliable ? We prepared our own “MIB” Manual work for each equipment stored in an XML file Defines relations between an OID and an information ex: serial number → OID 1.2.4.34.53... Supports dynamics OIDs
  34. 34. SNMP: how to be reliable ? A centralized database We’re implementing a centralized database In Beta stage You create and account and upload snmpwalks The tool helps you to make the model It’ll be available in the next release!
  35. 35. ... END OF INTERLUDE ...
  36. 36. SNMP: network equipments (1/3) Common informations Serial number Supplier Model Firmware version MAC address CPU load / RAM etc
  37. 37. SNMP: network equipments (2/3) Advanced support Number of ports Speed Internal status Errors counters VLAN Trunk (tagged) ...
  38. 38. SNMP: network equipments (3/3) Port to port connections MAC address one to many LLDP / CDP discovery POIP informations, etc
  39. 39. SNMP: a network equipment example
  40. 40. SNMP: Printers (1/2) General information Serial number Supplier Model Firmware Memory MAC Address etc
  41. 41. SNMP: Printers (2/2) Advanced informations Cartridges state Pages counters
  42. 42. SNMP: a printer example
  43. 43. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  44. 44. Wake On Lan WoL Agent can be used as a proxy to send WoL packets.
  45. 45. Wake On Lan: Example Example A remote network 50 computers What FusionInventory can do Wake up all computers at 2 am for updates.
  46. 46. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  47. 47. Software deployment (1/2) What can be done Perform actions on the target computer Send files Consume less bandwith thanks to peer to peer Attention: FI is not a configuration management tool !
  48. 48. Software deployment (2/2) Why a new software deployment solution ? Use existing GLPI UI Use GLPI habilitations (groups/profils/entities) Multi-platform
  49. 49. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  50. 50. vCenter / ESX / ESXi The problem Black boxes: no way to install an agent on the host...
  51. 51. vCenter / ESX / ESXi The solution The agent can use SOAP API to: inventorize hardware list virtual machines per host inventorize each ESX box (in case of a vCenter)
  52. 52. vCenter / ESX / ESXi: the command line tool f u s i o n i n v e n t o r y −esx −−host vcenter −−user foo −−password bar −−d i r e c t o r y /tmp Send inventories to the server : f u s i o n i n v e n t o r y −i n j e c t o r −v −− f i l e /tmp / ∗ . ocs −u h t t p s : / / s e r v e r / p l u g i n s / f u s i o n i n v e n t o r y /
  53. 53. vCenter / ESX / ESXi: GLPI UI An interface in GLPI Define credentials Define vCenter/ESX/ESXi address Plan inventories
  54. 54. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  55. 55. Informations gathered (1/3) BIOS PCI modules memory slots CPUs hard drivers, drives, etc motherboard operating system screens ports slots partitions software
  56. 56. Informations gathered (2/3) connected users video cards virtual machines soundcards modems environment variables USB devices network configurations batteries printers processes antivirus LVM
  57. 57. Informations gathered (3/3)Android: Simcard, IMEI , etc
  58. 58. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  59. 59. Some statistics Today 194 Perl modules 21851 lines of code 938 unit tests
  60. 60. Unit tests What for? test parsing for OSes that we don’t have check Win32 code from another OS from WMI to registry check sensitive things unicode, HTTPS, etc
  61. 61. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  62. 62. What FusionInventory can bring to you Several scenarios Use inventory in your own application Extend inventory with your own modules Interface with GLPI or other Uranos, soon OTRS, etc Create new tasks
  63. 63. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  64. 64. What else?
  65. 65. Our roadmap Next steps: FusionInventory Agent 2.3.x Tool to edit SNMP XML models NUT integration Transition in progress: OCS/XML → REST/JSON planned for agent 3.0.0 already used by OTRS
  66. 66. Our roadmap Next steps: FusionInventory Agent 2.3.x Tool to edit SNMP XML models NUT integration Transition in progress: OCS/XML → REST/JSON planned for agent 3.0.0 already used by OTRS
  67. 67. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  68. 68. Real use experience Why use FusionInventory and GLPI (1/2): 2 schools were merged and had grown: 400 each → 1000 students today IT departments merged and quickly grown 2008: Regular financial audit - including IT assets. We had to get a an inventory without tons of man-hours: QUICKLY.
  69. 69. Real use experience Why use FusionInventory and GLPI (2/2): Proprietary solution highly cost intensive - while restricted in features Experience with superiors: If it’s OSS, it has to work OCS was able to get all our computers’ data GLPI had the nice UI + held all other asset data
  70. 70. Real use experience OCSinventory-ng side: OCS lagged behind with Windows compatibility, regular GLPI sync problems Why FusionInventory: Client: Agent easier to deploy 3 platforms Server: PHP + Perl → PHP Deployment: 1 internal git tree of GLPI + plugins IT staff: 2 UIs → 1 UI
  71. 71. The good, the bad ... There are also downsides - nothing is perfect: Documentation mostly fr-FR focused l10n: de-DE had quite some ”frenchisms” FI for GLPI lags behind major GLPI releases Ticket notifications require lots of local tuning (yet) ... no: There is no true ugly thing I found
  72. 72. Finally GLPI + FI automated lots of tasks no sysadmin wants to do manually with +300 computers We still use a fraction of GLPI’s features, but growing (Cert management!) Auditability → Made superiors happy OSS proved to work: Swiss-german education - normally not that easy Got in touch with nice community Have to polish my french regularly ;-)
  73. 73. Outline Project overview GLPI and FusionInventory Agent: installation and OS support Task: Network discovery Task: network inventory Task: Wake On Lan Task: software deployment Task: vCenter / ESX / ESXi inventory Task: inventory QA The developer point of view Soon to come Real use experience Questions
  74. 74. Questions? Question?
  75. 75. Thanks Thanks! Windows http://www.flickr.com/photos/ aeu04117/430338509/sizes/z/in/photostream/ AIX http: //www.flickr.com/photos/pchow98/5115638572/ MacOSX http://www.flickr.com/photos/adriannier/ 5555516312/sizes/l/in/photostream/ Cisco 6500 http://www.flickr.com/photos/joachim_s_ mueller/3084164647/sizes/z/in/photostream/ Teletubbies http://www.flickr.com/photos/ tudor/232849285/lightbox/ Worker http://www.flickr.com/photos/wsdot/ 6783674428/sizes/l/in/photostream/

×