When an alarm condition relating to a performance goal of a storage system
is detected, a storage management system invokes an N-step lookahead
engine for simulating operation of the storage system when there are
multiple actions that could be taken by the storage system for
eliminating the alarm condition. The N-step lookahead engine generates N
possible system states based on a current state of the storage system.
The N possible states are based on a cost model of each of the multiple
actions. Each cost model is based on an action, a behavior implication of
the action, a resource implication of the action and a transient cost of
the action. An action is selected that generates a system state that
optimizes the stability, a prerequisite and a transient cost of invoking
the selected action.