Open Computer and Software Inventory

3,126 views
3,019 views

Published on

Opensource (GPLv2 licentie) tool.
Overzicht van hardware op het netwerk.
Uitrollen van software, scripts, bestanden.
Overzicht geinstalleerde software.

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,126
On SlideShare
0
From Embeds
0
Number of Embeds
267
Actions
Shares
0
Downloads
35
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Open Computer and Software Inventory

  1. 1. OCS-INVENTORY-NG B.A. n.v. Lieven De Puysseleir OCS INVENTORY NG Open Computer and Software Inventory Next Generation http://www.ocsinventory-ng.org
  2. 2. WAT? <ul><li>Opensource (GPLv2 licentie) tool.
  3. 3. Overzicht van hardware op het netwerk.
  4. 4. Uitrollen van software, scripts, bestanden.
  5. 5. Overzicht geinstalleerde software. </li></ul>
  6. 6. OCS Inventory NG
  7. 7. Installatie server <ul><ul><li>Werkt op heel veel Operating Systems. </li></ul></ul><ul><ul><ul><li>BSD, Solaris, osX, AIX, ...
  8. 8. Windows 2000 server, XP Pro, ...
  9. 9. Debian, RedHat, CentOS, Ubuntu, …
  10. 10. Volledige lijst op de site van otrs:
  11. 11. http://www.ocsinventory-ng.org/index.php?page=Supported_OS
  12. 12. De agent kan op allerlei clients geinstalleerd worden, gaande van windows 95 t.em. Windows 7 beta en zowat all versies van linux. (gezien het opensource is kan je natuurlijk altijd zelf compileren.) </li></ul></ul></ul>
  13. 13. De server <ul><ul><li>Database server </li></ul></ul><ul><ul><li>Communicatieserver
  14. 14. Administration console
  15. 15. Deployment server </li></ul></ul>
  16. 16. Overzicht
  17. 17. Database Server <ul><li>De database server bewaart de gegevens, de inventory dus.
  18. 18. Momenteel wordt enkel MySQL met InnoDB engine ondersteund.
  19. 19. Versie mysql >= 4.1 </li></ul>
  20. 20. Communication Server <ul><li>De communicatieserver beheert de verbinding tussen de agents (geinstalleerd op de clients) enerzijds en de database server anderzijds.
  21. 21. Deze draait op Apache </li></ul><ul><ul><li>Versie 1.3.X
  22. 22. Versie 2.X </li></ul></ul><ul><li>Geschreven in Perl als een Apache module om performance redenen. (wordt gecompileerd bij de start van Apache en niet bij elke request.) </li></ul>
  23. 23. Administration Console <ul><li>De console voor de administratie laat de beheerder(s) toe om de database te raadplegen.
  24. 24. Kan beheerd worden m.b.h.v. allerlei browsers zoals IE, Firefox, Safari, ...
  25. 25. Werd geschreven in PHP4.1
  26. 26. Draait op Apache 1.3.X en 2.X </li></ul>
  27. 27. Deployment Server <ul><li>De Deploymentserver neemt het uitrollen van 'packages' voor zijn rekening.
  28. 28. Deze bewaard hiervoor de nodige configuraties.
  29. 29. Waarop draait het? Eender welke webserver die SSL ondersteund. (https) </li></ul>
  30. 30. 2 scenario's <ul><li>Alle 4 de onderdelen kunnen op eenzelfde server geinstalleerd worden.
  31. 31. Om overbelasting van de server te voorkomen kan OCS ook uitgesplitst worden over verschillende servers. </li></ul>
  32. 32. 2 scenario's Meer dan 10000 computers te inventariseren? Probeer de installatie uit te splitsen over 2 of meer fysieke machines. <ul><ul><li>Database en communicatieserver op 1 machine.
  33. 33. Administratie en deployment server, alsook een replica van de database op de ander. </li></ul></ul>Aan te raden is om dit op Linux te doen want de versie voor Windows komt als 1 installatiepakket.
  34. 34. Hoe installeren? <ul><li>Er is zeer bruikbare documentatie te vinden op de site van OCS Inventory NG.
  35. 35. Goede wiki met howto's en tools.
  36. 36. Voor een aantal Linux distro's zijn er binary packages beschikbaar, deze kan je dus met je vertrouwde package manager installeren. </li><ul><li>Apt-get / Aptitude
  37. 37. Yum / RPM </li></ul></ul>
  38. 38. Hoe installeren? <ul><li>Hou wel rekening met de ”dependencies”
  39. 39. Een uitgebreide lijst met benodigde modules en software kan je wederom vinden op de site.
  40. 40. Er zijn o.a. een aantal perl en php modules nodig. </li></ul>
  41. 41. Installatie De nieuwste versie is steeds beschikbaar op de website. Deze kan je na het downloaden installeren door het setup.sh script uit te voeren. (denk vooraf aan de vereiste paketten)
  42. 42. Initiele configuratie Configuratie en aanmaken van de database: http://<server>/ocsreports/install.php (root wachtwoord voor mysql nodig) Een mysql user ”ocs” moet aangemaakt worden. <ul><li>Tijdens de configuratie
  43. 43. Eventueel rechtstreeks in mysql. (phpmyadmin) </li></ul>Deze wordt gebruikt door administratie- en communicatieserver.
  44. 45. Eindelijk Als het systeem geinstalleerd is kan je aanloggen met de admin user. (std ww admin) http://<server>/ocsreports Om af te sluiten kan je een ”TAG” invoeren, bij de installatie van de agent op de clients wordt dan gevraagd een tag in te geven. Deze kan je later gebruiken om computers te sorteren.
  45. 47. configuratie <ul><li>Loglevel </li></ul>logging aan/uit /var/log/ocsinventory-NG <ul><li>Prolog_freq </li></ul>Inventory frequentie (agent) <ul><li>auto_duplicate_lvl </li></ul>Criteria voor duplicates <ul><li>session_validity_time </li></ul>Sessie duur (niet 0)
  46. 48. configuratie <ul><li>DEPLOY:
  47. 49. aan indien u de agents via de server wil uitrollen.
  48. 50. DOWNLOAD:
  49. 51. aanzetten om software te kunnen uitrollen. </li></ul>
  50. 52. Agents Hoe werkt het: De agent contacteert de communication server en vraagt of er iets moet gebeuren. <ul><li>Niets
  51. 53. Inventory sturen
  52. 54. Network discovery
  53. 55. Software deployment </li></ul>
  54. 56. Linux Agents Download de agent van de ocs site en installeer met het setup.sh script of gebruik je package manager. (apt-get install ocsinventory-agent) <ul><li>HTTP => inventory wordt naar de server gestuurd
  55. 57. LOCAL => er worden ocs-gecomprimeerde xml bestanden gemaakt die je manueel kan importeren via de management server. </li></ul>
  56. 58. Windows Agents 2 mogelijkheden: <ul><ul><li>Als service (aanbevolen)
  57. 59. Standalone (vb bij offline pc's) </li></ul></ul>Installatie: <ul><ul><li>ocsagent.exe voor standalone /local = geen cnx naar server
  58. 60. ocsagentsetup.exe voor service
  59. 61. ocslogon.exe installeert de agent vanaf de communication server of voert agent uit indien die al is geinstalleerd. (hernoem naar com server ip of dnsnaam) </li><ul><li>/INSTALL => installeer service versie
  60. 62. Geen switch => standalone versie </li></ul></ul></ul>
  61. 63. ocslogon.exe Kan uitgevoerd worden door <ul><li>Login script
  62. 64. GPO
  63. 65. … </li></ul>De standalone agent of een ”ingepakte versie” van de service agent moeten beschikbaar zijn op de communication server. Je gebruikt ocspackager om een installatiepakketje te maken van de ocsagentsetup.exe <ul><li>Https certificaat nodig
  64. 66. agentsetup.exe (best altijd de laatste versie) </li></ul>
  65. 67. Agent package creatie OcsPackager.exe <ul><li>Volg de wizard </li><ul><li>Commandline opties: </li><ul><li>/server:<ip||naam>
  66. 68. /pnum:<port>
  67. 69. /S (silent) </li></ul><li>Local of domain admin </li></ul><li>Upload naar de server </li></ul>
  68. 71. Agent ini file De Agent contacteert de server om de zoveel uur. Dit wordt bijgehouden in service.ini. <ul><ul><li>[OCS_SERVICE]
  69. 72. NoProxy=1
  70. 73. Server=my-ocs-server.domain.tld
  71. 74. Pnum=80
  72. 75. Miscellaneous=/DEBUG /NP /server: my-ocs-server.domain.tld /pnum:80
  73. 76. PROLOG_FREQ=10
  74. 77. OLD_PROLOG_FREQ=10
  75. 78. TTO_WAIT=1505 </li></ul></ul>
  76. 79. Agent force contact Als je op de client ben kan je die forceren om de server te contacteren. <ul><ul><li>Stop de ocs inventory service
  77. 80. Ga naar ” C:Program FilesOCS Inventory Agent”
  78. 81. Open ”service.ini”
  79. 82. TTO_WAIT=1
  80. 83. Sluit bestand en start de service </li></ul></ul>
  81. 84. Agent LOG
  82. 87. Network Discovery <ul><li>Sommige agents scannen het netwerk en geven deze info door aan de management server.
  83. 88. Enkel lan/subnet wordt gescand
  84. 89. Routers, printers en andere client-less devices worden gevonden. </li></ul>IPDISCOVERY in de client/agent log:
  85. 90. PACKAGE DEPLOYMENT Software uitrollen? Gebruik steeds de service agent! <ul><li>Standalone geeft problemen
  86. 91. Download pakket duurt heel lang </li></ul>
  87. 92. DEPLOYMENT 4 eigenschappen: <ul><ul><li>Prioriteit => 0 – 10 (prio 0 wordt eerst uitgevoerd)
  88. 93. Actie
  89. 94. Actie optioneel: zip/tar.gz bestand uitrollen
  90. 95. Actie optioneel: commando uitvoeren </li></ul></ul>
  91. 96. ACTIE Volgende acties zijn mogelijk: <ul><ul><li>Launch = bestand overzetten, uitpakken op de client in tmp directory + uitvoeren bestand uit het pakket.
  92. 97. Execute = eventueel bestand overzetten en commando uitvoeren dat wel of niet in het pakket zat, je kan iets uitvoeren wat al eerder op de client werd geinstalleerd.
  93. 98. Store = gecomprimeerd bestand overzetten en uitpakken. </li></ul></ul>Alle bestanden/folders moeten gecomprimeerd worden aangeboden.
  94. 99. Hoe? Je maakt de package aan in de admin console. Het bestaat uit volgende onderdelen (automatisch proces) <ul><li>DB REFERENTIE: de comm server vraagt de agent iets te downloaden
  95. 100. XML INFO FILE: beschrijft de actie die de agent moet uitvoeren
  96. 101. PAKKETJES: het bestand werd opgedeeld in kleine pakketjes om downloaden door de agent te vergemakkelijken. </li></ul>
  97. 102. SSL Belangrijk om weten bij het uitrollen van software: De info bestanden moeten op een ssl beveiligde webserver staan. (Wie deze bestanden heeft kan immers eender wat uitvoeren op de clients) Serverkant: server.crt & server.key Client side: cacert.pem
  98. 103. Download folder De Packages die je gaat maken via de console worden opgeslagen waar de clients ze kunnen afhalen, default /var/www/download/ In de config van apache is dit een alias naar /var/lib/ocsinventory-reports/download/
  99. 107. Activatie <ul><li>De gemaakte pakketjes moet je eerst activeren voor je ze kan gebruiken.
  100. 108. Default staan de files op de administration server.
  101. 109. Verplaats de bestanden naar een andere server die je als deployment server wil gebruiken. (rsync, ...) </li></ul>
  102. 110. Multi-site deployment Het is mogelijk om per geografische site een locale server te hebben die de pakketjes bijhoudt Terwijl er slechts 1 communication server de INFO bestandjes centraliseert.
  103. 113. AFFECT Als het software-pakket klaar is kan je het uitrollen naar clients in het netwerk. Dit heet ” AFFECT ” in ocs inventory. <ul><li>Affect per client </li></ul>of <ul><li>Massaal uitrollen </li></ul>
  104. 116. MASS DEPLOYMENT In plaats van een computer te selecteren en daarop de package te affecteren kan je dit ook met een reeks clients. <ul><ul><ul><li>Lijst de gezochte computers op.
  105. 117. Ga naar ”mass processing”
  106. 118. Klik ”deploy” </li></ul></ul></ul>
  107. 119. groepen Je kan groepen aanmaken om de clients per categorie te ordenen. Op deze groepen kan je dan een config toepassen of een pakket uitrollen.
  108. 121. Hoe maak ik een static group?
  109. 122. Hoe maak ik een static group?
  110. 123. Dynamische groepen Als je een groep wil waarin steeds alle computers zitten die aan bepaalde criteria voldoen. (bv alle pc's met explorer) doe je hetzelfde als voor een statische groep maar je vult een ander veld in:
  111. 124. Troubleshooting <ul><li>Logfiles bevatten veel info: </li><ul><li>client/agent
  112. 125. server
  113. 126. Apache </li></ul><li>Forum
  114. 127. Google </li></ul>
  115. 128. Database backup <ul><li>Backup je database regelmatig
  116. 129. Bv: ”mysqldump ocsweb > / /var/backup/ocsweb.dump”
  117. 130. Mysql heeft ook een replicatie functie. </li></ul>
  118. 131. Grote Omgevingen Meerdere OCS management servers. (vb) <ul><li>Per lan/geografische omgeving een management server.
  119. 132. Geen deployment over de wan.
  120. 133. Wel een master server met alle inventarissen.
  121. 134. Mysql heeft een database replicatie-functie. (fail-save) </li></ul>
  122. 135. Master inventory server Vanaf OCS 1.0.2 is dit makkelijk. <ul><li>Instellen via web interface config (inventory files tab)
  123. 136. Rechtstreeks in /etc/apache2/conf.d/z-ocsinventory-server.conf
  124. 137. De apache-user (www-data) moet de ocs-bestanden kunnen wegschrijven in de opgegeven directory.
  125. 138. Instellingen master server in ocsinventory-injector.pl (meegeleverd met de tarbal)
  126. 139. Cronjob: ocsinventory-injector.pl => naar de master server. </li></ul>
  127. 140. GLPI Gestionnaire Libre de Parc Informatique http://www.glpi-project.org/wiki/doku.php?id=en:welcome
  128. 141. GLPI prereq. <ul><li>GLPI installeer je in de root directory van apache: /var/www/glpi
  129. 142. De database moet je zelf aanmaken in mysql: </li></ul>
  130. 144. GLPI <ul><li>Beheer van hardware en software
  131. 145. Ingebouwd ticket systeem
  132. 146. Automatische invoer vanuit OCS
  133. 147. AD & LDAP links voor authenticatie
  134. 148. ... </li></ul>
  135. 149. GLPI <=> OCS Link GLPI aan de OCS
  136. 150. SUPPORT WEBSITE: http://ocsinventory-ng.org/ WIKI FORUM DOCU Bij ons: www.ba.be [email_address]

×