Creating an HP IRF stack with HP 5820-24XG-SFP+ Switches

The developtment of the Intelligent Resilient Framework (IRF) goes back to H3C, a joint venture between Huawai and 3COM. With the acquisition of 3COM by HP, IRF capable products were integrated into the HP Networking product portfolio.

What is IRF?

IRF is a software-based solution to connect multiple switches together and create a logical switching devices. The idea behind IRF is to create a logical device with one control and multiple data planes. This simplifies the management and sometimes eliminates the need for technics like (R/M)STP, XRRP/ VRRP/ HSRP or similar, to create layer 2 or layer 3 redundancy for cases like a switch failure. This depends on the requirements of the network design. The master switch in an IRF stack updates the forwarding and routing table for all devices in the stack. If it fails, another switch in the stack is elected. The switches are connected with multiple high speed links (10 GbE in most cases, some entry-level switches allow 1 GbE) and use a daisy chain or ring topology. If a switch fails, even if it’s the master of the stack, the stack will operate continuously. The time for a failover is < 50ms (Source). There are another advantage: Because the stack acts like a single switch, you can use switch-assisted teaming or trunking between IRF stacks or between servers and IRF stacks.

Patrick Terlisten/ vcloudnine.de/ Creative Commons CC0

Patrick Terlisten/ vcloudnine.de/ Creative Commons CC0

These are two HP 5820-24XG-SFP+ Switches, each with 24x 10 GbE SFP+ and 4x 1 GbE copper ports. I used these switches recently in a project as Top-of-Rack (ToR) switches. Two switches in each rack form an IRF stack. Each IRF stack is connected to the local datacenter core-switch, as also to the core-switch in the second datacenter.2x 0,65m DAC cables are used for the IRF interconnect between two switches. If needed, additional links can be added between the switches.

Patrick Terlisten/ vcloudnine.de/ Creative Commons CC0

Patrick Terlisten/ vcloudnine.de/ Creative Commons CC0

How to create a IRF stack?

Let’s start with the first switch. As you can see at the blue Cisco serial cable, I was connected with a serial connection to the switch. Please note, that this post only describes the configuration of the IRF stack. First of all, we have to switch to the system view. Otherwise we’re not allowed to enter configuration commands.

<TOR-01>sys
System View: return to User View with Ctrl+Z.

Usually renumbering is not needed for the first switch. Check the display at the front. The picture above was taken after the renumbering. The second switch already shows the ID 2.

[TOR-01]irf member 1 renumber 1
Warning: Renumbering the member ID may result in configuration change or loss. Continue?[Y/N] y
[TOR-01]quit

Save the config and reboot the switch.

<TOR-01>save

The current configuration will be written to the device. Are you sure? [Y/N]: y
Please input the file name(*.cfg)[flash:/config.cfg]
(To leave the existing filename unchanged, press the enter key):
Validating file. Please wait....
The current configuration is saved to the active main board successfully.
Configuration is saved to device successfully.

<TOR-01>reboot
Start to check configuration with next startup configuration file, please wait.........DONE!
This command will reboot the device. Continue? [Y/N]: y

After the reboot, enter the system view again.

<TOR-01>sys
System View: return to User View with Ctrl+Z.

Now we have to set the priority for this switch. 32 is the highest priority, 1 is the lowest priority. A member with higher priority is more likely to be the master in a IRF stack.

[TOR-01]irf member 1 priority 32

Before we can bind the physical interfaces to the IRF ports, we have to disable them. We will enable them after the binding procedure.

[TOR-01]interface Ten-GigabitEthernet 1/0/1
[TOR-01-Ten-GigabitEthernet1/0/1]shutdown
[TOR-01-Ten-GigabitEthernet1/0/1]quit

[TOR-01]interface Ten-GigabitEthernet 1/0/2
[TOR-01-Ten-GigabitEthernet1/0/2]shutdown
[TOR-01-Ten-GigabitEthernet1/0/2]quit

Create the first IRF port and bind a physical interface to it.

[TOR-01]irf-port 1/1
[TOR-01-irf-port1/1]port group interface Ten-GigabitEthernet 1/0/1
Info: You are recommended to save the configuration after completing your IRF configuration; otherwise, it may be lost after system reboot.
[TOR-01-irf-port1/1]quit

Repeat the steps for the second IRF port.

[TOR-01]irf-port 1/2
[TOR-01-irf-port1/2]port group interface Ten-GigabitEthernet1/0/2
Info: You are recommended to save the configuration after completing your IRF configuration; otherwise, it may be lost after system reboot.
[TOR-01-irf-port1/2]quit

After the binding operation, we have to enable the physical interfaces again.

[TOR-01]interface Ten-GigabitEthernet 1/0/1
[TOR-01-Ten-GigabitEthernet1/0/1]undo shutdown
[TOR-01-Ten-GigabitEthernet1/0/1]quit

[TOR-01]interface Ten-GigabitEthernet 1/0/2
[TOR-01-Ten-GigabitEthernet1/0/2]undo shutdown
[TOR-01-Ten-GigabitEthernet1/0/2]quit

Enable the IRF port configuration…

[TOR-01]irf-port-configuration active

… and to save the config.

[TOR-01]quit
<TOR-01>save

The current configuration will be written to the device. Are you sure? [Y/N]:y
Please input the file name(*.cfg)[flash:/config.cfg]
(To leave the existing filename unchanged, press the enter key):
flash:/config.cfg exists, overwrite? [Y/N]:y
Validating file. Please wait....
Saved the current configuration to mainboard device successfully.
Configuration is saved to device successfully.

With this last step, the configuration for the first switch is finished. Now we have to repeat the configuration steps for the second switch. Switch to the system view.

<TOR-02>sys
System View: return to User View with Ctrl+Z.

Renumber the switch. Because this is the second switch we need to renumber it from 1 to 2.

[TOR-02]irf member 1 renumber 2
Warning: Renumbering the member ID may result in configuration change or loss. Continue?[Y/N] y
[TOR-02]quit

Save the config and reboot the switch. The reboot is necessary to change the ID.

<TOR-02>save

The current configuration will be written to the device. Are you sure? [Y/N]: y
Please input the file name(*.cfg)[flash:/config.cfg]
(To leave the existing filename unchanged, press the enter key):
Validating file. Please wait....
The current configuration is saved to the active main board successfully.
Configuration is saved to device successfully.

<TOR-02>reboot
Start to check configuration with next startup configuration file, please wait.........DONE!
This command will reboot the device. Continue? [Y/N]: y

Switch again to the system view.

<TOR-02>sys
System View: return to User View with Ctrl+Z.

Change the priority to a value < 32. In this case I chose 31.

[TOR-02]irf member 2 priority 31

Disable the physical interfaces before the IRF port binding operation. Please note, that the interface numbering begins with 2 instead of 1. It’s Ten-GigabitEthernet 2/0/1, not Ten-GigabitEthernet 1/0/1. This is a direct consequence of the switch renumbering.

[TOR-02]interface Ten-GigabitEthernet 2/0/1
[TOR-02-Ten-GigabitEthernet2/0/1]shutdown
[TOR-02-Ten-GigabitEthernet2/0/1]quit

[TOR-02]interface Ten-GigabitEthernet 2/0/2
[TOR-02-Ten-GigabitEthernet2/0/2]shutdown
[TOR-02-Ten-GigabitEthernet2/0/2]quit

As with the first switch, it’s now time to create the IRF ports, and bind the physical interfaces to it.

[TOR-02]irf-port 2/1
[TOR-02-irf-port2/1]port group interface Ten-GigabitEthernet 2/0/1
Info: You are recommended to save the configuration after completing your IRF configuration; otherwise, it may be lost after system reboot.
[TOR-02-irf-port2/1]quit

And the second IRF port.

[TOR-02]irf-port 2/2
[TOR-02-irf-port2/2]port group interface Ten-GigabitEthernet2/0/2
Info: You are recommended to save the configuration after completing your IRF configuration; otherwise, it may be lost after system reboot.
[TOR-02-irf-port2/2]quit

After the binding of the physical interfaces to the IRF ports, we need to enable the physical interfaces…

[TOR-02]interface Ten-GigabitEthernet 2/0/1
[TOR-02-Ten-GigabitEthernet2/0/1]undo shutdown
[TOR-02-Ten-GigabitEthernet2/0/1]quit

[TOR-02]interface Ten-GigabitEthernet 2/0/2
[TOR-02-Ten-GigabitEthernet2/0/2]undo shutdown
[TOR-02-Ten-GigabitEthernet2/0/2]quit

… enable the IRF port configuration…

[TOR-02]irf-port-configuration active

… and save the config.

[TOR-02]quit
<TOR-02>save

The current configuration will be written to the device. Are you sure? [Y/N]: y
Please input the file name(*.cfg)[flash:/config.cfg]
(To leave the existing filename unchanged, press the enter key):
flash:/config.cfg exists, overwrite? [Y/N]: y
Validating file. Please wait....
Saved the current configuration to mainboard device successfully.
Configuration is saved to device successfully.

At this point, you can cross-connect the switches. You have to connect Ten-GigabitEthernet 1/0/1 to Ten-GigabitEthernet 2/0/2, and Ten-GigabitEthernet 1/0/2 to Ten-GigabitEthernet 2/0/1. This is important!

The second switch will join the stack, and it will reboot. If the second switch has a different firmware version, the firmware is updated after the join and the switch will reboot again. After the completion of the reboot, you can check the IRF configuration with the command “display irf topology”.

[TOR-01]display irf topology
                           Topology Info
 -------------------------------------------------------------------------
               IRF-Port1                IRF-Port2
 Switch    Link       neighbor      Link       neighbor    Belong To
 1         UP         2             UP         2           <mac-address of Switch 1>
 2         UP         1             UP         1           <mac-address of Switch 1>