Appliances send events to indicate significant event changes as well as report unusual occurrences. For example, the APK reports Startup Success or Failure events by printing a message to stderr. After startup, you can send additional information or warning messages using the VME event generator utility. The VME event generator utility is a user-mode utility that generates specific events during the appliance boot process and at runtime. For additional information, refer to the vme: Event Generator section.
Key Events
Start completion is the most important and only required event that the appliance must send. On completion and startup, a managed appliance sends a Started Okay message that indicates the appliance has been configured, started successfully, and is now ready to perform its functionality.
If the appliance submits a Start Failed, it indicates the appliance configuration and/or startup has failed and provides a description message with the reason for failure. The reason for the failure is stored in the grid log. You can view the message by using log list or the Log tab on the dashboard.
When using the APK, the APK automatically calls the vme utility, based on the returned status of the AppLogic script. That script, if present, should return an exit code of 0, if the appliance starts correctly or non-zero if the appliance fails. The error message prints to stderr. The APK only sends the last line of text printed by the applogic_appliance script to the grid log. Other text printed to stderr is stored in a temporary file on the appliance boot disk. If the script prints nothing, but returns a failure status, the APK sends a generic Failed to Start text message.
You can use the vme binary to start or fail directly managed appliances. After startup, the vme binary can send additional information or warning messages during the appliance operation. For additional details, refer to the vme: Event Generator section.
Most appliances complete the startup in a predictable and short amount of time. However, sometimes an appliance may need to perform a lengthy procedure that does not fit in the boot timeout or within a predictable amount of time. In this instance, an appliance may request additional time to complete the process. For example: a database server that discovers the database needs repairs or a NAS appliance discovers the files need repairs.
If the appliance needs to execute a lengthy path using outside services, that requirement can require an unpredictable amount of time. To do that, the appliance submits a maintenance event. If issuing the event puts the appliance in maintenance starting mode, the application can provide an almost indefinite amount of time start. In this mode, the appliance provides periodic, incremental updates on the logic and percentage of startup completed at intervals of 1 second and 1 minute until timeout. If the appliance does not indicate progress, the appliance is considered hung or failed and the startup timeouts.
Once the maintenance operation completes, the appliance completes its startup by indicating a Started Successfully or Failed event and provides a reason.
The appliance can send log messages to the grid log when the appliance detects an unusual condition. To send events to the grid log, the appliance uses 'id=log' and the text displays in the VME with the message log_text. The appliance should use this event sparingly and only for important events that could have grid scope impact, such as an IP address conflict. The appliance should not send all sys logs or periodic events to the grid log to keep from clogging the log.
An appliance that detects a catastrophic or highly important event could submit an alert event. This causes a message to display on the dashboard and, if configured, an email sent to the grid administrator. Appliances should send a grid alert for events, such as an IP address conflict, failover events, database verification errors, and stop or recover events.
An appliance should use the grid alert event only in exceptional occurrences and should not indicate periodic events. The grid controller may suppress an appliance that sends too many or too frequent events.
|
Copyright © 2013 CA Technologies.
All rights reserved.
|
|