Host blocking—a feature of application error handling—prevents Symphony from repeatedly trying to run a service on a host that does not have adequate hardware or software resources. You can configure host blocking to take effect on timeout or exit for each of your services, or when a service throws an exception or sends a specific return code.
When host blocking takes effect, Symphony creates a blocked host list for the application with which the service is associated. A host that appears on the blocked host list can no longer be used by the application until you intentionally unblock the host, or the application is re-registered or disabled and enabled again.
The following illustrations show the benefits of using the host blocking feature.
Host blocking triggers automatically when the session manager version on the management host does not match the service instance manager version on the comput host.
A service method times out, exits or crashes, throws an exception, or returns certain control codes.
The service instance manager does not communicate with the session manager before the configured timeout period expires (controlled by the startUpTimeout value).
The service instance does not communicate with the service instance manager before the configured timeout period expires (controlled by the setting for the Register method actionOnSI attribute).
Symphony DE blocks slots—not hosts—under the same conditions that trigger host blocking for a production grid. Symptoms of blocked slots include fewer resources than expected or no resources serving your application, more tasks in the PENDING state, a slower rate of workload completion, and clients that hang. You can check for blocked slots by looking in the ssm.hostname.app_name.log file and searching for WARN or ERROR messages about blocked hosts. If you see a blocked host message, one or more slots might be blocked. You can unblock slots by disabling and then enabling the application or by restarting the DE cluster.
Host blocking is enabled in the application profile for each application. You can configure host blocking at the service instance manager level, the service instance level, or both.
You can monitor host blocking through the Platform Management Console (PMC), the command line, and through the Symphony log files located in the logs directory of SOAM_HOME. You can also trap SNMP events to receive notifications when a service triggers the system to block a host.
From the Platform Management Console: Symphony Workload > Monitor Workload > application_name > Blocked Hosts |
||