fcagent(1m)
fcagent - FibreVault Status/Configuration daemon
As shipped in IRIX 6.5. First release of IRIX 6.5.
NAME fcagent - FibreVault Status/Configuration daemon SYNOPSIS fcagent fcagent-options-file DESCRIPTION fcagent is a daemon which allows communication with attached FibreVault enclosures; status is collected and re-configuration is allowed. The low-level transport protocol is the industry standard SES (SCSI-3 Enclosure Services). The top-level transport is via RPC to allow for remote system monitoring and control. See fccli(1M) for details. The fcagent is normally started automatically during boot if fcagent is chkconfig'ed on. Three processes are started for each instance of fcagent; the backend polling thread which handles polling the FibreVault enclosures for status, the frontend RPC thread which is responsible for communication with user interfaces like fccli, and an event handler thread which handles FRU status change events. Each event results in a user configurable callout shell script being executed. These scripts are user customizable. OPTIONS The fcagent-options-file is provided for customizing certain aspects of fcagent operation. This file normally resides at /etc/config/fcagent.options. The contents of the file is a list of customizable variables and their values. PollPeriod Specifies the time, in seconds, between successive polls of a particular FibreVault enclosure. Status change detection is not interrupt driven so status changes will not be detected until the next poll period. The default value is 60. FlashPeriod Specifies the "flash-period", in 1/10ths seconds, pertaining to the fccli flash command. The default value is 5. PreRemovalCallout Specifies the pathname of the script to be executed just prior to performing a fccli remove or bypass command. The default value is /usr/lib/fcagent/preremove.CO. PostRemovalCallout Specifies the pathname of the script to be executed immediately following the performance of a fccli remove or bypass command. The default value is /usr/lib/fcagent/postremove.CO. PostInsertionCallout Specifies the pathname of the script to be executed immediately following the performance of a fccli insert or unbypass command. The default value is /usr/lib/fcagent/postinsert.CO. StatusChangedCallout Specifies the pathname of the script to be executed following a FRU status change. The default value is /usr/lib/fcagent/statchanged.CO. DebugLevel Specifies the "verbosity" of fcagent. The default value is 0. CONFIGURATION OF EVENT CALLOUT SCRIPTS The fcagent event handler executes one or more callout scripts in response to a FRU status change or user initiated reconfiguration. Each time a script is executed, 9 arguments are passed to it which a user can use to customize said scripts. For example, the StatusChangedCallout script can be modified to send mail to a system administrator's chatty pager should a fault be detected. The arguments are as follows: 1 - host name A character string specifying the name of the host machine where the FRU status change was detected. 2 - callout type A character string specifying the callout type. The possible values are INFO, RECONFIG and FAILURE. The types can be viewed in increasing priority of importance. The INFO type is used when the FRU status change is informational and little or no system administrator intervention is needed. An example of an informational state change is a disk FRU transitioning from not present to OK following the insertion of of a previously absent disk drive. The RECONFIG type is used following a configuration change which may be of interest to the system administrator. An example of a reconfiguration state change is a disk FRU transitioning from OK to bypassed following the execution of a fccli bypass command. The FAILURE type is used when system administrator intervention is needed due to an unexpected FRU failure. 3 - time stamp A character string specifying the time at which the status change occurred. 4 - channel ID A numerical character string specifying the channel number on which the state change was detected. 5 - enclosure ID A numerical character string specifying the FibreVault enclosure number on which the state change was detected. Is only specified for the case of the StatusChangedCallout. It is set to -1 for other callouts. 6 - FRU type A character string specifying the type/class of FRU for which the status change is being reported. Possible values are DISK (for disk FRUs), PS (for power supply FRUs), FAN (for fan FRUs), and LCC (for Link-Control-Card FRUs). 7 - FRU ID A numerical character string specifying the ID of the FRU which underwent the state change. Possible values are 0-9 for disk FRUs, 0-1 for power supply FRUs, 0 for fan FRUs, and 0 for LCC FRUs. 8 - State transition from state A character string specifying the from state of the FRU state transition. Possible values are OK, OFF, FAILED, NOT-PRESENT, BYPASSED, and PEER-FAILED. Is only specified for the case of the StatusChangedCallout. Is set to -1 for other callouts. 9 - State transition to state A character string specifying the to state of the FRU state transition. Possible values are OK, OFF, FAILED, NOT-PRESENT, BYPASSED, and PEER-FAILED. Is only specified for the case of the StatusChangedCallout. Is set to -1 for other callouts. EXAMPLES The following is an example of a StatusChangedCallout C-shell script which may be used to send mail to a system administraot following the detection of a FRU failure. #! /bin/csh -f # # If the status change is a failure, send mail to system # administrator. # set TMP="/tmp/statchanged_$$" if ("$2" == FAILURE) then echo "$6 #$7 in enclosure $5 on channel $4 on host $1 FAILED at $3" > $TMP Mail -s "FRU Failure" root@alpha.centauri.com < $TMP /bin/rm -f $TMP endif FILES /usr/bin/fcagent /etc/config/fcagent.options /etc/init.d/fcagent SEE ALSO fccli(1M), chkconfig(1M)