HPI_UG_3_2_0_0_and_3_1_0_20130115

Embed Size (px)

Citation preview

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    1/172

    User GuideOpenHPI Release 3.2.0.0IntegralHPI Release 3.1.0

    January 15, 2013

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    2/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 2 January 15, 2013

    2002-2013 Pigeon Point Systems. All rights reserved.

    Pigeon PointTMHardware Platform Interface.

    This document is furnished under license and may be used or copied only in accordance with theterms of such license. The content of this manual is furnished for informational use only, is subjectto change without notice, and should not be construed as a commitment by Pigeon Point Systems.Pigeon Point Systems assumes no responsibility or liability for any errors or inaccuracies that mayappear in this book.

    Except as permitted by such license, no part of this publication may be reproduced, stored in aretrieval system, or transmitted, in any form or by any means, electronic, manual, recording, orotherwise, without the prior written permission of Pigeon Point Systems.

    The Pigeon Point name and stylized lighthouse logo, as well as Monterey Linux, IntegralHPI,

    Shelf Manager and Carrier Manager,are trademarks of Pigeon Point Systems. Linux is aregistered trademark of Linus Torvalds.

    The Pigeon Point plug-in, and OpenHPI in general, use the Glib library, which is released under theGNU Library General Public License (GNU LGPL).

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    3/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 3 January 15, 2013

    Table of Contents

    1 ABOUT THIS DOCUMENT .................................................................................................. 12

    1.1 Related Documentation for the Pigeon Point Shelf Manager ...................................... 121.2 Conventions Used in this Document ............................................................................ 131.3 Additional Information................................................................................................... 13

    2

    INTRODUCTION TO PIGEON POINT HPI SOLUTIONS .................................................... 15

    2.1 Pigeon Point HPI Overview .......................................................................................... 162.2 Pigeon Point IntegralHPI Server .................................................................................. 182.3 Pigeon Point OpenHPI Server ..................................................................................... 192.4 Differences between Pigeon Point OpenHPI and IntegralHPI ..................................... 21

    3 INSTALLATION AND CONFIGURATION ........................................................................... 26

    3.1 Installing and Configuring Pigeon Point OpenHPI ....................................................... 263.2 Installing and Configuring IntegralHPI.......................................................................... 32

    4 STARTUP AND INITIALIZATION ........................................................................................ 34

    4.1

    Starting OpenHPI ......................................................................................................... 34

    4.2

    Initializing OpenHPI ...................................................................................................... 354.3 Starting and Initializing IntegralHPI .............................................................................. 36

    4.4 Implications of Shelf Manager Redundancy ................................................................ 36

    5 USING THE COMMAND SHELL ......................................................................................... 39

    5.1 addcfg ........................................................................................................................... 485.1.1

    Syntax ...................................................................................................................... 48

    5.1.2 Purpose .................................................................................................................... 485.1.3 Example ................................................................................................................... 48

    5.2 ann................................................................................................................................ 495.2.1 Syntax ...................................................................................................................... 495.2.2 Purpose .................................................................................................................... 495.2.3 Example ................................................................................................................... 49

    5.2.4

    acknow ..................................................................................................................... 50

    5.2.5 add ........................................................................................................................... 505.2.6 delete ....................................................................................................................... 505.2.7 list ............................................................................................................................. 515.2.8 modeget ................................................................................................................... 515.2.9 modeset ................................................................................................................... 525.2.10

    show .................................................................................................................... 52

    5.3 clearevtlog .................................................................................................................... 535.3.1 Syntax ...................................................................................................................... 535.3.2 Purpose .................................................................................................................... 535.3.3 Example ................................................................................................................... 53

    5.4 ctrl ................................................................................................................................. 545.4.1 Syntax ...................................................................................................................... 545.4.2 Purpose .................................................................................................................... 545.4.3

    Example ................................................................................................................... 54

    5.4.4 setstate..................................................................................................................... 565.4.5 show ......................................................................................................................... 565.4.6 state ......................................................................................................................... 58

    5.5 dat................................................................................................................................. 595.5.1 Syntax ...................................................................................................................... 595.5.2

    Purpose .................................................................................................................... 59

    5.5.3

    Example ................................................................................................................... 59

    5.6 debug ........................................................................................................................... 60

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    4/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 4 January 15, 2013

    5.6.1 Syntax ...................................................................................................................... 605.6.2 Purpose .................................................................................................................... 605.6.3 Example ................................................................................................................... 60

    5.7 dimi ............................................................................................................................... 615.7.1 Syntax ...................................................................................................................... 615.7.2 Purpose .................................................................................................................... 61

    5.7.3

    Example ................................................................................................................... 615.7.4

    cancel ....................................................................................................................... 61

    5.7.5 info ........................................................................................................................... 625.7.6 ready ........................................................................................................................ 625.7.7 results ....................................................................................................................... 625.7.8 start .......................................................................................................................... 635.7.9 status ........................................................................................................................ 635.7.10 testinfo ................................................................................................................. 63

    5.8 domain .......................................................................................................................... 655.8.1 Syntax ...................................................................................................................... 655.8.2 Purpose .................................................................................................................... 655.8.3 Example ................................................................................................................... 65

    5.9

    domaininfo .................................................................................................................... 66

    5.9.1

    Syntax ...................................................................................................................... 66

    5.9.2

    Purpose .................................................................................................................... 66

    5.9.3 Example ................................................................................................................... 665.10 Drt ................................................................................................................................. 67

    5.10.1 Syntax .................................................................................................................. 675.10.2 Purpose ............................................................................................................... 67

    5.11 dscv .............................................................................................................................. 675.11.1 Syntax .................................................................................................................. 675.11.2 Purpose ............................................................................................................... 675.11.3 Example ............................................................................................................... 67

    5.12 echo .............................................................................................................................. 685.12.1 Syntax .................................................................................................................. 685.12.2 Purpose ............................................................................................................... 685.12.3 Example ............................................................................................................... 68

    5.13

    entinstr .......................................................................................................................... 69

    5.13.1

    Syntax .................................................................................................................. 69

    5.13.2 Purpose ............................................................................................................... 695.13.3 Example ............................................................................................................... 69

    5.14 entres ........................................................................................................................... 705.14.1 Syntax .................................................................................................................. 705.14.2 Purpose ............................................................................................................... 705.14.3 Example ............................................................................................................... 70

    5.15 event ............................................................................................................................. 715.15.1 Syntax .................................................................................................................. 715.15.2 Purpose ............................................................................................................... 715.15.3 Example ............................................................................................................... 71

    5.16 evtlogreset .................................................................................................................... 73

    5.16.1

    Syntax .................................................................................................................. 735.16.2 Purpose ............................................................................................................... 73

    5.16.3 Example ............................................................................................................... 735.17 evtlogstate .................................................................................................................... 74

    5.17.1 Syntax .................................................................................................................. 745.17.2 Purpose ............................................................................................................... 745.17.3 Example ............................................................................................................... 74

    5.18 evtlogtime ..................................................................................................................... 755.18.1 Syntax .................................................................................................................. 75

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    5/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 5 January 15, 2013

    5.18.2 Purpose ............................................................................................................... 755.18.3 Example ............................................................................................................... 75

    5.19 exec .............................................................................................................................. 765.19.1 Syntax .................................................................................................................. 765.19.2 Purpose ............................................................................................................... 765.19.3 Example ............................................................................................................... 76

    5.20

    fumi ............................................................................................................................... 775.20.1

    Syntax .................................................................................................................. 77

    5.20.2 Purpose ............................................................................................................... 775.20.3 Example ............................................................................................................... 775.20.4 activate ................................................................................................................ 785.20.5 backup ................................................................................................................. 785.20.6 bankcopy ............................................................................................................. 785.20.7 cancel .................................................................................................................. 795.20.8 cleanup ................................................................................................................ 795.20.9 disableautorollback .............................................................................................. 795.20.10 install .................................................................................................................... 805.20.11 rollback ................................................................................................................ 805.20.12 serviceimpact ....................................................................................................... 80

    5.20.13

    setbootorder......................................................................................................... 81

    5.20.14

    setsource ............................................................................................................. 81

    5.20.15 sourceinfo ............................................................................................................ 825.20.16 specinfo ............................................................................................................... 825.20.17 status ................................................................................................................... 835.20.18 targetinfo .............................................................................................................. 835.20.19 validatesource...................................................................................................... 845.20.20 verifymain ............................................................................................................ 855.20.21 verify .................................................................................................................... 855.20.22 Example of HPM.1 FUMI Usage ......................................................................... 85

    5.21 help ............................................................................................................................... 885.21.1 Syntax .................................................................................................................. 885.21.2 Purpose ............................................................................................................... 885.21.3 Example ............................................................................................................... 88

    5.22

    history ........................................................................................................................... 89

    5.22.1

    Syntax .................................................................................................................. 89

    5.22.2 Purpose ............................................................................................................... 895.22.3 Example ............................................................................................................... 89

    5.23 hs .................................................................................................................................. 905.23.1 Syntax .................................................................................................................. 905.23.2 Purpose ............................................................................................................... 905.23.3 Example ............................................................................................................... 905.23.4 action ................................................................................................................... 905.23.5 active ................................................................................................................... 905.23.6 gettimeout ............................................................................................................ 915.23.7 inactive ................................................................................................................. 915.23.8 ind ........................................................................................................................ 92

    5.23.9

    policycancel ......................................................................................................... 925.23.10 settimeout ............................................................................................................ 93

    5.23.11 state ..................................................................................................................... 935.24 inv/showinv ................................................................................................................... 94

    5.24.1 Syntax .................................................................................................................. 945.24.2 Purpose ............................................................................................................... 945.24.3 Example ............................................................................................................... 945.24.4 addarea ................................................................................................................ 955.24.5 addfield ................................................................................................................ 95

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    6/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 6 January 15, 2013

    5.24.6 delarea ................................................................................................................. 965.24.7 delfield ................................................................................................................. 965.24.8 setfield ................................................................................................................. 965.24.9 show .................................................................................................................... 96

    5.25

    lsensor .......................................................................................................................... 98

    5.25.1 Syntax .................................................................................................................. 98

    5.25.2

    Purpose ............................................................................................................... 985.25.3

    Example ............................................................................................................... 98

    5.26 lsent ............................................................................................................................ 1025.26.1 Syntax ................................................................................................................ 1025.26.2 Purpose ............................................................................................................. 1025.26.3 Example ............................................................................................................. 102

    5.27 lsres ............................................................................................................................ 1075.27.1 Syntax ................................................................................................................ 1075.27.2 Purpose ............................................................................................................. 1075.27.3 Example ............................................................................................................. 107

    5.28 more ........................................................................................................................... 1085.28.1 Syntax ................................................................................................................ 1085.28.2 Purpose ............................................................................................................. 108

    5.28.3

    Example ............................................................................................................. 108

    5.29

    newdomain ................................................................................................................. 110

    5.29.1 Syntax ................................................................................................................ 1105.29.2 Purpose ............................................................................................................. 1105.29.3 Example ............................................................................................................. 110

    5.30 parmctrl ...................................................................................................................... 1105.30.1 Syntax ................................................................................................................ 1105.30.2 Purpose ............................................................................................................. 110

    5.31 power .......................................................................................................................... 1115.31.1 Syntax ................................................................................................................ 1115.31.2 Purpose ............................................................................................................. 111

    5.32 quit .............................................................................................................................. 1125.32.1 Syntax ................................................................................................................ 1125.32.2 Purpose ............................................................................................................. 112

    5.32.3

    Example ............................................................................................................. 112

    5.33 rdr/showrdr ................................................................................................................. 1135.33.1 Syntax ................................................................................................................ 1135.33.2 Purpose ............................................................................................................. 1135.33.3 Example ............................................................................................................. 113

    5.34 rdrupdatecounter ........................................................................................................ 1165.34.1 Syntax ................................................................................................................ 1165.34.2 Purpose ............................................................................................................. 1165.34.3 Example ............................................................................................................. 116

    5.35 removefailed ............................................................................................................... 1175.35.1 Syntax ................................................................................................................ 1175.35.2 Purpose ............................................................................................................. 1175.35.3 Example ............................................................................................................. 117

    5.36

    reset............................................................................................................................ 1185.36.1 Syntax ................................................................................................................ 118

    5.36.2 Purpose ............................................................................................................. 1185.36.3 Example ............................................................................................................. 118

    5.37 reopen ........................................................................................................................ 1195.37.1 Syntax ................................................................................................................ 1195.37.2 Purpose ............................................................................................................. 1195.37.3 Example ............................................................................................................. 119

    5.38 rpt/showrpt .................................................................................................................. 120

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    7/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 7 January 15, 2013

    5.38.1 Syntax ................................................................................................................ 1205.38.2 Purpose ............................................................................................................. 1205.38.3 Example ............................................................................................................. 120

    5.39 run .............................................................................................................................. 1215.39.1 Syntax ................................................................................................................ 1215.39.2 Purpose ............................................................................................................. 121

    5.39.3

    Example ............................................................................................................. 1215.40 sen .............................................................................................................................. 122

    5.40.1 Syntax ................................................................................................................ 1225.40.2 Purpose ............................................................................................................. 1225.40.3 Example ............................................................................................................. 1225.40.4 disable ............................................................................................................... 1235.40.5 enable ................................................................................................................ 1235.40.6 evtdis ................................................................................................................. 1235.40.7 evtenb ................................................................................................................ 1235.40.8 maskadd ............................................................................................................ 1245.40.9 maskrm .............................................................................................................. 1245.40.10 setthres .............................................................................................................. 1255.40.11 show .................................................................................................................. 125

    5.41

    setsever ...................................................................................................................... 126

    5.41.1

    Syntax ................................................................................................................ 126

    5.41.2 Purpose ............................................................................................................. 1265.41.3 Example ............................................................................................................. 126

    5.42 settag .......................................................................................................................... 1275.42.1 Syntax ................................................................................................................ 1275.42.2 Purpose ............................................................................................................. 1275.42.3 Example ............................................................................................................. 127

    5.43 settimeevtlog .............................................................................................................. 1285.43.1 Syntax ................................................................................................................ 1285.43.2 Purpose ............................................................................................................. 1285.43.3 Example ............................................................................................................. 128

    5.44 showevtlog ................................................................................................................. 1295.44.1 Syntax ................................................................................................................ 129

    5.44.2

    Purpose ............................................................................................................. 129

    5.44.3

    Example ............................................................................................................. 129

    5.45 ver............................................................................................................................... 1315.45.1 Syntax ................................................................................................................ 1315.45.2 Purpose ............................................................................................................. 1315.45.3 Example ............................................................................................................. 131

    5.46 wdtget ......................................................................................................................... 1325.46.1 Syntax ................................................................................................................ 1325.46.2 Purpose ............................................................................................................. 1325.46.3 Example ............................................................................................................. 132

    5.47 wdtreset ...................................................................................................................... 1335.47.1 Syntax ................................................................................................................ 1335.47.2 Purpose ............................................................................................................. 133

    5.47.3

    Example ............................................................................................................. 1335.48

    wdtset ......................................................................................................................... 134

    5.48.1 Syntax ................................................................................................................ 1345.48.2 Purpose ............................................................................................................. 1345.48.3 Example ............................................................................................................. 134

    6 DEVELOPING HPI-BASED APPLICATIONS .................................................................... 136

    6.1 Simple HPI Application Example ................................................................................ 1376.2 Building and Running HPI Applications...................................................................... 138

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    8/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 8 January 15, 2013

    7 SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP) ............................................ 141

    7.1 Overall Approach ........................................................................................................ 1417.2 Launching OpenHPI SNMP ....................................................................................... 1427.3 SNMP Variables ......................................................................................................... 1427.4 Accessing the HPI Server via SNMP ......................................................................... 144

    7.4.1 SNMPv2c ............................................................................................................... 1447.4.2

    SNMPv3 ................................................................................................................. 145

    8 PIGEON POINT EXTENSIONS .......................................................................................... 149

    8.1 Pigeon Point OpenHPI Version Control ..................................................................... 1498.2 Pigeon Point IntegralHPI Version Control .................................................................. 1498.3 Pigeon Point IPMI Command Control and IPMI AMC Command Controls ............... 1508.4 Pigeon Point IPMB Address and FRU Device ID Sensors ........................................ 151 8.5 IPMI Extension Dependencies in Pigeon Point OpenHPI .......................................... 1528.6 DIMI ............................................................................................................................ 154

    8.6.1 IPMI Self Test DIMI ................................................................................................ 1548.6.2 Diagnostic Initiator based DIMIs ............................................................................ 1558.6.3

    ShMM Runtime Tests DIMI .................................................................................... 155

    8.7 ShMM FUMI ............................................................................................................... 157

    8.7.1

    Example of ShMM FUMI Usage ............................................................................ 158

    8.8 MicroTCA Support in Pigeon Point OpenHPI ............................................................ 160

    9 TROUBLE-SHOOTING ...................................................................................................... 162

    9.1 Trouble-shooting with Pigeon Point OpenHPI ........................................................... 1629.2 Trouble-shooting with Pigeon Point IntegralHPI ........................................................ 1639.3 Specific Problem Cases and How to Address Them ................................................. 163 9.4 IntegralHPI Hot Swap Management Complexities ..................................................... 165

    APPENDIX A: REVISION HISTORY .................................................................................... 170

    A.1 Revision 2.14.0.0/2.7.0............................................................................................... 170A.2

    Revision 2.14.1.0/2.7.1............................................................................................... 170

    A.3 Revision 2.14.1.0/2.7.2............................................................................................... 171

    A.4

    Revision 2.14.1.0/2.7.4............................................................................................... 171A.5 Revision 2.14.1.0/2.8.0............................................................................................... 171

    A.6 Revision 3.2.0.0/3.0.0................................................................................................. 171A.7 Revision 3.2.0.0/3.1.0................................................................................................. 172

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    9/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 9 January 15, 2013

    Tables

    Table 1 Shelf Manager Documentation ......................................................................................... 12Table 2 Conventions Used in this Document ................................................................................ 13Table 3 Well-known IPMI Software IDs ......................................................................................... 20Table 4 Key Differences between Pigeon Point OpenHPI and IntegralHPI .................................. 21

    Table 5 Global Configuration Variables ......................................................................................... 27

    Table 6 Plug-in Handler Configuration Variables .......................................................................... 28

    Table 7 Domain Handler Configuration Variables ......................................................................... 31Table 8 IntegralHPI Configuration Variables for the Pigeon Point Shelf Manager ........................ 32Table 9 Resource Capabilities ....................................................................................................... 40Table 10 HPI Shell Commands and Descriptions ......................................................................... 42Table 11 FUMI Access Protocols .................................................................................................. 81Table 12 Key Groups of HPI Variables........................................................................................ 143Table 13 Tests for ShMM DIMI .................................................................................................... 155Table 14 Possible Activation Behaviors ...................................................................................... 166Table 15 Possible Deactivation Behaviors .................................................................................. 168

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    10/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 10 January 15, 2013

    Figures

    Figure 2-1 Architecture and Architectural Context for the Pigeon Point Shelf Manager ............... 15 Figure 2-2 Overall Architecture of Pigeon Point HPI ..................................................................... 17Figure 2-3 Control Flow with Pigeon Point IntegralHPI Server ..................................................... 18

    Figure 2-4 Control Flow with Pigeon Point OpenHPI Server ........................................................ 20

    Figure 7-1 Pigeon Point HPI SNMP Models ................................................................................ 141

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    11/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 11 January 15, 2013

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    12/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 12 January 15, 2013

    1 About This DocumentThis document describes the Pigeon Point implementation of the Service Availability Forums(SAFs) Hardware Platform Interface (HPI). The HPI specification defines a data model and

    programming interface to monitor and control generic hardware platforms. The main focus ofPigeon Points HPI implementation is to provide a portable interface to the Pigeon PointAdvancedTCA Shelf Manager and the wide variety of AdvancedTCA shelves in which that ShelfManager is integrated.

    Two distinct HPI implementations are provided by Pigeon Point: Pigeon Point OpenHPI andIntegralHPI.

    Pigeon Point OpenHPI is based on OpenHPI (http://www.openhpi.org), which is an open sourceHPI implementation for Linux. Pigeon Point has developed a proprietary plug-in for OpenHPI andfixed numerous issues in the OpenHPI core that show up with AdvancedTCA shelves.

    IntegralHPI is the native Pigeon Point HPI solution that is implemented as a dynamically loadedlibrary used by the Shelf Manager. Integral HPI runs on the same ShMM where the Shelf Managerruns, and provides HPI interface only to the corresponding AdvancedTCA shelf. IntegralHPIprovides an external remote interface to HPI client applications that is compatible with the remoteinterface provided by the OpenHPI daemon.

    HPI can perform the following operations (along with many others) on behalf of a client applicationthat is managing one or more hardware platforms:

    returning information about available resources;

    reading and changing settings for controls and sensors;

    retrieving inventory information;

    accessing event logs.

    This document describes the architecture, configuration and installation of both Pigeon PointOpenHPI and IntegralHPI, as well as the development of HPI-based applications using eitherimplementation.

    1.1 Related Doc um entation for the Pigeon Poin t Shel f

    Manager

    Users of Pigeon Point HPI solutions may be interested in understanding the Shelf Manager throughwhich HPI accesses the AdvancedTCA shelves it is managing. There are two user documents for

    the Pigeon Point Shelf Manager, both of which are available in PDF format (seeTable 1).

    Table 1 Shelf Manager Documentation

    DOCUMENT DESCRIPTION

    Pigeon Point Shelf Manager UserGuide

    This document describes the overall configurationand use of the Pigeon Point Shelf Manager.

    Pigeon Point Shelf Manager This document describes how to use the Shelf

    http://www.openhpi.org/http://www.openhpi.org/http://www.openhpi.org/http://www.openhpi.org/
  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    13/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 13 January 15, 2013

    External Interface Reference Manager command line interface, the web interface,the Simple Network Management Protocol (SNMP)interface and the Remote Management ControlProtocol (RMCP) interface.

    1.2 Conv ent ions Used in this DocumentThis table describes the textual conventions used in this document.

    Table 2 Conventions Used in this Document

    CONVENTION SAMPLE DESCRIPTIONlsres This 10 point bold Courier font is used for text

    entered at keyboard in example dialogues, whichtypically occur as one or more separate lines.

    (001):ShelfResource:{S|RDR|INV|CNT|RES}

    This 10 point normal Courier font is used for HPIoutput in example dialogues.

    Refresh This 12 point bold Courier font is used for specialtext within normal paragraphs. The types of suchspecial text include command names, filenames, configuration parameters and commandparameters, plus other text that could be enteredby or displayed to an HPI user. This font is alsoused for command syntax definitions.

    1.3 Addi t ion al Inform at ion

    Service Availability Forum (http://www.sa-forum.org/), especially for access to the following

    materials:Specifications (including Hardware Platform Interface (SAI-HPI.B.03.02.pdf), HPI-to-AdvancedTCA Mapping (SAIM-HPI-B.01.01-ATCA) and HPI-to-xTCA Mapping (SAIM-HPI-B.03.02-xTCA)

    Educational material, including 7 lessons on HPI and the HPI-to-ATCA mappingspecification

    OpenHPI (http://www.openhpi.org)for access to source code and documentation

    Net-SNMP (http://net-snmp.sourceforge.net/)for access to source code anddocumentation of the Simple Network Management Protocol (SNMP) implementation thatis used with OpenHPI

    Intelligent Platform Management Interface (IPMI), including v1.5 IPMI specification

    (http://www.intel.com/design/servers/ipmi/)Pigeon Point Shelf Manager documentation (http://www.pigeonpoint.com/library/)

    Overall information about other Pigeon Point products(http://www.pigeonpoint.com/products.html)

    http://www.sa-forum.org/http://www.sa-forum.org/http://www.sa-forum.org/http://www.openhpi.org/http://www.openhpi.org/http://www.openhpi.org/http://net-snmp.sourceforge.net/http://net-snmp.sourceforge.net/http://net-snmp.sourceforge.net/http://www.intel.com/design/servers/ipmi/http://www.intel.com/design/servers/ipmi/http://www.intel.com/design/servers/ipmi/http://www.pigeonpoint.com/library/http://www.pigeonpoint.com/library/http://www.pigeonpoint.com/library/http://www.pigeonpoint.com/products.htmlhttp://www.pigeonpoint.com/products.htmlhttp://www.pigeonpoint.com/products.htmlhttp://www.pigeonpoint.com/products.htmlhttp://www.pigeonpoint.com/library/http://www.intel.com/design/servers/ipmi/http://net-snmp.sourceforge.net/http://www.openhpi.org/http://www.sa-forum.org/
  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    14/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 14 January 15, 2013

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    15/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 15 January 15, 2013

    2 Introduction to Pigeon Point HPI SolutionsIn the AdvancedTCA context, HPI provides a portable foundation layer for System Managerapplications. The System Manager in AdvancedTCA is a logical concept referring to the

    combination of software and people that provides high level management for one or moreAdvancedTCA shelves. The figure below shows the built-in System Manager interfaces supportedby the Pigeon Point Shelf Manager, as well as other aspects of the architecture and architecturalcontext of the Shelf Manager. See Section 2 of the Pigeon Point Shelf Manager User Guide(posted online at Error! Hyperlink reference not valid.) for an introduction to the AdvancedTCAhardware platform management and more about the architecture shown in this figure.

    Figure 2-1 Architecture and Architectural Context for the Pigeon Point Shelf Manager

    The only one of these interfaces that is mandated by the AdvancedTCA specification is the RemoteManagement Control Protocol (RMCP) interface. Some System Manager implementers aresuccessfully using RMCP as their interface to the Pigeon Point Shelf Manager (and otherAdvancedTCA Shelf Managers as well), but other implementers prefer a more abstracted interfaceto the managed shelves. HPI provides such an abstracted interface.

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    16/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 16 January 15, 2013

    HPI enables monitoring and control of highly available systems through a consistent, platform-independent set of programmatic interfaces, which are defined in the Hardware Platform Interfacespecification (SAI-HPI-B.03.02). Especially when combined with the HPI-to-xTCA Mapping (SAIM-HPI-B.03.02-xTCA), HPI defines the framework and semantics for an interface to ATCA shelves

    that enables portable System Manager implementations.

    HPI was initially designed for use with IPMI-based management infrastructures and is moststraightforwardly adapted to this type of platform. However, HPI is also adaptable to any otherplatform with sufficient underlying platform management technology.

    2.1 Pigeon Po int HPI Overview

    Figure 2-2 shows the overall Pigeon Point approach to HPI. The approach is based on OpenHPI,an open source implementation of HPI that is posted athttp://www.openhpi.org.HPI applicationslink to the OpenHPI client library, which has entries for all the APIs defined by the HPI specification.A System Manager can include one or more HPI applications, all of which use HPI as their lowest

    layer. OpenHPI includes a particularly useful HPI application called hpi_shellthat provides acommand line shell for interacting with an HPI-managed system. All of these applications are linkedto the same client library.

    The client library uses the OpenHPI Remote Procedure Call (RPC) protocol to forward API calls forprocessing by a compatible server. This RPC protocol is based on TCP/IP, so the client(s) and theserver(s) in an overall HPI-managed system typically communicate over a network, potentially eventhe public Internet.

    Pigeon Point HPI supports two server possibilities. On the right inFigure 2-2 is IntegralHPI, an HPIserver that is compatible with the OpenHPI RPC protocol and runs as a subsystem within the

    Pigeon Point Shelf Manager. Naturally, IntegralHPI is optimized for AdvancedTCA platforms andfor operation inside the Pigeon Point Shelf Manager.

    Pigeon Point also provides a distribution of the OpenHPI server, as shown on the left inFigure 2-2.In this case, the server framework is provided by the OpenHPI daemon, which implements a plug-in architecture to facilitate a wide range of managed system types, each of which may besupported by a specialized plug-in. The Pigeon Point plug-in is optimized for AdvancedTCAshelves based on the Pigeon Point Shelf Manager.

    http://www.openhpi.org/http://www.openhpi.org/http://www.openhpi.org/http://www.openhpi.org/
  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    17/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 17 January 15, 2013

    Figure 2-2 Overall Architecture of Pigeon Point HPI

    The HPI server options offered by Pigeon Point and shown inFigure 2-2 share the following keycharacteristics:

    Compliance with the current HPI specification, SAI-HPI-B.03.02, which allows compliant HPIapplications to work with any compliant HPI implementation, including both server optionsoffered by Pigeon Point.

    Compliance with the current HPI-to-xTCA Mapping specification, SAIM-HPI-B.03.02-xTCA,which takes advantage of dozens of person-years of effort within the SA Forum to define thebest practices for managing xTCA shelves and specifically AdvancedTCA shelves.Support for the OpenHPI client library and the RPC protocol on which it is based, allowing HPIapplications to interact seamlessly with either or both of the OpenHPI and IntegralHPI servers,typically over a network connection.

    The HPI Client Library (HCL) is, in its C/C++ source code form, largely platform-independent andCPU-independent. It provides the HPI B.03.02 API as well as an integrated implementation of theOpenHPI Remote Procedure Call (RPC) protocol for remote HPI client-server communication. TheHCL is a dynamically linkable library. It can be linked at compile time or loaded during runtime with

    any generic HPI B.03.02 compliant application. It is provided in binary format as a set of Linuxlibraries for Linuxbased applications. The source code of the library is also available.

    An HPI application that is included in Pigeon Point HPI, but not shown explicitly in the diagram, isan SNMP Agent and HPI Management Information Base (MIB). The MIB is the part of the SimpleNetwork Management Protocol (SNMP) architecture that provides the repository for managementdata. The HPI MIB is defined by the SAF and therefore is generic across HPI-managed platforms.This MIB is implemented in Pigeon Point HPI via an SNMP Agent (and especially its subagent,

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    18/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 18 January 15, 2013

    where the MIB is actually implemented). The subagent is an HPI client application and is linkedwith the HPI Client Library. Therefore, it works equivalently with either of IntegralHPI or OpenHPIservers. Please see section7 for more detailed coverage of the Pigeon Point HPI SNMP facility.

    2.2 Pigeon Poin t Integ ralHPI Server

    The Pigeon Point IntegralHPI server has the following characteristics in addition to the features itshares with the Pigeon Point OpenHPI server, as discussed in the previous section:

    It is a native implementation of the Hardware Platform Interface, developed by Pigeon PointSystems;It was designed from the beginning for AdvancedTCA shelves and specifically for compliancewith the SAFs HPI-to-ATCA/xTCA mapping specifications;It is deployed as a shared library within the Shelf Manager, running on the ShMM anddynamically loaded by the Shelf Manager, if enabled by the Shelf Manager configuration file.

    The IntegralHPI shared library provides the main functionality of the HPI B.03.02 service, using aclient/server model of interaction with HPI applications, as summarized above and elaborated

    below. It communicates with the Shelf Manager using direct function calls and communicates withHPI client applications via the OpenHPI Remote Procedure Call (RPC) protocol.Figure 2-3 showsthe control flow for HPI calls made by a client application.

    Figure 2-3 Control Flow with Pigeon Point IntegralHPI Server

    A client application interfaces with the IntegralHPI shared library through the OpenHPI client library,calling functions defined in the HPI specification. For each function call, the OpenHPI client librarysends an RPC request packet to the IntegralHPI shared library. The IntegralHPI shared libraryexecutes the request, making synchronous and direct function calls to the Shelf Manager, asnecessary, in the process of doing that. One HPI call can potentially invoke several Shelf Managercalls (two calls in the example ofFigure 2-3). After that, the IntegralHPI shared library sends an

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    19/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 19 January 15, 2013

    OpenHPI RPC response packet back to the OpenHPI client library. The OpenHPI client libraryaccepts the response packet and returns the function call result to the client. The client applicationis aware only of the top level function calls and returns; the other components and message flowsin the figure are invisible to the client.

    Because the IntegralHPI shared library communicates with the Shelf Manager via direct functioncalls, it must run on the same Shelf Management Mezzanine (ShMM) where the Shelf Managerexecutes.

    IntegralHPI takes advantage of the mature Shelf Manager redundancy infrastructure to implementredundancy of HPI services as well. The active instance of the Shelf Manager (including theIntegralHPI subsystem) provides updates to the standby instance via the Hardware and SoftwareRedundancy Interfaces (HRI and SRI), so that, if necessary, the standby instance can take overresponsibility for the shelf at any time.

    The IntegralHPI facility requires additional memory resources over those needed for executing just

    the Shelf Manager. Therefore, IntegralHPI is supported only on ShMMs with 64 MB of Flash and128 MB of RAM.

    2.3 Pigeon Po int OpenHPI Server

    The Pigeon Point OpenHPI server has the following characteristics in addition to the features itshares with the Pigeon Point IntegralHPI server, as discussed in section2.1:

    It is based on OpenHPI (http://www.openhpi.org);

    It has been adapted by Pigeon Point for AdvancedTCA shelves and specifically forcompliance with the SAFs HPI-to-xTCA mapping specification;

    It uses the Pigeon Point plug-in, which was originally based on OpenHPI IPMI Direct plug-in, but which has been heavily modified for mapping specification compliance and tuned towork with the Pigeon Point Shelf Manager.

    Figure 2-2 shows how the OpenHPI server fits within the Pigeon Point HPI architecture; its keyelements are the OpenHPI daemon and the Pigeon Point plug-in it hosts.

    The OpenHPI daemon provides the main functionality of the HPI B.03.02 service, using aclient/server model of interaction with HPI applications (as elaborated below).

    The Pigeon Point plug-in provides the specific interface from the generic layer of OpenHPI toAdvancedTCA shelves, especially those managed by the Pigeon Point Shelf Manager. Featuressupported by the plug-in include sensors, FRU inventory data and hot swapping, plus system event

    log management. It is provided in binary format as a Linux library (libpigeonpoint.so).

    Figure 2-4 shows the flow control for HPI calls made by a client application in conjunction with thePigeon Point OpenHPI server.

    http://www.openhpi.org/http://www.openhpi.org/http://www.openhpi.org/http://www.openhpi.org/
  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    20/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 20 January 15, 2013

    Figure 2-4 Control Flow with Pigeon Point OpenHPI Server

    The client application interfaces with the OpenHPI daemon through the OpenHPI client library,calling functions defined in the HPI specification. For each function call, the OpenHPI client librarysends an RPC request packet to the OpenHPI daemon. The OpenHPI daemon passes the requestto the currently selected plug-in, where one HPI call can potentially invoke several plug-in calls (twocalls in the example ofFigure 2-4.The Pigeon Point plug-in translates function calls into RMCPmessages and sends them to the Shelf Manager synchronously. The RMCP responses are

    translated back into plug-in return values. The OpenHPI client library accepts the OpenHPI RPCresponse packet from the OpenHPI daemon and returns the function call result to the client. Theclient application is aware only of the top level function calls and returns; the other components andmessage flows in the figure are invisible to the client.

    The Pigeon Point plug-in uses IPMI Software ID 87h when interacting with the Shelf Manager overRMCP. This makes it possible to distinguish the plug-in from other RMCP clients. The table belowshows some well-known IPMI Software IDs. (See section 5.5 in the IPMI 2.0 specification forbackground on IPMI Software IDs.)

    Table 3 Well-known IPMI Software IDs

    IPMISOFTWARE IDVALUE RMCPCLIENT THAT USES IT

    5Fh The HPM.2 specification defines this IPMI Software ID tobe used by an ATCA Shelf Manager when establishingLAN sessions with IPM Controllers in the Shelf formanagement purposes.

    81h It is likely that most RMCP clients use this IPMI SoftwareID. Here is the list of such clients known to Pigeon Point:

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    21/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 21 January 15, 2013

    Pigeon Point plug-in before the 3.2.0.0 release

    IPMI Direct plug-in

    IPMI Tool85h Pigeon Point RMCPTA tool87h Pigeon Point plug-in as of the 3.2.0.0 release

    Because the OpenHPI daemon interacts with the Shelf Manager via RMCP, the daemon canexecute on any platform that has Ethernet connectivity with the Shelf Management Mezzanine(ShMM) where the Shelf Manager executes. In particular the daemon can reside either:

    directly on the ShMM, sharing compute resources with the Shelf Manager or

    on some other platform that is linked to the ShMM via Ethernet.

    In either case, communication with the Shelf Manager occurs via RMCP. The SNMP agent andsubagent are assumed to reside with the OpenHPI daemon, either on-ShMM or off-ShMM.Locating the OpenHPI facility on-ShMM requires additional memory resources over those neededfor executing just the Shelf Manager. Therefore, the on-ShMM model is supported only on ShMMs

    with 64 MB of Flash and 128 MB of RAM.

    Assuming that the OpenHPI daemon is executing off-ShMM, its operation is unaffected by a ShelfManager switchover. However, the current daemon is not designed to support redundancy at all.Therefore, if the daemon goes down for any reason, a new instance must be started andrediscovery of the shelf is necessary. Neither the publicly posted OpenHPI distribution nor thePigeon Point distribution have any provisions for redundant daemon configurations.

    Furthermore, Pigeon Point Systems does not recommend that users attempt to set up suchredundant daemon configurations on their own. One known problem is with shelves containingFRUs for which activation and deactivation is the responsibility of the System Manager. In such a

    configuration, both daemons (under the direction of HPI-based System Manager applications) cantry to perform concurrently hot swap management, with unpredictable results.

    2.4 Differences between Pigeon Po int OpenHPI and

    IntegralHPI

    Pigeon Point OpenHPI and IntegralHPI provide the same SAI-HPI-B.03.02 interface. Howeverthere are some differences between them. The table below summarizes the main items ofdifference.

    Table 4 Key Differences between Pigeon Point OpenHPI and IntegralHPI

    PIGEON POINT OPENHPI3.2.0.0

    PIGEON POINT INTEGRALHPI

    RecommendedUsage

    Installed on an off-ShMMsystem. Can integrateseveral shelves and severalsubsidiary OpenHPIdaemons and IntegralHPIinstances

    On-ShMM solution for a single shelf.

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    22/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 22 January 15, 2013

    PIGEON POINT OPENHPI3.2.0.0

    PIGEON POINT INTEGRALHPI

    IPv6 Support Supported for connectionsbetween HPI User andOpenHPI daemon.

    Supported for connectionsbetween Pigeon Point plug-in and Shelf Manager (IPv4-mapped IPv6 address).

    Supported.

    Persistent DomainEvent Log

    Domain Event Log can beconfigured to be stored in ahost platform file, makingthem persistent acrossOpenHPI invocations.

    Domain Event Log is not preservedacross shelf power cycles. DomainEvent Log is preserved across ShelfManager switchovers.

    Persistent DomainAlarm Table

    Domain Alarm Table can beconfigured to be stored in an

    host platform file, makingthem persistent acrossOpenHPI invocations.

    Domain Alarm Table is not preservedacross shelf power cycles. Domain

    Alarm Table is preserved across ShelfManager switchovers.

    Domain Event LogCapacity

    Can be configured. 500 HPI Events

    HPI SessionEvent QueueCapacity

    Can be configured. 100 HPI Events

    Memoryconsumption

    On-ShMM Pigeon Point OpenHPI uses about twice the ShMM memorycompared to IntegralHPI.

    Operational

    Performance

    Generally, Pigeon Point OpenHPI is slower compared to IntegralHPI on

    the same hardware platform. However, OpenHPI running on a modernGHz level off-ShMM hardware platform (where Pigeon Point OpenHPItypically runs) is much faster than IntegralHPI running on a ShMM.

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    23/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 23 January 15, 2013

    PIGEON POINT OPENHPI3.2.0.0

    PIGEON POINT INTEGRALHPI

    Initial HPIAccessibility Delay

    The time between startup ofthe Shelf Manager andaccessibility of HPI services

    is substantially longer forOpenHPI, even when it runson a modern off-ShMMhardware platform.The initial HPI accessibilitydelay has been measured atabout 500 seconds for off-ShMM OpenHPI with aShMM-1500R-managed,radial-IPMB-0-based shelf,populated with 11 ATCA

    boards, 43 FRUs (23 of themAMC modules) and 1714IPMI sensors.

    For IntegralHPI in the sameconfiguration, the initial HPI accessibilitydelay was measured at about 50

    seconds.

    SAIM-HPI-B.03.02-xTCASupport

    Supports all mandatorySAIM-HPI-B.03.02-xTCAfeatures.

    Supports all optional SAIM-HPI-B.03.02-xTCA features,except for:Power management

    OEM Event with cause of hotswap state changeFRU Deactivation Control

    Supports all mandatory SAIM-HPI-B.03.02-xTCA features.

    Does not support any optional SAIM-HPI-B.03.02-xTCA features, including:Power managementOEM Event with cause of hot swapstate change

    Slot ResourcesSlot State SensorFRU Activation ControlFRU Deactivation ControlFRU/AMC Power On SequenceInstruments

    RedundancySupport

    Not implemented Implemented using Shelf Managerredundancy framework. ShMMswitchovers are transparent for an HPIapplication.

    Resource IDs Resource IDs are assigned

    dynamically. AssignedResource IDs arepersistently stored in a file,along with the associatedentity path.

    Resource IDs assignments are based

    on a static function of the IPMB addressand FRU Device ID associated with aresource.

    IPMI Event OnlySensors

    Supported. Supported.

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    24/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 24 January 15, 2013

    PIGEON POINT OPENHPI3.2.0.0

    PIGEON POINT INTEGRALHPI

    Pigeon PointExtensions

    Following extensions aresupported:Version Control

    IPMI Command ControlIPMI AMC CommandControlIPMI Self Test DIMIDI DIMIIPMB-0 Address SensorFRU Device ID Sensor

    Following extensions are supported:Version ControlIPMI Command Control

    IPMI AMC Command ControlIPMI Self Test DIMIDI DIMIIPMB-0 Address SensorFRU Device ID SensorShMM FUMI

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    25/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 25 January 15, 2013

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    26/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 26 January 15, 2013

    3 Installation and ConfigurationThe installation and configuration processes for Pigeon Point OpenHPI and for IntegralHPI arecovered separately in the following subsections.

    3.1 Instal l ing and Con f igur in g Pigeon Point OpenHPI

    If your organization has licensed Pigeon Point OpenHPI directly from Pigeon Point, you candownload and install OpenHPI using release notes and scripts posted on a release page thatPigeon Point maintains for your organization. Alternatively, your AdvancedTCA platform suppliermay have delivered your platform with OpenHPI already installed.

    The off-ShMM model for the OpenHPI service (see section2)has been tested with the OpenHPIservice running on the following x86 Linux platforms:

    Red Hat Enterprise Linux 3 and 4

    Debian 4.0Mandriva Linux 2009

    Support for other x86 Linux platforms can be discussed with Pigeon Point on a case bycase basis.

    This section assumes that Pigeon Point OpenHPI is already installed and focuses on configuringthis installation. OpenHPI configuration is controlled by a configuration file that is typically located inthe /etcdirectory.

    The location of the configuration file is communicated to the OpenHPI daemon by either: 1) settingthe following environment variable: OPENHPI_CONF=/etc/openhpi/openhpi.conf

    or 2) using the coption when the OpenHPI daemon is invoked, for example:

    #openhpid -c /etc/openhpi/openhpi.conf

    Please see section4.1 for the details of invoking the OpenHPI daemon.

    The configuration file for the OpenHPI daemon must be located on the same system as theOpenHPI daemon. Each line in the file is either a comment line (starting with #) or a =pair, representing the assignment for the configuration variable. The name and the

    value are separated with the equal sign =.

    For string variables,must be a quoted string (e.g., "This is a string.").For numeric variables,is a number.

    One group of configuration variables applies to the operation of the overall OpenHPI daemon;these are listed inTable 5,along with the type of each variable.

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    27/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 27 January 15, 2013

    Table 5 Global Configuration Variables

    GLOBAL CONFIGURATIONVARIABLE

    TYPE DESCRIPTION

    OPENHPI_LOG_ON_SEV String Defines the lowest severity level that an eventmust have to be logged in the domain event log.The possible values (in order of decreasingseverity) are: CRITICAL,MAJOR,MINOR,INFORMATIONAL, OK, DEBUG.

    OPENHPI_ON_EP String Defines the entity path on which the application isrunning. This path is returned by theSaHpiResourceIdGet()function call.

    OPENHPI_EVT_QUEUE_LIMIT Number Specifies the number of events that are allowedin the session event queue. Default is 10000. Azero value means no limit is enforced.

    OPENHPI_DEL_SIZE_LIMIT Number Defines the maximum size of the domain event

    log. Default is 10000. A zero value means nolimit is enforced.

    OPENHPI_DEL_SAVE String Specifies whether the domain event log is storedon disk or not.

    OPENHPI_DAT_SIZE_LIMIT Number Specifies the maximum size of the domain alarmtable. A zero value means no limit is enforced.

    OPENHPI_DAT_USER_LIMIT Number Specifies the maximum number of alarm entriesof type user allowed in the domain alarm table. Azero value means no limit is enforced.

    OPENHPI_DAT_SAVE String Specifies whether the Domain Alarm Table isstored on disk or not.

    OPENHPI_PATH String Provides a colon-delimited list of the directoriesthat contain OpenHPI plug-in libraries. Thedefault value is hard coded at build time.

    OPENHPI_VARPATH String Specifies the directory used for OpenHPI datastorage and in which the domain event log, thedomain alarm table and the UID (Unique IDsused for resources) mappings are saved. Thedefault value is hard coded at build time.

    Here is an example set of global configuration variable settings for the OpenHPI daemon:

    OPENHPI_LOG_ON_SEV = "DEBUG"OPENHPI_ON_EP = "{ADVANCEDTCA_CHASSIS,1}"OPENHPI_EVT_QUEUE_LIMIT = 100OPENHPI_DEL_SIZE_LIMIT = 1000OPENHPI_DEL_SAVE = "NO"OPENHPI_DAT_SIZE_LIMIT = 0OPENHPI_DAT_USER_LIMIT = 0OPENHPI_DAT_SAVE = "NO"OPENHPI_PATH = "/lib:/usr/lib"OPENHPI_VARPATH = "/var/log"

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    28/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 28 January 15, 2013

    The configuration file for the OpenHPI daemon (typically,/etc/openhpi/openhpi.conf) also includes configuration information for the PigeonPoint plug-in, or more precisely the handler for that plug-in. It includes definitions of variables thatare specific to the plug-in, such as how the plug-in should communicate with the Shelf Manager

    (always via the LAN interface, in this case) and what IP address, port number and authenticationmechanism to use. Definitions of the plug-in specific variables follow the same syntax as the globalvariables (described above). All plug-in specific variables are of type String.

    Table 6 Plug-in Handler Configuration Variables

    PLUG-IN HANDLER CONFIGURATIONVARIABLE

    TYPE DESCRIPTION

    entity_root String Specifies where in the entity hierarchy the entitiesdiscovered by this handler should be placed.The default is empty.

    ShelfEntityLocation String Specifies entity location for the xTCA ShelfResource this handler represents.The default is 1.

    name String Defines the access method used by the plug-in tointeract with the managed platform(s) and musthave the value lanor rmcpfor use withAdvancedTCA shelves managed by the PigeonPoint Shelf Manager.

    addr String Defines the destination RMCP IP address. Thedefault is 192.168.0.2.The plug-in now supports IPv6 addresses. Even

    though RMCP is an IPv4-only service, it doessupport IPv4-mapped IPv6 addresses, so IPv6 issupported with such addresses.

    port String Indicates the destination RMCP port. Default is623.

    auth_type String Indicates the Authentication Type for the RMCPsession. It can be none,md5or straight.

    auth_level String Specifies the Privilege Level for the RMCPsession. It can be operatoror admin.

    username String Provides the username for the RMCP session.The default is empty string. When an RMCP

    session with the Shelf Manager is opened withthis default username, the Shelf Managerdisables automatic activation and deactivation ofFRUs, deferring to the OpenHPI subsystem forthat function. When the session is terminated,automatic activation/deactivation of FRUs isrestored.

    password String Provides the password for the RMCP session.

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    29/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 29 January 15, 2013

    PLUG-IN HANDLER CONFIGURATIONVARIABLE

    TYPE DESCRIPTION

    The default is empty string.logflags String Specifies the logging mode. If it is set to the

    empty string (""), logging is turned off. If it is set

    to file, logging is output to the file defined bythe logfilevariable. If it is set to stdoutorstderr, logging is output to standard output orstandard error output respectively. If it is set tofile stdoutor file stderr, loggingis output both to the file and to either standardoutput or standard error output. RMCP data islogged if the rmcpflag is included in the string.

    logfile String Specifies the prefix of the .logfile whereOpenHPI daemon actions and error conditions

    are logged. The default value is openhpi.logfile_max String Specifies the maximum size of the logfile, inkilobytes. If this size is reached, the overflowinglog is renamed to .bakand anew empty logfile is created. A zero value meansthere is no limit.

    NoAutoInsertExtract String If this variable is set to yes, automatic activation/ deactivation of resources is disabled.

    UseCachedSdrs String If this variable is set to yes, the Pigeon Pointplug-in tries to get SDRs from the internal PigeonPoint Shelf Manager SDR Repository cache

    rather than from the owning IPM controller (whichwould typically occur over IPMB-0). See section8.5 for more details. The default value is no.

    EventNotificationEnabled String If this variable is set to yes, the Pigeon Pointplug-in subscribes to asynchronous eventnotifications from the Shelf Manager and usesthese notifications instead of polling the SystemEvent Log on the Shelf Manager. If this variable isset to falseor no, the Pigeon Point plug-indoes not use asynchronous event notificationsand constantly polls the System Event Log on the

    Shelf Manager for new events. The default valueis false.

    IpmiConnectionTimeout String The number of milliseconds that the plug-in waitsfor a response from an IPM controller, beforeresending an IPMI command. The default value is3000.

    EnableSelOnAll String If set to true, an event log will be provided forevery IPMC that provides a SEL. The default

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    30/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 30 January 15, 2013

    PLUG-IN HANDLER CONFIGURATIONVARIABLE

    TYPE DESCRIPTION

    value is false.SpecialEntityForAmcCarrier

    String If set to true, the special HPI entitySAHPI_ENT_SUBBOARD_CARRIER_BLA

    DEwill be used for an AMC Carrier resource.The default value is true.

    Here is an example plug-in handler section (referenced as a stanza in the OpenHPI context) forthe Pigeon Point plug-in within the OpenHPI configuration file:

    Thepluginstanza tells OpenHPI that there is a plug-in file of the name libpigeonpointin the OPENHPI_PATHthat it should load on startup.

    The handlerstanza creates an instance of an OpenHPI plug-in. A handlerstanza must

    include an entity_rootdefinition to instruct OpenHPI where in the entity hierarchy theentities discovered by the handler should go. There may be several handler stanzas with the samename; each of them creates a separate instance of the named plug-in.

    plugin libpigeonpointhandler libpigeonpoint {

    entity_root = "{SAHPI_ENT_RACK,1}{SAHPI_ENT_SUBRACK,2}"ShelfEntityLocation = "42"

    name = "lan"

    addr = "192.168.1.168"#default RMCP IP address

    port = "623"#default RMCP port

    auth_type = "md5"# auth.type can be "none", "md5" or "straight"

    auth_level = "admin"# privilege level can be "operator" or "admin"

    username = ""# default OpenHPI username

    password = ""# default OpenHPI password

    logflags = "file"# "" means logging off; also use "file stdout"

    logfile = "openhpi"# log files are openhpi.log and openhpi.bak

    logfile_max = "1024"# log file openhpi.log will be renamed to openhpi.bak

    NoAutoInsertExtract = "no"# disable automatic activation and deactivation of resources

    UseCachedSdrs = "no"# set it to "yes" to use Cached Device SDR repository

    EventNotificationEnabled = "false"# set it to "false"|"no" to disable Event Notification

    }

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    31/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 31 January 15, 2013

    The environment variableVALIDRMCPADDRoverrides any setting of the addrplug-in handlerconfiguration variable in a Pigeon Point plug-in stanza. It is designed for using OpenHPI in the on-ShMM model. In this model, when the OpenHPI daemon starts up, the RMCP channel may be notconfigured yet by Shelf Manager. The start up scripts delay starting the OpenHPI daemon until the

    RMCP channel is up and properly configured and the environment variableVALIDRMCPADDRisset for the OpenHPI daemon. This scheme is supported only for the on-ShMM model and a singlehandler instance.

    Previous versions of OpenHPI for the on-ShMM model used the /etc/openhpi.confconfiguration file. Starting from this release, the configuration file is/etc/openhpi/openhpi.conf, which is consistent with the off-ShMM model and naturalto the open source OpenHPI. For backward compatibility,/etc/openhpi.confismaintained as a symbolic link to /etc/openhpi/openhpi.conf.

    Starting with OpenHPI 2.12.0, the OpenHPI daemon can manage only a single HPI domain. On the

    other hand, the OpenHPI client l ibrary can be configured for access to multiple domains and aseparate configuration file is introduced for the OpenHPI client library. The location of this file ishardcoded to /etc/openhpi/openhpiclient.conf. This file includes a separatedomain description stanza for each configured HPI domain. Each domain is identified by a numbercalled the domain identifier. The default domain has the identifier 0 and is always considered tobe present, even it there is no stanza describing it. Definitions of the domain handler variablesfollow the same syntax as the global variables (described above).

    Table 7 Domain Handler Configuration Variables

    DOMAIN HANDLER

    CONFIGURATIONVARIABLE

    TYPE DESCRIPTION

    host String Specifies the hostname or IP address of the OpenHPI daemoninstance that manages the domain

    port String Specifies the TCP port that the OpenHPI daemon instancethat manages domain uses for incoming RPC requests. If thisparameter is omitted, the default port number 4743 is used

    entity_root String Specifies entity path suffix to be added to all entities exposedin this domain. Supported since OpenHPI 2.17.

    An example of a three-domain configuration is provided below. There are two explicitly defined

    domains in addition to the implicitly defined default domain. The domains with identifiers 1 and 2represent different shelves. Consistent with the minimum definition for this configuration, there aretwo handlerstanzas for the same plug-in.

    domain default {host = "localhost"

    }domain 1 {

    host = "192.168.1.1"

  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    32/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 32 January 15, 2013

    }domain 2 {

    host = "192.168.1.2"port = "1234"

    }

    Domain relationships (parent/child/peer) are not currently supported in OpenHPI.

    In the public OpenHPI, starting from OpenHPI 2.17, the domain auto-insertion timeout can be set inthe configuration file. Be default this parameter is read-only and its value is zero. In Pigeon PointOpenHPI 3.2.0.0, the situation is the same, except that the auto-insertion timeout is read-write.

    3.2 Ins tal l ing and Config urin g Integ ralHPI

    Pigeon Point IntegralHPI is supplied as a part of a special Shelf Manager RFS, in which thenecessary IntegralHPI components are included. As a result, a separate installation is not usuallyneeded for IntegralHPI.

    However, a separate Shelf Manager configuration variable ENABLE_INTEGRALHPIis definedthat allows the user of the Shelf Manager control whether IntegralHPI is enabled. By default, thevalue of this variable is TRUEin the RFS images that contain IntegralHPI, and FALSEin the RFSimages that do not contain IntegralHPI. A user can, for example, set this variable to FALSEtodisable IntegralHPI functionality temporarily.

    The configuration of IntegralHPI is mainly performed as part of normal Shelf Managerconfiguration, using the Shelf Manager configuration files /etc/shelfman.conf.*. Thefollowing table lists the Shelf Manager configuration parameters that are relevant to IntegralHPI.

    Table 8 IntegralHPI Configuration Variables for the Pigeon Point Shelf Manager

    NAME TYPE DEFAULT DESCRIPTIONENABLE_INTEGRALHPI Boolean FALSE This variable determines whether the Shelf

    Manager exposes the Hardware PlatformInterface (HPI) defined by the ServiceAvailability Forum (www.saforum.org).Setting this variable to TRUEenables theseparately licensed IntegralHPIimplementation within the Shelf Manager,and makes the Shelf Manager accessiblevia HPI.

    INTEGRALHPI_DEFAULT_AUTO_EXTRACT_TIMEOUT Number 0 This variable defines the seconds portionof the default auto-extraction timeout value

    for all exposed HPI resources.A negative value causes the timeout to beset to SAHPI_TIMEOUT_BLOCK.

    http://www.saforum.org/http://www.saforum.org/http://www.saforum.org/http://www.saforum.org/
  • 7/23/2019 HPI_UG_3_2_0_0_and_3_1_0_20130115

    33/172

    Pigeon Point HPI User Guide

    Release 3.2.0.0/3.1.0 33 January 15, 2013

    NAME TYPE DEFAULT DESCRIPTIONINTEGRALHPI_DEFAULT_AUTO_EXTRACT_TIMEOUT_MSEC

    Number 1 This variable defines the millisecondsportion of the default auto-extractiontimeout value for all exposed HPIresources.

    INTEGRALHPI_DEFAULT_AUTO_INSERT_TIMEOUT Number 0 This variable defines seconds portion ofthe default auto-insertion timeout value for

    this IntegralHPI domain.A negative value causes the timeout to beset to SAHPI_TIMEOUT_BLOCK.

    INTEGRALHPI_DEFAULT_AUTO_INSERT_TIMEOUT_MSEC

    Number 1 This variable defines the millisecondsportion of the default auto-extractiontimeout value for this IntegralHPI domain.

    INTEGRALHPI_DOMAIN_ID Number 1 The HPI domain ID of the current shelf;used to differentiate, on the HPI clientlevel, among multiple shelves whose Shelf

    Managers support HPI.INTEGRALHPI_SHELF_ENTITY_LOCATION

    Number 1 The entity location for AdvancedTCA ShelfHPI Resource; used to differentiate, on theHPI client level, among multiple shelveswhose Shelf Managers support HPI.

    RUN_HPI_SNMP_SUBAGENT Boolean FALSE Setting this variable to TRUEcausesIntegralHPI to run OpenHPI SNMPSubagent after initial discovery is done.

    SPECIAL_HPI_ENTITY_FOR_AMC_CARRIER

    Boolean FALSE Setting this variable to TRUEcausesIntegralHPI to assign the HPI entitySAHPI_ENT_SUBBOARD_CARRIE

    R_BLADEto ATCA AMC Carriers.Otherwise, an ATCA AMC Carrier isassigned the HPI entitySAHPI_ENT_PICMG_FRONT_BLADE.

    IntegralHPI listens for incoming HPI requests (in the form of OpenHPI RPC requests) on allnetwork interfaces of the Shelf Manager. The port number used is 4743 decimal; this numbercannot be reconfigured. IntegralHPI first attempts to open IPv6-capable sockets to listen for servicerequests from clients. In the ShMM context, such sockets are also capable of handling requests viaIPv4. Therefore, if IPv6-capable sockets are successfully established,