1. 27 Mar, 2015 1 commit
  2. 10 Jun, 2014 1 commit
  3. 06 Jun, 2014 1 commit
    • Luka Blaskovic's avatar
      Add support for KVM multiqueue virtio-net · 47eca2c6
      Luka Blaskovic authored
      This patch adds support for multiqueue virtio-net[1] which sets a number of
      queues (file descriptors) from virtio_net_queues parameter for tap device
      to parallelize packets sending or receiving. Tap devices will be created with
      MULTI_QUEUE (IFF_MULTI_QUEUE) support.
      
      KVM paravirtual nics (virtio-net) are only one which supports this feature.
      Number of queues are limited by kernel tap implementation (currently to 8).
      Instances must manually set number of queues, on Linux using:
      
      ethtool -L ethX combined $queues
      
      Network device options logic is moved to separate method
      _GetNetworkDeviceFeatures which is now properly reused in hotplugging part.
      This also fixes unreported bug when vhost_net parameter is set to true,
      hotplugged network device will be created without "vhost=on" parameter.
      
      [1] http://www.linux-kvm.org/page/MultiqueueSigned-off-by: default avatarLuka Blaskovic <lblasc@znode.net>
      Reviewed-by: default avatarJose A. Lopes <jabolopes@google.com>
      47eca2c6
  4. 13 May, 2014 1 commit
  5. 24 Apr, 2014 1 commit
  6. 22 Apr, 2014 1 commit
  7. 24 Mar, 2014 1 commit
    • Dimitris Aragiorgis's avatar
      kvm: Add migration capabilities as an hvparam · 937ff984
      Dimitris Aragiorgis authored
      Latest QEMU versions support various migration capabilities. Each
      can be enabled/disabled with 'migrate_set_capability' monitor
      command.
      
      Version 1.7.0 defines x-rdma-pin-all, auto-converge, zero-blocks,
      and xbzrle migration capabilities.
      
      Since migration capabilities are more than one, and because hvparams
      accept only strings/integers and not dicts we decide to provide
      the capabilities that should be on via a ":" separated string.
      
      In other words one can use the following to enable xbzrle and
      auto-converge:
      
      -H kvm:migration_caps=xbzrle:auto-converge
      
      IMPORTANT: xbzrle may result to BSOD for instances running
      Windows 2008r8 on drbd.
      
      Update man page of gnt-instance to include the new hvparam.
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Signed-off-by: default avatarThomas Thrainer <thomasth@google.com>
      Reviewed-by: default avatarThomas Thrainer <thomasth@google.com>
      937ff984
  8. 07 Feb, 2014 3 commits
  9. 06 Feb, 2014 1 commit
  10. 24 Jan, 2014 1 commit
  11. 23 Jan, 2014 1 commit
  12. 20 Jan, 2014 1 commit
  13. 13 Jan, 2014 1 commit
  14. 09 Jan, 2014 1 commit
    • Michele Tartara's avatar
      Improve backwards compatibility of Issue 649 fix · 02a6b50a
      Michele Tartara authored
      Commit e6e4ff4c fixed Issue 649 by switching the
      separator for usb_devices from comma to space. That solved the problem with
      the command line, but RAPI was able to work with commas too, so, for backwards
      compatibility we need to keep supporting that as well.
      
      Also, in order to avoid changing the format of the config file, the default
      internal representation is brought back to being comma-based, and it is changed
      at the interface level (CLI or RAPI) before being passed on.
      Signed-off-by: default avatarMichele Tartara <mtartara@google.com>
      Reviewed-by: default avatarKlaus Aehlig <aehlig@google.com>
      02a6b50a
  15. 07 Jan, 2014 1 commit
  16. 16 Dec, 2013 1 commit
  17. 21 Nov, 2013 1 commit
    • Dimitris Aragiorgis's avatar
      Introduce --hotplug-if-possible option · 96ed3a3e
      Dimitris Aragiorgis authored
      This will be useful for an external entity using RAPI that
      wants to modify devices of instances.
      
      The common use case for that is:
      "I want to add a NIC/disk to an instance. If it is running
      then try to hotplug the device. If not, then just add it to config."
      
      Another use case is that if we are unaware of the instance's
      hypervisor: "I want do add a NIC/disk to an instance and if
      its hypervisor is KVM try to hotplug it."
      
      For all those cases just print a warning in CheckPrereq() and
      disable any further hotplug related actions (and let
      modifications take place after reboot).
      
      Add NoHoplugSupport and HotplugIfPossible unittests an modify
      existing by explicitly creating successful RPC results for
      call_hotplug_supported.
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Signed-off-by: default avatarThomas Thrainer <thomasth@google.com>
      Reviewed-by: default avatarThomas Thrainer <thomasth@google.com>
      96ed3a3e
  18. 18 Nov, 2013 1 commit
    • Dimitris Aragiorgis's avatar
      Allow instances to obtain externally reserved IPs · 031d2db1
      Dimitris Aragiorgis authored
      The administrator should be able to assign an externally reserved IP
      to a Ganeti instance manually, if desired. Currently this is not
      supported. External reservations should act as holes in the pool and
      not just as IPs already used by someone outside of Ganeti.
      Automatic allocation with ip=pool will continue to exclude those IPs
      as happens now.
      
      To allow such functionality the administrator needs to pass explicitly
      the desired IP along with the ``--no-conflicts-check`` option, or else
      an error will be produced as happens now.
      
      The aforementioned require the following changes:
      
       - Make IsReserved() to look either in reservations or external ones.
       - Make Reserve() and Release() to use IsReserved() with external
         argument True or False.
       - Pass extra option to ReserveIp() to bypass checking of external reservations
       - Update man pages and design doc for this change.
      
      Furthermore, a side effect of this patch is that it fixes the
      following problem:
      Currently, one could not mark an IP as external if it was already
      reserved (i.e. belonged to an instance). The code would produce a warning
      and fail silently.
      
      Fix config_mock.py so that if network and ip is given then reserve it in
      the pool.
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Signed-off-by: default avatarThomas Thrainer <thomasth@google.com>
      Reviewed-by: default avatarThomas Thrainer <thomasth@google.com>
      031d2db1
  19. 30 Oct, 2013 1 commit
    • Helga Velroyen's avatar
      Remove FIXME + update man pages wrt iallocator · 708f8301
      Helga Velroyen authored
      This patch removes a FIXME regarding the retrieval
      of the disk template for computation of the cluster
      information for the iallocator. After examining the
      code, I figured out that it is actually a quite
      robust way to just check if the disk template is
      available, in particular with respect to extensions
      of the iallocator.
      
      In this context, I also updated the man pages of
      the operations that use the iallocator, because so
      far it was not well documented which disk template
      is considered when more than one instance was
      allocated. The situation is not ideal (the default
      disk template is used), but it is still better than
      in 2.9. where only LVM storage was considered.
      With the implementation of storage pools, it would
      make sense to extend the iallocator protocol to
      include storage information for more than one
      template.
      Signed-off-by: default avatarHelga Velroyen <helgav@google.com>
      Reviewed-by: default avatarKlaus Aehlig <aehlig@google.com>
      708f8301
  20. 29 Oct, 2013 1 commit
  21. 24 Oct, 2013 2 commits
  22. 02 Oct, 2013 2 commits
  23. 26 Sep, 2013 1 commit
  24. 07 Aug, 2013 1 commit
  25. 06 Aug, 2013 1 commit
  26. 30 Jul, 2013 1 commit
  27. 29 Jul, 2013 1 commit
  28. 18 Jul, 2013 1 commit
  29. 15 Jul, 2013 1 commit
  30. 03 Jul, 2013 1 commit
  31. 25 Jun, 2013 1 commit
  32. 11 Jun, 2013 1 commit
  33. 23 May, 2013 2 commits
  34. 30 Apr, 2013 1 commit
  35. 29 Apr, 2013 1 commit