• Michael Hanselmann's avatar
    gnt-node migrate: Use LU-generated jobs · b7a1c816
    Michael Hanselmann authored
    Until now LUNodeMigrate used multiple tasklets to evacuate all primary
    instances on a node. In some cases it would acquire all node locks,
    which isn't good on big clusters. With upcoming improvements to the LUs
    for instance failover and migration, switching to separate jobs looks
    like a better option. This patch changes LUNodeMigrate to use
    LU-generated jobs.
    While working on this patch, I identified a race condition in
    LUNodeMigrate.ExpandNames. A node's instances were retrieved without a
    lock and no verification was done.
    For RAPI, a new feature string is added and can be used to detect
    clusters which support more parameters for node migration. The client
    is updated.
    Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
    Reviewed-by: default avatarIustin Pop <iustin@google.com>
    Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
cmdlib.py 443 KB