Dell - Internal Use - Confidential We want to somehow publish the Management Controller (BMC) information, so that the user can query the same and get the details. A CIM provider will be a good solution to publish this information. We are primarily looking for a provider which publishes the "IP Address" and the "URL" for accessing of the Management Controller (BMC).
I had some offline discussions with Klaus and we are considering OOB_ManagementController class inheriting CIM_ManagementController. This OOB_ManagementController class will have the common properties like Network Address, Protocols supported etc.
The leaf class for example iDRAC_ManagementController will inherit OOB_ManagementController, extract the related IP Address with the right IPMI command and publish this information.
Does anyone have any inputs on the model we are considering?
Thank you Praveen K Paladugu Dell Linux Engineering
On 10/24/2013 03:34 PM, Jan Synacek wrote:
On 10/23/2013 08:59 PM, Praveen_Paladugu@Dell.com wrote:
Dell - Internal Use - Confidential
Well, that's a good one...
As this may be seen as rude, it sure wasn't meant like that. That was my i-ve-been-sitting-in-a-debugger-for-a-few-hours way of expressing that this mailing list was public.
So, please, don't take it personally.
Oops!! My bad.. please ignore that label. Forgot to update the label before sending it out. Please ignore the label, that mail wasn't meant to be confidential.
Thank you Praveen K Paladugu Dell Linux Engineering
Now that we have clarified that this isn't actually Dell confidential:
On Wed, 2013-10-23 at 13:59 -0500, Praveen_Paladugu@Dell.com wrote:
Dell - Internal Use - Confidential
We want to somehow publish the Management Controller (BMC) information, so that the user can query the same and get the details. A CIM provider will be a good solution to publish this information. We are primarily looking for a provider which publishes the “IP Address” and the “URL” for accessing of the Management Controller (BMC).
I had some offline discussions with Klaus and we are considering OOB_ManagementController class inheriting CIM_ManagementController. This OOB_ManagementController class will have the common properties like Network Address, Protocols supported etc.
The leaf class for example iDRAC_ManagementController will inherit OOB_ManagementController, extract the related IP Address with the right IPMI command and publish this information.
Does anyone have any inputs on the model we are considering?
Excellent idea. I assume that the initial implementation will be targeting iDRAC. Would it make sense to structure the Provider to discover and report on a general BMC? This would seem to involve reporting: * BMC manufacturer, make, model, revision, and firmware level. * BMC IP address * BMC URL * And, of course, "No BMC found"...
What other information would be useful to know about a BMC?
Do we want to have a specific class for iDRAC or to have a general BMC class that reports it found an iDRAC?
Do we want to do this as a standalone or as part of a larger class such as Physical System View.
Thank you
Praveen K Paladugu
Dell Linux Engineering
openlmi-devel mailing list openlmi-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
Russ, I forwarded your questions to one of our internal teams to gather their inputs. From a Dell Solution standpoint the OOB management is enabled in two levels: Basic Management, iDRAC So, I would like for the user to be able to query on something like iDRAC_ManagementController. If iDRAC features are enabled in the server, this query will return the related information. If not, the user can fall back to querying BMC_ManagementController class. However we end up modeling this class, I would like to have a dedicated class for iDRAC so that we can extend the class as we add new features to iDRAC. I will get back with our final recommendation as soon I hear from our internal teams.
Thank you Praveen K Paladugu Dell Linux Engineering
* Russell Doty rdoty@redhat.com [Oct 24. 2013 16:50]:
The leaf class for example iDRAC_ManagementController will inherit OOB_ManagementController, extract the related IP Address with the right IPMI command and publish this information.
Does anyone have any inputs on the model we are considering?
Excellent idea. I assume that the initial implementation will be targeting iDRAC. Would it make sense to structure the Provider to discover and report on a general BMC?
Yes. Intel has a similar technology, called Active Management. See http://en.wikipedia.org/wiki/Intel_Active_Management_Technology.
Just like iDRAC, this also 'speaks' WS-Management.
This would seem to involve reporting:
- BMC manufacturer, make, model, revision, and firmware level.
- BMC IP address
+ IP Port
- BMC URL
- And, of course, "No BMC found"...
What other information would be useful to know about a BMC?
Information about the protocol to interface with the BMC. I.e. 'WS-Management' for iDrac. Plus the protocol version.
Klaus
On Wed, 2013-10-30 at 13:03 +0100, Klaus Kaempf wrote:
- Russell Doty rdoty@redhat.com [Oct 24. 2013 16:50]:
The leaf class for example iDRAC_ManagementController will inherit OOB_ManagementController, extract the related IP Address with the right IPMI command and publish this information.
Does anyone have any inputs on the model we are considering?
Excellent idea. I assume that the initial implementation will be targeting iDRAC. Would it make sense to structure the Provider to discover and report on a general BMC?
Yes. Intel has a similar technology, called Active Management. See http://en.wikipedia.org/wiki/Intel_Active_Management_Technology.
Just like iDRAC, this also 'speaks' WS-Management.
I'm familiar with AMT, but it doesn't seem to be available on servers...
This would seem to involve reporting:
- BMC manufacturer, make, model, revision, and firmware level.
- BMC IP address
- IP Port
- BMC URL
- And, of course, "No BMC found"...
What other information would be useful to know about a BMC?
Information about the protocol to interface with the BMC. I.e. 'WS-Management' for iDrac. Plus the protocol version.
Good point.
Klaus
Thought I would have some information to get on this by now. I have a lot more information (than I expected) to sort through and will need quite a bit of time to sort through :(.
I don't want to hold back this effort any longer. For now let us proceed with implementing a generic class like "BMC_ManagementController". If we (Dell or other vendors) see a need to a have different class with attributes named differently or extend the attributed for BMC class, we add a new class by inheriting the BMC_ManagementController class.
I am guessing the primary source for populating the BMC information will be IPMI? Putting together the information from Russ and Klaus, following seem to be attributes we want to capture: * BMC manufacturer, make, model, revision, and firmware level. * BMC IP address * BMC URL * Protocols Supported (This might be tough, will have to check if this info is exported via IPMI)
Some more properties looking at the iDARC Class
* Fully Qualified Domain Name, if applicable
* LANStateEnabled or Disabled?
Any thoughts?
Thank you Praveen K Paladugu Dell Linux Engineering
On Thu, 2013-10-31 at 16:39 -0500, Praveen_Paladugu@Dell.com wrote:
Thought I would have some information to get on this by now. I have a lot more information (than I expected) to sort through and will need quite a bit of time to sort through L.
I don’t want to hold back this effort any longer. For now let us proceed with implementing a generic class like “BMC_ManagementController”. If we (Dell or other vendors) see a need to a have different class with attributes named differently or extend the attributed for BMC class, we add a new class by inheriting the BMC_ManagementController class.
I am guessing the primary source for populating the BMC information will be IPMI? Putting together the information from Russ and Klaus, following seem to be attributes we want to capture:
BMC manufacturer, make, model, revision, and firmware level.
BMC IP address
BMC URL
Protocols Supported (This might be tough, will have to check if this
info is exported via IPMI)
Looks like a good start to me. I would suggest building a basic provider with this information and making it available, then seeing what else people need.
Russ
Some more properties looking at the iDARC Class
· Fully Qualified Domain Name, if applicable
· LANStateEnabled or Disabled?
Any thoughts?
Thank you Praveen K Paladugu Dell Linux Engineering
openlmi-devel mailing list openlmi-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
Thank you Praveen K Paladugu Dell Linux Engineering
-----Original Message----- From: openlmi-devel-bounces@lists.fedorahosted.org [mailto:openlmi- devel-bounces@lists.fedorahosted.org] On Behalf Of Russell Doty Sent: Friday, November 01, 2013 9:49 AM To: openlmi-devel@lists.fedorahosted.org Subject: Re: A provider for publishing Management Controller (Service Processor) information
On Thu, 2013-10-31 at 16:39 -0500, Praveen_Paladugu@Dell.com wrote:
Thought I would have some information to get on this by now. I have a lot more information (than I expected) to sort through and will need quite a bit of time to sort through L.
I don't want to hold back this effort any longer. For now let us proceed with implementing a generic class like "BMC_ManagementController". If we (Dell or other vendors) see a need to a have different class with attributes named differently or extend the attributed for BMC class, we add a new class by inheriting the BMC_ManagementController class.
I am guessing the primary source for populating the BMC information will be IPMI? Putting together the information from Russ and Klaus, following seem to be attributes we want to capture:
BMC manufacturer, make, model, revision, and firmware level.
BMC IP address
BMC URL
Protocols Supported (This might be tough, will have to check if this
info is exported via IPMI)
Looks like a good start to me. I would suggest building a basic provider with this information and making it available, then seeing what else people need.
Russ
Some more properties looking at the iDARC Class
Fully Qualified Domain Name, if applicable
LANStateEnabled or Disabled?
Any thoughts?
Thank you Praveen K Paladugu Dell Linux Engineering
openlmi-devel mailing list openlmi-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
openlmi-devel mailing list openlmi-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
Sorry hit the send button too soon.
Following is MOF class I put together for BMC controller. Any inputs here are most welcome.
[Description("Model an Out of Band Management Controller and capture its features and capabilities")] class LMI_BMC : CIM_ManagementController {
[Description("This variable, should always capture the latest/updated IP address of BMC.")] string IPAddress;
[Description("The MAC address of the BMC.")] string PermanentMACAddress;
string BMC_URL;
[Description("Function to assign a new IP address to BMC. " "If the operation of setting the IP Address succeeds, return 0" "If IPMI command fails , return 1" "If the provided input is not a valid IP address, return 2" )] unit32 set_IPAddress([IN] string Input_IP);
string Manufacturer_ID;
string Manufacturer;
string Model;
string Firmware_Version;
string IPMI_Version;
[("Some servers have dedicated NIC attached to BMC, so share a LOM used for host OS communications. This function will let the user determine which is the case." "dedicated: will let the user know that BMC is using a dedicated NIC" "A response like LOM1 will let the user know that BMC is sharing LOM1 of the server with the OS." )] string get_active_nic();
};
Thank you Praveen K Paladugu Dell Linux Engineering
Incorporating Russ's inputs and some updates. Here is the udpated version of the MOF file.
[Description("Model an Out of Band Management Controller and capture its features and capabilities")] class LMI_BMC : CIM_ManagementController {
[Description("This variable, should always capture the latest IP address of BMC.")] string IPAddress;
[Description("The VLAN setting on the BMC NIC port.")] string VLAN;
[Description("The MAC address of the BMC.")] string PermanentMACAddress;
string BMC_URL;
[Description("Function to assign a new IP address to BMC." "If the operation of setting the IP Address succeeds, return 0" "If IPMI command fails , return 1" "If the provided input is not a valid IP address, return 2" )] uint32 set_IPAddress( [IN, Description ("Set the IP address of the BMC, to the input value")] string Input_IP, [IN, Description ("Set the netmask to this input value")] string Input_Netmask, [IN, Description ("Set the gateway on BMC to this input value")] string Input_Gateway);
[Description("Function to assign a VLAN ID to BMC." "If the operation of setting the VLAN ID succeeds, return 0" "If IPMI command fails , return 1" "If the provided input is not a valid VLAN ID, return 2" )] uint32 set_VLAN( [IN, Description("Set the VLAN ID of BMC NIC to this input value")] string Input_Vlan );
string Manufacturer_ID;
string Manufacturer;
string Model;
string firmware_version;
string IPMI_Version;
[Description("Some servers have dedicated NIC attached to BMC, some share a LOM used for host n/w communications. This function will let the user determine which is the case." "dedicated: will let the user know that BMC is using a dedicated NIC" "A response like LOM1 will let the user know that BMC is sharing LOM1 of the server with the OS." )] string get_active_nic();
};
I just noticed there is already a provider in LMI for BaseBoard (https://git.fedorahosted.org/cgit/openlmi-providers.git/tree/src/hardware/LM... ). Could someone please confirm, if it serves the same purpose?
Praveen
* Praveen_Paladugu@Dell.com Praveen_Paladugu@Dell.com [Nov 14. 2013 20:17]:
Incorporating Russ's inputs and some updates. Here is the udpated version of the MOF file.
Find my Comments embedded.
[Description("Model an Out of Band Management Controller and capture its features and capabilities")] class LMI_BMC : CIM_ManagementController {
[Description("This variable, should always capture the latest IP address of BMC.")] string IPAddress;
Please indicate the IP version. Maybe we need two IP address properties ? string IP4Address; string IP6Address;
Same for set_IPAddress ;-)
[Description("The VLAN setting on the BMC NIC port.")] string VLAN; [Description("The MAC address of the BMC.")] string PermanentMACAddress; string BMC_URL;
All properties should have a description.
[Description("Function to assign a new IP address to BMC." "If the operation of setting the IP Address succeeds, return 0" "If IPMI command fails , return 1" "If the provided input is not a valid IP address, return 2" )] uint32 set_IPAddress( [IN, Description ("Set the IP address of the BMC, to the input value")] string Input_IP, [IN, Description ("Set the netmask to this input value")] string Input_Netmask, [IN, Description ("Set the gateway on BMC to this input value")] string Input_Gateway); [Description("Function to assign a VLAN ID to BMC." "If the operation of setting the VLAN ID succeeds, return 0" "If IPMI command fails , return 1" "If the provided input is not a valid VLAN ID, return 2" )] uint32 set_VLAN( [IN, Description("Set the VLAN ID of BMC NIC to this input value")] string Input_Vlan ); string Manufacturer_ID; string Manufacturer; string Model;
This could be rolled up into IdentifyingDescriptions of CIM_LogicalDevice.
string firmware_version; string IPMI_Version;
Move the properities up in the mof file, functions usually come last.
IPMI_Version seems odd, not all BMCs support IPMI. How to indicate supported protocols ?
[Description("Some servers have dedicated NIC attached to BMC, some share a LOM used for host n/w communications. This function will let the user determine which is the case." "dedicated: will let the user know that BMC is using a dedicated NIC" "A response like LOM1 will let the user know that BMC is sharing LOM1 of the server with the OS." )] string get_active_nic();
};
Klaus
On Fri, 2013-11-15 at 18:29 +0100, Klaus Kaempf wrote:
- Praveen_Paladugu@Dell.com Praveen_Paladugu@Dell.com [Nov 14. 2013 20:17]:
Incorporating Russ's inputs and some updates. Here is the udpated version of the MOF file.
Find my Comments embedded.
[Description("Model an Out of Band Management Controller and capture its features and capabilities")] class LMI_BMC : CIM_ManagementController {
[Description("This variable, should always capture the latest IP address of BMC.")] string IPAddress;
Please indicate the IP version. Maybe we need two IP address properties ? string IP4Address; string IP6Address;
Good point.
Same for set_IPAddress ;-)
[Description("The VLAN setting on the BMC NIC port.")] string VLAN; [Description("The MAC address of the BMC.")] string PermanentMACAddress; string BMC_URL;
All properties should have a description.
[Description("Function to assign a new IP address to BMC." "If the operation of setting the IP Address succeeds, return 0" "If IPMI command fails , return 1" "If the provided input is not a valid IP address, return 2" )] uint32 set_IPAddress( [IN, Description ("Set the IP address of the BMC, to the input value")] string Input_IP, [IN, Description ("Set the netmask to this input value")] string Input_Netmask, [IN, Description ("Set the gateway on BMC to this input value")] string Input_Gateway); [Description("Function to assign a VLAN ID to BMC." "If the operation of setting the VLAN ID succeeds, return 0" "If IPMI command fails , return 1" "If the provided input is not a valid VLAN ID, return 2" )] uint32 set_VLAN( [IN, Description("Set the VLAN ID of BMC NIC to this input value")] string Input_Vlan ); string Manufacturer_ID; string Manufacturer; string Model;
This could be rolled up into IdentifyingDescriptions of CIM_LogicalDevice.
If the goal is to be able to parse the model, it would seem to be more difficult if model were rolled up into IdentifyingDescriptions of CIM_LogicalDevice.
Do we need a version for model, as well as firmware and ipmi?
string firmware_version; string IPMI_Version;
Move the properities up in the mof file, functions usually come last.
IPMI_Version seems odd, not all BMCs support IPMI. How to indicate supported protocols ?
This mof model is probably based on Dell BMCs. What do you suggest for other BMCs?
[Description("Some servers have dedicated NIC attached to BMC, some share a LOM used for host n/w communications. This function will let the user determine which is the case." "dedicated: will let the user know that BMC is using a dedicated NIC" "A response like LOM1 will let the user know that BMC is sharing LOM1 of the server with the OS." )] string get_active_nic();
};
Klaus
Hi,
On Fri, 2013-11-15 at 18:29 +0100, Klaus Kaempf wrote:
- Praveen_Paladugu@Dell.com Praveen_Paladugu@Dell.com [Nov 14. 2013 20:17]:
Incorporating Russ's inputs and some updates. Here is the udpated version of the MOF file.
Find my Comments embedded.
[Description("Model an Out of Band Management Controller and capture its features and capabilities")] class LMI_BMC : CIM_ManagementController {
[Description("This variable, should always capture the latest IP address of BMC.")] string IPAddress;
Please indicate the IP version. Maybe we need two IP address properties ? string IP4Address; string IP6Address;
Same for set_IPAddress ;-)
Do we have a preferred representation for "IP address" within OpenLMI?
--Stephen
On Mon 18 of Nov 2013 13:55:39 Stephen C. Tweedie wrote:
Hi,
On Fri, 2013-11-15 at 18:29 +0100, Klaus Kaempf wrote:
- Praveen_Paladugu@Dell.com Praveen_Paladugu@Dell.com [Nov 14. 2013
20:17]:
Incorporating Russ's inputs and some updates. Here is the udpated version of the MOF file.>
Find my Comments embedded.
[Description("Model an Out of Band Management Controller and capture its features and capabilities")] class LMI_BMC : CIM_ManagementController {
[Description("This variable, should always capture the latest IP address of BMC.")] string IPAddress;
Please indicate the IP version. Maybe we need two IP address properties ?
string IP4Address; string IP6Address;
Same for set_IPAddress ;-)
Do we have a preferred representation for "IP address" within OpenLMI?
--Stephen
Network-related profiles (like DSP1116 [1]) use string representation of IP address without specifying supported formats. I would go with simple array:
string IPAddresses[];
Radek Novacek
[1] http://dmtf.org/sites/default/files/standards/documents/DSP1116_1.0.0.pdf
openlmi-devel mailing list openlmi-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
----- Original Message -----
From: "Radek Novacek" rnovacek@redhat.com To: openlmi-devel@lists.fedorahosted.org Sent: Monday, November 18, 2013 3:10:30 PM Subject: Re: A provider for publishing Management Controller (Service Processor) information
On Mon 18 of Nov 2013 13:55:39 Stephen C. Tweedie wrote:
Hi,
On Fri, 2013-11-15 at 18:29 +0100, Klaus Kaempf wrote:
- Praveen_Paladugu@Dell.com Praveen_Paladugu@Dell.com [Nov 14. 2013
20:17]:
Incorporating Russ's inputs and some updates. Here is the udpated version of the MOF file.>
Find my Comments embedded.
[Description("Model an Out of Band Management Controller and capture its features and capabilities")] class LMI_BMC : CIM_ManagementController {
[Description("This variable, should always capture the latest IP address of BMC.")] string IPAddress;
Please indicate the IP version. Maybe we need two IP address properties ?
string IP4Address; string IP6Address;
Same for set_IPAddress ;-)
Do we have a preferred representation for "IP address" within OpenLMI?
--Stephen
Network-related profiles (like DSP1116 [1]) use string representation of IP address without specifying supported formats. I would go with simple array:
string IPAddresses[];
I vote for string array too.
Radek Novacek
[1] http://dmtf.org/sites/default/files/standards/documents/DSP1116_1.0.0.pdf
openlmi-devel mailing list openlmi-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
openlmi-devel mailing list openlmi-devel@lists.fedorahosted.org https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
openlmi-devel@lists.stg.fedorahosted.org