Skip to content
Snippets Groups Projects
  1. Mar 18, 2011
    • Apollon Oikonomopoulos's avatar
      Shared block storage support · 5279c6a6
      Apollon Oikonomopoulos authored
      
      This patch introduces basic shared block storage support.
      
      It introduces a new storage backend, bdev.PersistentBlockDevice, to
      use as a backend for shared block storage. The new bdev requires a new
      BLOCKDEV_DRIVER_MANUAL constant with the value "manual" and uses it as
      the first part of the block device unique_id.
      
      A new disk template, DT_BLOCK is introduced as well and added to
      DTS_EXT_MIRROR and DTS_MAY_ADOPT. Also added DTS_MUST_ADOPT constant
      and use it to check for the presence of the adopt keyword during LU
      invocation. We enforce the /dev/disk limitation upon adoption, but we
      allow block devices to reside anywhere under /dev.
      
      This is very basic support and includes no storage manipulation (provisioning,
      resizing, renaming) which will have to be implemented through a "driver"
      framework.
      
      Signed-off-by: default avatarApollon Oikonomopoulos <apollon@noc.grnet.gr>
      [iustin@google.com: slight changes to bdev.py]
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      5279c6a6
    • Apollon Oikonomopoulos's avatar
      Core shared file storage support · 96ba7552
      Apollon Oikonomopoulos authored
      
      This patch introduces core file storage support, consisting of the following:
      
      A configure-time switch for enabling/disabling shared file storage
      support and controlling the shared file storage location:
      --with-shared-file-storage-dir=.  Shared file storage configuration is then
      available as _autoconf.ENABLE_SHARED_FILE_STORAGE and
      _autoconf.SHARED_FILE_STORAGE_DIR and there is a cluster-wide ssconf
      key named "shared_file_storage_dir" for changing the file location.
      
      A new disk template named "sharedfile" (DT_SHARED_FILE), using
      ganeti.bdev.FileStorage.
      
      Auxiliary functions in lib/config.py to handle shared file storage.
      
      Signed-off-by: default avatarApollon Oikonomopoulos <apollon@noc.grnet.gr>
      [iustin@google.com: small style fixes]
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      96ba7552
  2. Feb 25, 2011
  3. Jan 20, 2011
  4. Jan 13, 2011
    • Iustin Pop's avatar
      Fix growing of DRBD disks · 6d33a6eb
      Iustin Pop authored
      
      Patch 03941a26 made disk growth VG-aware, but the code has a bug: it
      only works for LD_LV disks, and not LD_DRBD. To fix it, we add a
      generic function to compute the per-VG growth requirements, and switch
      to using that instead of manual build.
      
      Furthermore, since the function _CheckNodesFreeDiskPerVG always takes
      its input from this new function or _ComputeDiskSizePerVG, we change
      the latter to always return a dict (possibly empty), instead of either
      a dict or None. This makes the types more consistent.
      
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      6d33a6eb
  5. Jan 11, 2011
  6. Jan 07, 2011
  7. Dec 14, 2010
  8. Dec 13, 2010
  9. Dec 08, 2010
  10. Dec 06, 2010
  11. Dec 02, 2010
    • Dmitry Chernyak's avatar
      Make rpc.call_lv_list() VG-aware · 84d7e26b
      Dmitry Chernyak authored
      
      Changes to backend.GetVolumeList():
      - now accepts a list of VGs instead of one VG
      - returns LV names in the form "vg_name/lv_name"
      
      Corresponding changes are done in: VerifyDisks, VerifyNode,
      LUCreateInstance (for both disk creation and adoption cases)
      
      Now the syntax
      "gnt-instance add ... --disk N:adopt=LV_NAME,vg=VG_NAME"
      as was described earlier in the man page works.
      
      Signed-off-by: default avatarDmitry Chernyak <dmi.chernyak@gmail.com>
      [iustin@google.com: QA changes for reserved LVs, style fixes and a few
       extra error checks, reviewed by hansmi/rn]
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      84d7e26b
  12. Nov 29, 2010
  13. Nov 22, 2010
  14. Oct 27, 2010
  15. Oct 26, 2010
  16. Oct 12, 2010
  17. Oct 05, 2010
  18. Sep 30, 2010
    • Iustin Pop's avatar
      Add two new cluster settings · 546b1111
      Iustin Pop authored
      
      The new variables are:
      
      - a list of hidden OSes, that should not be displayed to the users in
        interactive selection (e.g. reinstall); however, if they are selected, they
        can be used
      - a list of OSes that should be hidden and blocked from install-time selection
      
      The filtering will apply at pure OS name level, not OS+variant level.
      
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      546b1111
    • Iustin Pop's avatar
      Abstract OS name/variant functions · 870dc44c
      Iustin Pop authored
      
      Currently, the computation of the 'pure' name or the variant is
      hardcoded and spread around the functions that need it. This is not
      nice, and in the future we'd spread it even more with more usage of
      variants/pure os names.
      
      This patch abstracts these functions into the OS class, and then
      replaces the hardcoded uses with the new functions.
      
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      870dc44c
  19. Sep 15, 2010
  20. Sep 14, 2010
  21. Sep 06, 2010
  22. Aug 19, 2010
  23. Jul 26, 2010
  24. Jul 08, 2010
  25. Jul 06, 2010
  26. Jun 28, 2010
  27. Jun 23, 2010
  28. Jun 17, 2010
Loading