Traditional stack unit priority

A unit with a higher priority is more likely to be elected active controller. The priority value can be from 0 through 255, with a priority of 255 being the highest. The default priority value assigned to the active controller and standby controller is 128.

You can assign the highest priority value to the stack unit you want to function as the active controller. When you enter a new priority value for a stack unit, that value takes effect immediately but does not affect the current active controller until the next reset. However, with hitless stacking failover enabled, the stack unit with the highest priority will become the active controller in about five minutes.

NOTE
Hitless stacking failover is enabled by default.

You can give your active controller and standby controllers the same priority or different priorities (active controller highest, standby controller second-highest). If the active controller and standby controller have the same priority, when the active controller fails and a standby controller with more members attached takes over, the original active controller is not able to resume its role.

However, if the priority of the active controller is higher than the priority of the standby controller, and if hitless stacking failover is disabled, the old active controller will regain its role and will reset the other units. If hitless stacking failover is enabled, the old active controller (with the higher priority) will become a standby controller, and later, the system will perform an internal switchover to make the old active controller the active controller without resetting other units.

As an example, suppose both the active controller and standby controller have the same priority. If there are more than two units in a stack and the active controller leaves and comes back, it cannot win back the active role because the new active controller now has more members, and the old active controller has none.

If hitless stacking failover is enabled (the default) and there are only two units in a stack, both the old active controller and the new active controller have no members, so the unit with the higher priority wins the active role. If the active and standby controller have the same priority, then the unit with the longer up time wins. If the old active controller stops responding or reloads, the standby controller takes over immediately. When the old active controller reloads and comes back as an active controller, there are two active controllers, which causes the stacks to merge. The old active controller loses the active controller election regardless of its priority because the new active controller is a failover unit (assuming it has an up time of more than 10 minutes and the other unit has an up time of less than three minutes, due to reset). Consequently, the old active controller is reloaded by the new active controller and boots up as a member. Then it is assigned the standby controller role. If the former active controller has a higher priority, the system triggers an internal switchover to make it the new active controller. If the former active controller has an equal priority, it remains the standby controller.

When the active controller and standby controller have the same priority, the system allows a stack switchover as long as hitless stacking failover is enabled. Hitless stacking failover allows the active controller and standby controller to switch roles without traffic interruption.

If you want to assign the same priority to the active controller and the standby controller, you must do so after the stack is formed. This prevents the intended standby controller from becoming the active controller during stack construction.

Changing the priority of a stack member triggers an election that takes effect immediately unless the active controller role changes and hitless stacking failover is disabled, in which case the member priority changes do not take effect until after the next stack reload. With hitless stacking failover, the stack unit with the highest priority becomes the active controller without reload.

To display stack member priority values, enter the show stack command.

ICX7750-48XGC# configure terminal
ICX7750-48XGC(config)# stack unit 3
ICX7750-48XGC(config-unit-3)# show stack
alone: standalone, D: dynamic config, S: static config
ID    Type          Role      Mac Address     Pri  State    Comment
1 S   ICX7750-48XGC active    0000.00eb.a900		128  local    Ready
2 S   ICX7750-48XGC standby   0000.004f.4243		0    remote   Ready, member after reload
3 S   ICX7750-48XGC member    0000.005d.a100		200  remote   Ready, active after reload

Changing the priority of a stack unit

To change the priority value for a stack unit, enter the priority command at the stack unit configuration level. The priority can be a value from 0 through 255, where 255 is the highest priority.

device# configure terminal
device(config)# stack unit 1
device(config-unit-1)# priority 128