Toward Dependency-Agnostic Online Upgrades in Distributed Systems
Traditional approaches for online upgrades of distributed systems rely on dependency tracking to preserve system integrity during and after the upgrade. Because dependency reification can become intractable, we aim to enforce the isolation of the old and new versions during the upgrade. We achieve this by installing the new version in a "parallel universe" - a separate physical or virtual infrastructure that does not communicate directly with the old version. This allows our upgrading middleware to treat the complex IT infrastructure as a black box with unknown hidden dependencies, and to validate the upgrade by crosschecking the outputs of the two universes.