https://issues.rudder.io/https://issues.rudder.io/themes/rudder7/favicon/favicon.ico?17096450182014-01-21T10:01:11ZIssue TrackerRudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=239342014-01-21T10:01:11ZNicolas CHARLESnicolas.charles@rudder.io
<ul></ul><p>Hi Alex,</p>
<p>This is by itself not a really difficult task, we simply need to extend the information stored in LDAP, and extend the parser in ldap-inventory. <br />Before extending it, if you'd have a list of all the new values you'd need, it would help us fitting your needs</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=239382014-01-21T17:04:14ZAlex Tkachenkoalex.sysadm@gmail.com
<ul></ul><p>Well, if you asked - I went through the process of categorization (grouping) of my network population yesterday and was able to resolve practically everything with what is available right now. The system manufacturer is the only thing available through dmidecode (which I routinely used in the past) which I lack for now, and the importance of it is to determine what kind of firmware updates the system might need.</p>
<p>Another thing I had some problems with was to unambiguously detect the raid used on the system. Of course, you could look at the available controller's name but I found that they are quite inconsistent from vendor to vendor. Besides, I have several cases when more than one raid adapter is installed and actually neither is used (the system is on s/w raid). I have no idea on how to improve things here - maybe somebody else does - just trying to bring up the importance of the raid subsystem.</p>
<p>One more idea - would it be possible to use cfengine classes for categorization? If rudder server could collect them all from the reports and make them available for the rules search criteria - it will be wonderful. Maybe not at the first pass, but convergently speaking :) it should help.</p>
<p>The major problem I am having so far with categorization and policies in general is support for OpenVZ. It is somehow detected as virtual, but with absolutely no details, so I can not create a group for OpenVZ containers. These may need to use special exceptions in the policy as they rely on some host's services (i.e. ntp). But the OpenVZ host is even more important to know about before applying the policy, as the attempt to detect and maintain the process/service on this environment may mistaken container's processes for their own.</p>
<p>And by the way, the dmidecode, unconditionally pulled in by the rudder rpm dependencies, does not work on the containers, as the host ("mothership") denies container's access to certain kernel/memory areas.</p>
<p>I have also run into some issues with detecting network interfaces from within the policy - but this may be purely cfengine problem ignoring virtual interfaces by default.</p>
<p>The question is - are you guys aware of OpenVZ-related issues or in other words, is there any work towards ensuring proper support for it?</p>
<p>If needed, we may create a separate ticket for this - I would gladly provide any necessary information and perform necessary testing (bandwidth permitting). OpenVZ (or it's proxmox flavor) is quite a sizable population in our network (about 20%), so it is hard for me to ignore.</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=242662014-02-07T17:19:45ZNicolas CHARLESnicolas.charles@rudder.io
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>Discussion</i></li><li><strong>Assignee</strong> set to <i>Alex Tkachenko</i></li></ul><p>Thank you for this very detailed answer.<br />I'll answer in the quote</p>
<p>Alex Tkachenko wrote:</p>
<blockquote>
<p>Well, if you asked - I went through the process of categorization (grouping) of my network population yesterday and was able to resolve practically everything with what is available right now. The system manufacturer is the only thing available through dmidecode (which I routinely used in the past) which I lack for now, and the importance of it is to determine what kind of firmware updates the system might need.</p>
</blockquote>
<p>ok, so it is really important.</p>
<blockquote>
<p>Another thing I had some problems with was to unambiguously detect the raid used on the system. Of course, you could look at the available controller's name but I found that they are quite inconsistent from vendor to vendor. Besides, I have several cases when more than one raid adapter is installed and actually neither is used (the system is on s/w raid). I have no idea on how to improve things here - maybe somebody else does - just trying to bring up the importance of the raid subsystem.</p>
</blockquote>
<p>Ha, interesting point.<br />Do yo know if, at least, it is kinda properly set in the inventory as set by the node ? In the Hardware/Storage section on the Web Interface, there is a Manufacturer. Is it the manufacturer of Raid system ?</p>
<blockquote>
<p>One more idea - would it be possible to use cfengine classes for categorization? If rudder server could collect them all from the reports and make them available for the rules search criteria - it will be wonderful. Maybe not at the first pass, but convergently speaking :) it should help.</p>
</blockquote>
<p>This is a very good remark. Would you need all the classes defined in the run, or only hardclasses ?<br />Could you provide an example of use case for this ?</p>
<blockquote>
<p>The major problem I am having so far with categorization and policies in general is support for OpenVZ. It is somehow detected as virtual, but with absolutely no details, so I can not create a group for OpenVZ containers. These may need to use special exceptions in the policy as they rely on some host's services (i.e. ntp). But the OpenVZ host is even more important to know about before applying the policy, as the attempt to detect and maintain the process/service on this environment may mistaken container's processes for their own.</p>
</blockquote>
<p>Oh. <br />Fusion Inventory 2.2.2 (the version we use) should have support for Virtuozzo, and so should we.<br />Would it be possible for you to send us an inventory for a OpenVZ container and OpenVZ host ? (with the proper anonymification of information within, like cfengine key, hostnames, ip)</p>
<blockquote>
<p>And by the way, the dmidecode, unconditionally pulled in by the rudder rpm dependencies, does not work on the containers, as the host ("mothership") denies container's access to certain kernel/memory areas.</p>
</blockquote>
<p>I wasn't aware of this, sorry. Does it prevent completely the inventory generation ?</p>
<blockquote>
<p>I have also run into some issues with detecting network interfaces from within the policy - but this may be purely cfengine problem ignoring virtual interfaces by default.</p>
<p>The question is - are you guys aware of OpenVZ-related issues or in other words, is there any work towards ensuring proper support for it?</p>
</blockquote>
<p>We are, for the CFEngine part. We didn't realize there were inventory issues, and we are really sorry about this :(</p>
<blockquote>
<p>If needed, we may create a separate ticket for this - I would gladly provide any necessary information and perform necessary testing (bandwidth permitting). OpenVZ (or it's proxmox flavor) is quite a sizable population in our network (about 20%), so it is hard for me to ignore.</p>
</blockquote>
<p>Having two inventories for host and container would really help us fix the issues you stated</p>
<p>Thank you very very much for your time and patience</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=244832014-02-19T00:42:29ZAlex Tkachenkoalex.sysadm@gmail.com
<ul></ul><p>These are quite a few :)<br />I will have to answer the questions one at a time, as the amount of work required would result in the web session to time out :)</p>
<p>First the discrepancies between dmidecode, inventory and the web interface.</p>
<p>It is clear, that the inventory process maps BMANUFACTURER to <strong>both</strong> BIOS Editor <strong>and</strong> BIOS Version.<br />While using BMANUFACTURER for the Editor field is OK in most cases (except when AMIBIOS is used - i.e. on Sun and Supermicro),<br />the BIOS version has a direct field of its own in the inventory (BVERSION) - so why not using it?</p>
<p>dmidecode in all cases report things correctly.</p>
<p>The most definitive for the system manufacturer appears to be SMANUFACTURER/SMODEL,<br />which correspond to dmidecode -s sytem-manufacturer and demidecode -s system-product-name</p>
<p>Note, that Supermicro servers are completely missed - there is not a hint in the web interface referring to Supermicro<br />(although the inventory has it) so to make a special group for those one would have to regexp all the model names - which is error-prone and requires re-visiting each time the new model is introduced.</p>
<pre>
**** HP ProLiant BL465c (blade server):
Hardware->BIOS (Name/Editor/Version): ProLiant BL465c G1 HP HP
<BIOS>
<ASSETTAG /> <BDATE>12/08/2009</BDATE>
<BMANUFACTURER>HP</BMANUFACTURER>
<BVERSION>A13</BVERSION>
<MMANUFACTURER /> <MMODEL /> <MSN /> <SKUNUMBER>407234-B21</SKUNUMBER>
<SMANUFACTURER>HP</SMANUFACTURER>
<SMODEL>ProLiant BL465c G1</SMODEL>
<SSN>USM71804MT</SSN>
</BIOS>
**** HP ProLiant DL385 G2
Hardware->BIOS (Name/Editor/Version): ProLiant DL385 G2 HP HP
<BIOS>
<ASSETTAG /> <BDATE>07/11/2009</BDATE>
<BMANUFACTURER>HP</BMANUFACTURER>
<BVERSION>A09</BVERSION>
<MMANUFACTURER /> <MMODEL /> <MSN /> <SKUNUMBER>414109-B21</SKUNUMBER>
<SMANUFACTURER>HP</SMANUFACTURER>
<SMODEL>ProLiant DL385 G2</SMODEL>
<SSN>USE741N5GZ</SSN>
</BIOS>
**** Dell PowerEdge 2950
Hardware->BIOS (Name/Editor/Version): PowerEdge 2950 Dell Inc. Dell Inc.
<BIOS>
<ASSETTAG /> <BDATE>10/30/2010</BDATE>
<BMANUFACTURER>Dell Inc.</BMANUFACTURER>
<BVERSION>2.7.0</BVERSION>
<MMANUFACTURER>Dell Inc.</MMANUFACTURER>
<MMODEL>0DP246</MMODEL>
<MSN>..CN7082183E00LB.</MSN>
<SKUNUMBER /> <SMANUFACTURER>Dell Inc.</SMANUFACTURER>
<SMODEL>PowerEdge 2950</SMODEL>
<SSN>FHFCYF1</SSN>
</BIOS>
**** Dell PowerEdge R610
Hardware->BIOS (Name/Editor/Version): PowerEdge R610 Dell Inc. Dell Inc.
<BIOS>
<ASSETTAG /> <BDATE>10/30/2009</BDATE>
<BMANUFACTURER>Dell Inc.</BMANUFACTURER>
<BVERSION>1.3.6</BVERSION>
<MMANUFACTURER>Dell Inc.</MMANUFACTURER>
<MMODEL>0XDN97</MMODEL>
<MSN>..CN701639CD01EF.</MSN>
<SKUNUMBER /> <SMANUFACTURER>Dell Inc.</SMANUFACTURER>
<SMODEL>PowerEdge R610</SMODEL>
<SSN>4RH2QL1</SSN>
</BIOS>
**** IBM System x3550 M4
Hardware->BIOS (Name/Editor/Version): IBM System x3550 M4 Server -[7914AC1]- IBM IBM
<BIOS>
<ASSETTAG>none</ASSETTAG>
<BDATE>11/21/2012</BDATE>
<BMANUFACTURER>IBM</BMANUFACTURER>
<BVERSION>-[D7E124AUS-1.30]-</BVERSION>
<MMANUFACTURER>IBM</MMANUFACTURER>
<MMODEL>00J6242</MMODEL>
<MSN>2AA01C</MSN>
<SKUNUMBER /> <SMANUFACTURER>IBM</SMANUFACTURER>
<SMODEL>IBM System x3550 M4 Server -[7914AC1]-</SMODEL>
<SSN>KQ7C2B2</SSN>
</BIOS>
**** IBM System x3550 M3
Hardware->BIOS (Name/Editor/Version): System x3550 M3 -[7944AC1]- IBM Corp. IBM Corp.
<BIOS>
<ASSETTAG>none</ASSETTAG>
<BDATE>02/02/2012</BDATE>
<BMANUFACTURER>IBM Corp.</BMANUFACTURER>
<BVERSION>-[D6E156BUS-1.14]-</BVERSION>
<MMANUFACTURER>IBM</MMANUFACTURER>
<MMODEL>00D4062</MMODEL>
<MSN>23P0F4</MSN>
<SKUNUMBER>XxXxXxX</SKUNUMBER>
<SMANUFACTURER>IBM</SMANUFACTURER>
<SMODEL>System x3550 M3 -[7944AC1]-</SMODEL>
<SSN>KQ0Y792</SSN>
</BIOS>
**** SUN FIRE X4270 M2
Hardware->BIOS (Name/Editor/Version): SUN FIRE X4270 M2 SERVER American Megatrends Inc. American Megatrends Inc.
<BIOS>
<ASSETTAG /> <BDATE>05/23/2011</BDATE>
<BMANUFACTURER>American Megatrends Inc.</BMANUFACTURER>
<BVERSION>08080102</BVERSION>
<MMANUFACTURER>Oracle Corporation</MMANUFACTURER>
<MMODEL>ASSY,MOTHERBOARD,X4170</MMODEL>
<MSN>0328MSL-1042BA0EB1</MSN>
<SKUNUMBER>4715530-1</SKUNUMBER>
<SMANUFACTURER>Oracle Corporation</SMANUFACTURER>
<SMODEL>SUN FIRE X4270 M2 SERVER</SMODEL>
<SSN>1043FMM147</SSN>
</BIOS>
**** Sun Fire X4240
Hardware->BIOS (Name/Editor/Version): Sun Fire X4240 American Megatrends Inc. American Megatrends Inc.
<BIOS>
<ASSETTAG /> <BDATE>10/26/2009</BDATE>
<BMANUFACTURER>American Megatrends Inc.</BMANUFACTURER>
<BVERSION>0ABMN068</BVERSION>
<MMANUFACTURER>Sun Microsystems</MMANUFACTURER>
<MMODEL>Sun Fire X4240</MMODEL>
<MSN>2029QTF0913MD0LCA</MSN>
<SKUNUMBER>602-4697-01</SKUNUMBER>
<SMANUFACTURER>Sun Microsystems</SMANUFACTURER>
<SMODEL>Sun Fire X4240</SMODEL>
<SSN>0921QAS005</SSN>
</BIOS>
**** Supermicro X9DR7/E-(J)LN4F
Hardware->BIOS (Name/Editor/Version): X9DR7/E-(J)LN4F American Megatrends Inc. American Megatrends Inc.
<BIOS>
<ASSETTAG>To Be Filled By O.E.M.</ASSETTAG>
<BDATE>05/14/2013</BDATE>
<BMANUFACTURER>American Megatrends Inc.</BMANUFACTURER>
<BVERSION>1.0a</BVERSION>
<MMANUFACTURER>Supermicro</MMANUFACTURER>
<MMODEL>X9DR7/E-(J)LN4F</MMODEL>
<MSN>UM25S30779</MSN>
<SKUNUMBER>1234567890</SKUNUMBER>
<SMANUFACTURER>Supermicro</SMANUFACTURER>
<SMODEL>X9DR7/E-(J)LN4F</SMODEL>
<SSN>1234567890</SSN>
</BIOS>
**** Supermicro H8DA8/H8DAR
Hardware->BIOS (Name/Editor/Version): H8DA8/H8DAR American Megatrends Inc. American Megatrends Inc.
<BIOS>
<ASSETTAG>To Be Filled By O.E.M.</ASSETTAG>
<BDATE>05/22/2006</BDATE>
<BMANUFACTURER>American Megatrends Inc.</BMANUFACTURER>
<BVERSION>080010</BVERSION>
<MMANUFACTURER>Supermicro</MMANUFACTURER>
<MMODEL>H8DA8</MMODEL>
<MSN>1234567890</MSN>
<SKUNUMBER /> <SMANUFACTURER>Supermicro</SMANUFACTURER>
<SMODEL>H8DA8/H8DAR</SMODEL>
<SSN>1234567890</SSN>
</BIOS>
</pre> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=244892014-02-19T17:31:20ZAlex Tkachenkoalex.sysadm@gmail.com
<ul></ul><p>For the sake of completeness - here is one case where the system manufacturer looks weird (but I think this is the only case out of my 600+ servers):</p>
<ul>
<li>Sun Fire X4240</li>
</ul>
<p>Hardware->BIOS (Name/Editor/Version): Sun Fire X4240 American Megatrends Inc. American Megatrends Inc.<br /> <BIOS><br /> <ASSETTAG>Not Available</ASSETTAG><br /> <BDATE>10/26/2009</BDATE><br /> <BMANUFACTURER>American Megatrends Inc.</BMANUFACTURER><br /> <BVERSION>0ABMN068</BVERSION><br /> <MMANUFACTURER>Sun Microsystems</MMANUFACTURER><br /> <MMODEL>Sun Fire X4240</MMODEL><br /> <MSN>Not Available</MSN><br /> <SKUNUMBER>Not Available</SKUNUMBER><br /> <SMANUFACTURER>Not Available</SMANUFACTURER><br /> <SMODEL>Sun Fire X4240</SMODEL><br /> <SSN>Not Available</SSN><br /> </BIOS></p>
<p>I do not know what is wrong with it, but if the SMANUFACTURER is not available, the M/B manufacturer or the BIOS manufacturer could be used as a last resort.</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=244932014-02-19T22:23:00ZAlex Tkachenkoalex.sysadm@gmail.com
<ul></ul><p>Now the RAID part. Below you will find different hardware raid controllers on different set of servers.<br />I was unable to identify a Linux Software RAID system based on the information collected during the inventory (aside from some processes i.e. md?_raid? which may or may not be running).</p>
<p>When building matching rules I was trying to be as generic as possible without compromising selectivity. In theory, Storages data should be used to make sure that not only the controller is installed, but the OS is actually <strong>using</strong> the devices provided by it. Unfortunately this is not always possible due to either syntax limitations (all the conditions are either ANDed or ORed, but nothing in between) or due to the fact that different vendors have different implementations (megacli is quite representative for this purpose).</p>
<p>First the most commonly present LSI MegaRAID SAS, which is now offered with Dell, IBM, Oracle, Supermicro, etc. These controllers could be managed with LSI MegaCLI utility.</p>
<p>Note - lspci detects MegaRAID SAS in all cases</p>
<p>The matching rule I've got so far is</p>
<p>Storages->Manufacturer = "LSI"
|| Storages->Model Regex "PERC H<sup><a href="#fn78">78</a></sup>00"
|| Controllers->Name Regex "MegaRAID SAS.*"
|| Storages->Model Regex "ServeRAID.*" <br /><pre>
*** Supermicro X9DR7/E-(J)LN4F
lspci | grep -i RAID output:
03:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS 2208 [Thunderbolt] (rev 05)
81:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS 2208 [Thunderbolt] (rev 05)
Hardware->Controllers: No raid controller entries
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
sda scsi 119 GB 3.24 LSI MR9271-8i 3600605b006961b30193306c52283aad8 disk 1
sda scsi 119 GB 3.24 LSI MR9271-8i 3600605b006961b30193306c52283aad8 disk 1
sdb scsi 60 TB 3.24 LSI MR9271-8i 3600605b006961b30193306c52283b042 disk 1
sdc scsi 60 TB 3.24 LSI MR9286CV-8e 3600605b005be3a60193307782cc4859a disk 1
sdd scsi 51.8 TB 3.24 LSI MR9286CV-8e 3600605b005be3a60193307782cc552c8 disk 1
*** Dell Inc. PowerEdge R610
lspci | grep -i RAID output:
03:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS 2108 [Liberator] (rev 04)
Hardware->Controllers: No raid controller entries
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
sda scsi 1.36 TB 2.0. DELL PERC H700 36a4badb00f006e00133ac06f070e0b4b disk 1
*** Dell Inc. PowerEdge R610
lspci | grep -i RAID output:
03:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS 1078 (rev 04)
Hardware->Controllers: MegaRAID SAS 1078 LSI Logic / Symbios Logic RAID bus controller 1
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
sda scsi 200 GB 1.22 DELL PERC 6/i 36782bcb02a72c700189b046b0d3045b0 disk 1
sdb scsi 2.08 TB 1.22 DELL PERC 6/i 36782bcb02a72c700189b04710d87d857 disk 1
*** Dell Inc. PowerEdge 2950
lspci | grep -i RAID output:
01:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS 1078 (rev 04)
Hardware->Controllers: MegaRAID SAS 1078 LSI Logic / Symbios Logic RAID bus controller 1
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
sda scsi 474 GB 1.22 DELL PERC 6/i 36001e4f02fb7d80015d5e2d208d25f45 disk 1
*** Oracle Corporation SUN FIRE X4270 M2 SERVER
lspci | grep -i RAID output:
0d:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS 2108 [Liberator] (rev 05)
Hardware->Controllers: No raid controller entries
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
sda scsi 278 GB 2.90 LSI MR9261-8i 3600605b002931cd00477f16b5fdbddb5 disk 1
sdb scsi 557 GB 2.90 LSI MR9261-8i 3600605b002931cd004781f5f09797c6e disk 1
*** IBM System x3550 M4 Server -[7914AC1]-
lspci | grep -i RAID output:
1b:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS 2208 [Thunderbolt] (rev 05)
Hardware->Controllers: No raid controller entries
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
sda scsi 278 GB 3.19 IBM ServeRAID M5110 3600605b0058885201857437214dd96fe disk 1
*** IBM System x3550 M3 -[7944AC1]-
lspci | grep -i RAID output:
01:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS 2108 [Liberator] (rev 05)
Hardware->Controllers: No raid controller entries
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
sda SCSI 212 IBM ServeRAIDM5015 disk 1
</pre></p>
<p>An older LSI MegaRAID SATA (manageable with the LSI MegaRC utility.<br />The matching rule is Controllers->Name = "MegaRAID" && Storages->Manufacturer = "MegaRAID" <br /><pre>
*** Dell Computer Corporation PowerEdge 1850
lspci | grep -i RAID output:
03:0b.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID (rev 01)
Hardware->Controllers: MegaRAID LSI Logic / Symbios Logic RAID bus controller 1
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
sda SCSI 352B MegaRAID LD0 RAID1 69G disk 1
</pre></p>
<p>Adaptec RAID controller - it used to be quite common, but unfortunately now I only have it in some Sun servers.<br />The matching criteria is Controllers->Manufacturer = "Adaptec"</p>
<p>NOTE, that the model reported for the storages below is actually the name of a raid device given during its creation, and could be practically anything.<br /><pre>
*** Sun Microsystems Sun Fire X4240
lspci | grep -i RAID output:
04:00.0 RAID bus controller: Adaptec AAC-RAID (rev 09)
Hardware->Controllers: AAC-RAID Adaptec RAID bus controller 1
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
sda scsi 140 GB V1.0 Sun SYSTEM SSun_SYSTEM_1662887B disk 1
sdb scsi 1.78 TB V1.0 Sun DATA SSun_DATA_EBAEA87B disk 1
*** Sun Microsystems Sun Fire X4240
lspci | grep -i RAID output:
04:00.0 RAID bus controller: Adaptec AAC-RAID (rev 09)
Hardware->Controllers: AAC-RAID Adaptec RAID bus controller 1
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
sda scsi 140 GB V1.0 Sun SYSTEM SSun_SYSTEM_EE58950B disk 1
sdb scsi 1.78 TB V1.0 Sun DATA SSun_DATA_D130A50B disk 1
</pre></p>
<p>HP integrated Raid controller (Smart Array E200i)<br />Matching criteria is Controllers->Name Regex "Smart Array.*SAS Controller.*" <br />I would have also added Storages->Name Regex "cciss.*", but storages are filled in inconsistently.<br /><pre>
*** HP ProLiant BL465c G1 (blade server)
lspci | grep -i RAID output:
50:08.0 RAID bus controller: Hewlett-Packard Company Smart Array E200i (SAS Controller)
Hardware->Controllers: Smart Array E200i (SAS Controller) Hewlett-Packard Company RAID bus controller 1
Hardware->Storages: No Storage entries present
(The system has two drives combined into a mirror - /dev/cciss/c0d0)
*** HP ProLiant DL385 G2
lspci | grep -i RAID output:
0c:08.0 RAID bus controller: Hewlett-Packard Company Smart Array E200i (SAS Controller)
Hardware->Controllers: Smart Array E200i (SAS Controller) Hewlett-Packard Company RAID bus controller 1
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
cciss/c0d0 IDE 68.3 GB 1.86? LOGICAL_VOLUME LOGICAL_VOLUME 3600508b100104c3953555a3237330004 disk 1
HP DG072ABAB3 SAS 70.3 GB HPDE Hewlett Packard HP DG072ABAB3 3NP1VTZX00009810KEVH disk 1
Again, two drives are combined into a single raid mirror.
Don't know why the second entry (an individual drive) is shown, but in any case, the Inventory actually has two of them
(with different serial numbers):
<STORAGES>
<DESCRIPTION>SAS</DESCRIPTION>
<DISKSIZE>72000</DISKSIZE>
<FIRMWARE>HPDE</FIRMWARE>
<MANUFACTURER>Hewlett Packard</MANUFACTURER>
<MODEL>HP DG072ABAB3 </MODEL>
<NAME>HP DG072ABAB3 </NAME>
<SERIALNUMBER>3NP1W9TA00009811NPMA</SERIALNUMBER>
<TYPE>disk</TYPE>
</STORAGES>
<STORAGES>
<DESCRIPTION>SAS</DESCRIPTION>
<DISKSIZE>72000</DISKSIZE>
<FIRMWARE>HPDE</FIRMWARE>
<MANUFACTURER>Hewlett Packard</MANUFACTURER>
<MODEL>HP DG072ABAB3 </MODEL>
<NAME>HP DG072ABAB3 </NAME>
<SERIALNUMBER>3NP1VTZX00009810KEVH</SERIALNUMBER>
<TYPE>disk</TYPE>
</STORAGES>
<STORAGES>
<DESCRIPTION>IDE</DESCRIPTION>
<DISKSIZE>69974</DISKSIZE>
<FIRMWARE>1.86?</FIRMWARE>
<MANUFACTURER>LOGICAL_VOLUME</MANUFACTURER>
<MODEL>LOGICAL_VOLUME</MODEL>
<NAME>cciss/c0d0</NAME>
<SERIALNUMBER>3600508b100104c3953555a3237330004</SERIALNUMBER>
<TYPE>disk</TYPE>
</STORAGES>
*** HP ProLiant DL365 G1
lspci | grep -i RAID output:
46:08.0 RAID bus controller: Hewlett-Packard Company Smart Array E200i (SAS Controller)
Hardware->Controllers: Smart Array E200i (SAS Controller) Hewlett-Packard Company RAID bus controller 1
Hardware->Storages: Name/Description/Size/Firmware/Manufacturer/Model/Serial/Type/Quantity
cciss/c0d0 IDE 68.3 GB 1.86? LOGICAL_VOLUME LOGICAL_VOLUME 3600508b1001034323820202020200005 disk 1
Same raid mirror as in two previous cases, but I would say that the Storages inventory was collected right in this case.
</pre></p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=244962014-02-20T08:09:08ZNicolas CHARLESnicolas.charles@rudder.io
<ul></ul><p>Alex Tkachenko wrote:</p>
<blockquote>
<p>For the sake of completeness - here is one case where the system manufacturer looks weird (but I think this is the only case out of my 600+ servers):</p>
<ul>
<li>Sun Fire X4240</li>
</ul>
<p>Hardware->BIOS (Name/Editor/Version): Sun Fire X4240 American Megatrends Inc. American Megatrends Inc.<br /><BIOS><br /><ASSETTAG>Not Available</ASSETTAG><br /><BDATE>10/26/2009</BDATE><br /><BMANUFACTURER>American Megatrends Inc.</BMANUFACTURER><br /><BVERSION>0ABMN068</BVERSION><br /><MMANUFACTURER>Sun Microsystems</MMANUFACTURER><br /><MMODEL>Sun Fire X4240</MMODEL><br /><MSN>Not Available</MSN><br /><SKUNUMBER>Not Available</SKUNUMBER><br /><SMANUFACTURER>Not Available</SMANUFACTURER><br /><SMODEL>Sun Fire X4240</SMODEL><br /><SSN>Not Available</SSN><br /></BIOS></p>
<p>I do not know what is wrong with it, but if the SMANUFACTURER is not available, the M/B manufacturer or the BIOS manufacturer could be used as a last resort.</p>
</blockquote>
<p>Thank you Alex for this comprehensive reports.<br />So if I understand correctly, we should really use SMANUFACTURER, except when the value is empty or Not available, and in this case fall back to MMANUFACTURER</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=244972014-02-20T08:12:36ZNicolas CHARLESnicolas.charles@rudder.io
<ul></ul><p>For the RAID part, if I understand correctly, the Inventory generated by Fusion doesn't include all the necessary data, and needs to be modified. Am I correct ?</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=245032014-02-21T02:18:39ZAlex Tkachenkoalex.sysadm@gmail.com
<ul><li><strong>File</strong> <a href="/attachments/801">openvz-mothership.ocs</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/801/openvz-mothership.ocs">openvz-mothership.ocs</a> added</li><li><strong>File</strong> <a href="/attachments/802">openvz-container.ocs</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/802/openvz-container.ocs">openvz-container.ocs</a> added</li><li><strong>File</strong> <a href="/attachments/803">proxmox-server.ocs</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/803/proxmox-server.ocs">proxmox-server.ocs</a> added</li><li><strong>File</strong> <a href="/attachments/804">proxmox-kvm-guest.ocs</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/804/proxmox-kvm-guest.ocs">proxmox-kvm-guest.ocs</a> added</li><li><strong>File</strong> <a href="/attachments/805">proxmox-openvz-container.ocs</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/805/proxmox-openvz-container.ocs">proxmox-openvz-container.ocs</a> added</li></ul><p>If we introduce a "System" section then yes, the vendor would be SMANUFACTURER, as you described (and the model could also be presented there). BIOS section could be left as is for backward compatibility reasons, but it probably has to be fixed to present Version properly.</p>
<p>For the RAID part - I do not even know where to start :) but yes, mostly it is missing data, with some rare cases where the excessive data slips through.</p>
<p>Here comes information related to openvz.</p>
<p>I am attaching several inventories (as described below). All the inventories have been edited to remove irrelevant sections (i.e. SOFTWARE,ENVS,USERLIST,PROCESSES,CFKEY). Hostname and IPs have been changed. But it still should be sufficied for illustrative purposes.</p>
<ul>
<li>openvz-mothership.ocs - a CentOS-based OpenVZ Mothership</li>
</ul>
<p>Note, that ve-101 is missing from the list of Virtual machines, running on this mothership, probably because it does not have an IP address (or I should rather say, it's IP configuration is non-standard):</p>
<pre>
# vzlist -a
CTID NPROC STATUS IP_ADDR HOSTNAME
101 52 running - ve-101-fqdn
102 36 running 172.16.36.102 ve-102-fqdn
103 35 running 172.16.36.103 ve-103-fqdn
104 40 running 172.16.36.104 ve-104-fqdn
</pre>
<ul>
<li>openvz-container.ocs - an OpenVZ Container running on OpenVZ Mothership</li>
</ul>
<p>This is actually a ve-101 container - note that it does not have a network devices in the inventory, but somehow the Web GUI shows that right:</p>
<pre>
eth0 172.16.36.101 00:18:51:fb:5b:d6 Up
lo 127.0.0.1 00:00:00:00:00:00 Up
venet0
</pre>
<ul>
<li>proxmox-server.ocs - Proxmox Server host</li>
</ul>
<p>If you are not familiar with Proxmox - it is essentially a Debian system running RHEL kernel with OpenVZ modifications, which could have <strong>both</strong> OpenVZ-style containers and KVM/QEMU guests. For whatever reason only one OpenVZ container is listed (ve-103) in the GUI, and KVM guests are not listed at all:</p>
<pre>
# qm list
VMID NAME STATUS MEM(MB) BOOTDISK(GB) PID
100 kvm-100 running 2048 32.00 550842
101 kvm-101 running 2048 32.00 109995
104 kvm-104 running 2048 64.00 779849
# vzlist
CTID NPROC STATUS IP_ADDR HOSTNAME
102 97 running 172.16.4.222 ve-102.fqdn
103 196 running 172.16.4.223 ve-103.fqdn
</pre><br />Also the hostname of the only listed container was truncated mid-domain.
<ul>
<li>proxmox-kvm-guest.ocs - KVM guest, running on Proxmox Server host (ve-104)</li>
<li>proxmox-openvz-container.ocs - OpenVZ container, running on Proxmox Server host (ve-102)</li>
</ul>
<p>Since you mentioned that Rudder does support Virtuozzo I did some research and found that you are using some OpenVZ patch to support vzps. Proxmox does have vzps installed, but my older OpenVZ installations do not - I should probably get it deployed right away. I have also figured out that you already define several openvz-related classes (virt_host_vz/virt_guest_vz), so I could rely on those while writing the policies.</p>
<p>As for your question re classes availability for grouping - I would say all of them would be useful, but if we start with the hard classes it would be great too. However the hard classes are mostly those which inventorying process already figured out.</p>
<p>Hope this all will be useful, and if you have any more questions regarding the data I have submitted, please let me know.</p>
<p>Thanks a ton for your support!</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=245452014-02-23T08:48:27ZNicolas CHARLESnicolas.charles@rudder.io
<ul></ul><p>Thank you a lot for these details, they are really usefull to us.<br />It will take some time to be correctly processed, thought.</p>
<p>Many thanks</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=245472014-02-23T22:02:27ZAlex Tkachenkoalex.sysadm@gmail.com
<ul></ul><p>It's all right, I understand it. I hope something good will come out of it :)</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=253482014-03-11T19:23:24ZAlex Tkachenkoalex.sysadm@gmail.com
<ul></ul><p>This issue is still assigned to me - would you like me to provide more data?</p>
<p>Please let me know.<br />Thanks.</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=264012014-04-02T08:36:37ZNicolas CHARLESnicolas.charles@rudder.io
<ul><li><strong>Assignee</strong> changed from <i>Alex Tkachenko</i> to <i>Nicolas CHARLES</i></li></ul><p>Oh, sorry for the assignation.<br />We currently don't need more data on this one, it's a pretty big chunk to process. <br />I'm assigning it to myself, to process all of these.</p>
<p>Thank you !</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=296482014-07-10T09:12:15ZNicolas CHARLESnicolas.charles@rudder.io
<ul></ul><p>You may not have noted, but we implemented this support for 2.11<br />However we have not yet implemented the RAID support</p>
<p>Thank you !</p> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=375242015-03-11T10:56:36ZBenoît PECCATTEbenoit.peccatte@rudder.io
<ul><li><strong>Category</strong> changed from <i>26</i> to <i>Web - Nodes & inventories</i></li></ul> Rudder - User story #4395: How difficult would be to implement support for system manufacturer/model?https://issues.rudder.io/issues/4395?journal_id=545002016-05-04T15:59:10ZBenoît PECCATTEbenoit.peccatte@rudder.io
<ul><li><strong>Tracker</strong> changed from <i>Question</i> to <i>User story</i></li><li><strong>Target version</strong> set to <i>Ideas (not version specific)</i></li></ul>