Question: Why is it not advisable to have master and the local controllers on different code versions?
Environment:This article applies to all the controller models and OS versions
Let us understand this with a scenario-
Master and local controllers are on the SAME OS version. All APs are terminating on local controller with master controller IP address configured as backup LMS.
In case the local controller goes down, master controller is expected to take over and serve the APs. The APs just bootstrap (does not reboot) and move on to the master controller. There APs resumes service with minimal impact on the production.
Master is on version 18.104.22.168 and local controller is on version 22.214.171.124. All APs are terminating on local controller with master controller IP address configured as backup LMS.
In this case, when the local controller goes down, APs move over to the master controller. However, APs realize that the code on the master controller is different than the one they were previously on. As a result, they upgrade the code and reboot for the new code to take effect. This leads to a longer outage due to the APs going down.
If the network is not too stable, flaps can be considerable causing major intermittent outages due to the APs upgrading/downgrading codes every time they move from one controller to another. Also, if the APs are terminating on the controllers across a WAN, they may take longer than usual to upgrade the code.