gnt-cluster upgrade currently does a series of 9-11 scans where it sequentially sshs into each node in turn. For anything but tiny clusters, the time spent in ssh is the majority of the update time (24 of a ~36 min total on a large, slow test cluster). The ssh steps are:
1. verify upgrade dir exists 2. verify upgrade dir exists again! 3. daemon-util stop-all 4. symlink lib directory -- uses rm, then ln if GNU ln isn't available 5. symlink share directory -- uses rm, then ln in GNU ln isn't available 6. run ensure-dirs script 7. daemon-util start-all 8. redist daemon-util stop-all 9. redist daemon-util start-all This patchset removes the unnecessary step 2, and fuses steps 4-6 into one step. On the slow test cluster, this reduces the total upgrade time to ~28 min, a savings of ~22%. Brian Foley (3): Remove redundant verify version in cluster upgrade Join symlink commands during cluster upgrade Do symlinks & ensure-dirs together in cluster upgrade lib/client/gnt_cluster.py | 95 +++++++++++++++++++++++++++++------------------ 1 file changed, 58 insertions(+), 37 deletions(-) -- 2.8.0.rc3.226.g39d4020
