Showing results for 
Search instead for 
Did you mean: 

How to Build an ICX Stack via Stack Interactive-Setup or Zero-Touch Provisioning (ZTP)


Hey all,

I want to take a look at building a stack from scratch. There are many ways to build, edit and manipulate stack units. Extensive details can be found in your respective stacking guide. In this example, I will be using 8095 software and that corresponding stacking guide can be found here.  I will be taking three ICX7150s and stacking them together. I will show two methods: Stack Interactive-Setup and Zero-Touch Provisioning (ZTP). Stack Interactive-Setup is probably the most common method and allows for granular control of the stack formation by the user. ZTP generally yields results similar to stack-interactive setup when accepting all defaults. I should note ZTP requires clean (default configuration) units, while stack-interactive setup can deal with this scenario.

With both methods, I generally recommend the following prerequisites:

  • Blank configurations. You can do this by issuing ‘erase start’ and then reloading without saving the configuration. I should note the process used here would be the same if you were taking one standalone unit with configuration and adding additional units. For the sake of simplicity, all units here are going to be starting with no configuration.
  • All units running the exact same software (‘show version’ and ‘show flash’ to check this)
  • Units cabled together using valid stack ports (these can be found in the stacking guide and vary by model)

Building a stack via Stack Interactive-Setup

The first thing we want to do is enable stacking on our active unit:

ICX#conf t
ICX(config)#stack enable
Success - Enable stacking. This unit actively participates in stacking

Now let’s enter the interactive stack setup. We have multiple options here, but option 3 is the most versatile and we will use that:


ICX#stack interactive-setup
You can abort stack interactive-setup at any stage by <ctrl-c>
0: quit
1: change stack unit IDs
2: discover and convert new units (no startup-config flash) to members
3: discover and convert existing/new standalone units to members
2&3 can also find new links and auto-trunk or convert chain(s) to ring.
Please type your selection:3


The software will now probe all candidate stack ports and show you the stacking chain/ring that it has discovered. Once you accept the stacking topology by pressing ‘y’, you will also need to accept the proposed stacking IDs. You will be given a default option. In this case, it has proposed stack IDs 2 and 3. We can just hit ‘Enter’ on these lines and it will use the default proposals. The software will then show you a graphic depiction of how the stack will look should you use the selected options. The last portion of the interactive setup will ask you if you want to accept the given topology. If all looks well, go ahead and enter ‘y’ to proceed. For the sake of formatting, here is a screenshot showing this whole process:


Image_ images_messages_61b0cf5f49c6e64e2a500614_74138d782b57b12096a26811428b92f7_1-b0647c35-ef09-4e67-800f-8fc228de45a8-46734060.png


At this time, the additional units will reload and join the stack. The time required will vary based on model, but once the new units have joined the stack, go ahead and issue a ‘show stack’ to confirm they have joined:


Image_ images_messages_61b0cf5f49c6e64e2a500614_7c1b6fe861d472033936e190e9a3edf7_2-181e20ae-258c-43e8-a314-838fa3c29f8f-47657581.png


Take note of the ‘S’ and ‘D’ notations next to the units. These stand for Dynamic and Static. Dynamic units are newly added and that means we need to save our configuration! Go ahead and ‘wr mem’ and these will change to static:


Image_ images_messages_61b0cf5f49c6e64e2a500614_a430adba72fdb27e1d1c4c43e4941b21_3-eb161204-e998-44d0-ae3e-bb920b0159ec-48581102.png
We have a three unit stack! Now let's take a look at how to do the same thing using Zero-Touch Provisioning (ZTP). 
Building a stack using Zero-Touch Provisioning (ZTP)

The first thing we want to do is enable stacking on our active unit:

ICX#conf t
ICX(config)#stack enable
Success - Enable stacking. This unit actively participates in stacking

Now let's go ahead and turn on the Zero-Touch Provisioning feature:

ICX(config)#stack zero-touch-enable

The software will now probe candidate stack ports, build a stacking topology and reload the new units into the stack. This process can take some time and will vary by model. For the sake of formatting, here is what the process would look like via a screenshot:

Image_ images_messages_61b0cf5f49c6e64e2a500614_579fadf287f99982793df81f95d280d5_ZTP-8796d8ea-c91f-41a6-a6fb-dd1bbc1c7809-751132785.PNG

Once the new units have joined the stack, go ahead and issue a ‘show stack’ to confirm they have joined. Output should be the same as seen earlier in this post.

We now need to turn off the ZTP feature and save the configuration:

ICX(config)#no stack zero-touch-enable
ICX(config)#wr mem

That's it! Hopefully this post was helpful. Let me know if you have any questions/concerns. 

Ben Beck, RCNA, Principal Technical Support Engineer

New Contributor

Hey Ben,

What are the benefits of stacking using the interactive setup rather than the zero-touch?

Hey Blake, 

ZTP is certainly an option. It generally will yield results that are the same as doing stack-interactive setup and just accepting all defaults. The downside being less control and the feature needs to be toggled on and off as it should not be enabled all the time. ZTP also requires the new stack members to be completely clean (default) configs while interactive setup can deal with this. With that said, it is a great feature and certainly warrants discussion here. Thanks for bringing it up. Maybe I will edit this post to include ZTP or possibly do a separate one. Stay tuned!

Ben Beck, RCNA, Principal Technical Support Engineer

Hey Blake. I have added ZTP to the post. Thanks again for the input!

Ben Beck, RCNA, Principal Technical Support Engineer