3.4. Service Operations and States
The following operations apply to both services and virtual machines, except for the migrate operation, which only works with virtual machines.
3.4.1. Service Operations
The service operations are available commands a user may call to apply one of five available actions, defined in the following list.
- enable — start the service, optionally on a preferred target and optionally according to failover domain rules. In absence of either, the local host where clusvcadm is run will start the service. If the original start fails, the service behaves as though a relocate operation was requested (see below). If the operation succeeds, the service is placed in the started state.
- disable — stop the service and place into the disabled state. This is the only permissible operation when a service is in the failed state.
- relocate — move the service to another node. Optionally, the administrator may specify a preferred node to receive the service, but the inability for the service to run on that host (for example, if the service fails to start or the host is offline) does not prevent relocation, and another node is chosen. RGManager attempts to start the service on every permissible node in the cluster. If no permissible target node in the cluster successfully starts the service, the relocation fails and the service is attempted to be restarted on the original owner. If the original owner cannot restart the service, the service is placed in the stopped state.
- stop — stop the service and place into the stopped state.
- migrate — migrate the virtual machine to another node. The administrator must specify a target node. Depending on the failure, a failure to migrate may result with the virtual machine in the failed state or in the started state on the original owner.
3.4.1.1. The freeze
Operation
RGManager can freeze services. Doing so allows users to upgrade RGManager, CMAN, or any other software on the system while minimizing down-time of RGManager-managed services.
It also allows maintenance of parts of RGManager services. For example, if you have a database and a web server in a single RGManager service, you may freeze the RGManager service, stop the database, perform maintenance, restart the database, and unfreeze the service.
3.4.1.1.1. Service Behaviors when Frozen
- status checks are disabled
- start operations are disabled
- stop operations are disabled
- Failover will not occur (even if you power off the service owner)
Important
Failure to follow these guidelines may result in resources being allocated on multiple hosts.
- You must not stop all instances of RGManager when a service is frozen unless you plan to reboot the hosts prior to restarting RGManager.
- You must not unfreeze a service until the reported owner of the service rejoins the cluster and restarts RGManager.
3.4.2. Service States
The following list defines the states of services managed by RGManager.
- disabled — The service will remain in the disabled state until either an administrator re-enables the service or the cluster loses quorum (at which point, the autostart parameter is evaluated). An administrator may enable the service from this state.
- failed — The service is presumed dead. This state occurs whenever a resource's stop operation fails. An administrator must verify that there are no allocated resources (mounted file systems, and so on) prior to issuing a disable request. The only action which can take place from this state is disable.
- stopped — When in the stopped state, the service will be evaluated for starting after the next service or node transition. This is a very temporary measure. An administrator may disable or enable the service from this state.
- recovering — The cluster is trying to recover the service. An administrator may disable the service to prevent recovery if desired.
- started — If a service status check fails, recover it according to the service recovery policy. If the host running the service fails, recover it following failover domain and exclusive service rules. An administrator may relocate, stop, disable, and (with virtual machines) migrate the service from this state.
Note
Other states, such as
starting
and stopping
are special transitional states of the started
state.