1. In a distributed computing system comprising a storage topology and which includes one or more sets of machine nodes having access to one or more shared storage devices, a computer implemented method for dynamically re-defining the storage topology as conditions relating to one or more storage devices at one or more machine nodes change, the method comprising: identifying at least one set of machine nodes having access to a plurality of shared storage devices; installing at a first node of the set a global storage topology manager (STM); installing at one or more other nodes of the set a local STM; as conditions relating to one or more of the shared storage devices change, one or more of the local STMs sending information about the changed conditions to the global STM; dynamically aggregating at the global STM the information received from the local STMs as the changed conditions occur; and from the aggregated information dynamically constructing at the global STM a storage topology representation of the distributed computed system which reflects the changed conditions, the storage topology representation comprising a topology map of the storage devices in the distributed system, the storage topology representation including path information indicating which nodes are connected to which of the plurality of shared storage devices and including type and speed information for each of the plurality of shared storage devices indicated as connected to each node; wherein the storage topology representation is constructed by: initializing a global topology to empty, for each entry in a local shared storage devices container received from a machine node, determining which of the each entries are unique, when an entry is unique, inserting the unique entry into a global container with a machine ID of a machine node that sent a local shared storage device container, and when an entry is not unique, updating an entry for that shared storage device in the global container to include a machine node that sent the local shared storage device container.