1. 02 Nov, 2011 3 commits
  2. 01 Nov, 2011 2 commits
  3. 28 Oct, 2011 1 commit
  4. 20 Oct, 2011 2 commits
  5. 18 Oct, 2011 1 commit
  6. 07 Oct, 2011 1 commit
  7. 05 Oct, 2011 2 commits
  8. 30 Sep, 2011 3 commits
  9. 29 Sep, 2011 1 commit
    • Andrea Spadaccini's avatar
      Make migration RPC non-blocking · 6a1434d7
      Andrea Spadaccini authored
      
      
      To add status reporting for the KVM migration, the instance_migrate RPC
      must be non-blocking. Moreover, there must be a way to represent the
      migration status and a way to fetch it.
      
      * constants.py:
        - add constants representing the migration statuses
      
      * objects.py:
        - add the MigrationStatus object
      
      * hypervisor/hv_base.py
        - change the FinalizeMigration method name to FinalizeMigrationDst
        - add the FinalizeMigrationSource method
        - add the GetMigrationStatus method
      
      * hypervisor/hv_kvm.py
        - change the implementation of MigrateInstance to be non-blocking
          (i.e. do not poll the status of the migration)
        - implement the new methods defined in BaseHypervisor
      
      * backend.py, server/noded.py, rpc.py
        - add methods to call the new hypervisor methods
        - fix documentation of the existing methods to reflect the changes
      
      * cmdlib.py
        - adapt the logic of TLMigrateInstance._ExecMigration to reflect
          the changes
      Signed-off-by: default avatarAndrea Spadaccini <spadaccio@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      6a1434d7
  10. 28 Sep, 2011 1 commit
  11. 20 Sep, 2011 1 commit
  12. 19 Sep, 2011 1 commit
  13. 06 Sep, 2011 1 commit
  14. 05 Sep, 2011 2 commits
  15. 30 Aug, 2011 1 commit
  16. 25 Aug, 2011 1 commit
  17. 08 Aug, 2011 1 commit
  18. 03 Aug, 2011 2 commits
  19. 29 Jul, 2011 1 commit
  20. 28 Jul, 2011 1 commit
  21. 25 Jul, 2011 1 commit
  22. 13 Jul, 2011 1 commit
  23. 08 Jul, 2011 1 commit
  24. 07 Jun, 2011 1 commit
  25. 24 May, 2011 1 commit
  26. 10 May, 2011 2 commits
  27. 09 May, 2011 1 commit
  28. 02 May, 2011 1 commit
    • Iustin Pop's avatar
      Cluster verify: check for missing bridges · 20d317d4
      Iustin Pop authored
      
      
      Currently cluster verify doesn't check for bridge information; the
      only checks are done at instance create and failover/migrate
      time. This means a cluster that seems healthy will fail creation jobs.
      
      This patch implements a simple verification that all nodes (in the
      entire cluster, so doesn't work well for multi-group) have all the
      required bridges: the default one plus any instance bridge.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      20d317d4
  29. 08 Mar, 2011 2 commits
    • Apollon Oikonomopoulos's avatar
      Shared storage instance migration · 77fcff4a
      Apollon Oikonomopoulos authored
      
      
      Modify LUMigrateInstance and TLMigrateInstance to allow instance migrations for
      instances with DTS_EXT_MIRROR disk templates.
      
      Migrations of shared storage instances require either a target node, or an
      iallocator to determine the target node. If none is given, the cluster default
      iallocator is used.
      
      Locking behaviour: If the iallocator is used, then initially all nodes are
      locked and subsequently only the locks on the source node and the target node
      selected by the iallocator are retained.
      Signed-off-by: default avatarApollon Oikonomopoulos <apollon@noc.grnet.gr>
      [iustin@google.com: small changes in cmdlib.py]
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      77fcff4a
    • Apollon Oikonomopoulos's avatar
      Add bdev_sizes RPC call · 2be7273c
      Apollon Oikonomopoulos authored
      
      
      The bdev_sizes multi-node RPC call returns the sizes of the requested
      block devices on the desired nodes. Its intended use is to verify the
      existence of a block device on a given node for shared block storage
      support.
      
      Block device paths are expected to lie under constants.BLOCKDEV_DIR
      ("/dev/disk" by default), where persistent symlinks for block devices
      are assumed to exist.
      Signed-off-by: default avatarApollon Oikonomopoulos <apollon@noc.grnet.gr>
      [iustin@google.com: small changes in backend.py]
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      2be7273c