1. 24 Aug, 2011 1 commit
  2. 04 Aug, 2011 1 commit
  3. 21 Apr, 2011 1 commit
  4. 14 Apr, 2011 1 commit
  5. 08 Mar, 2011 1 commit
    • Apollon Oikonomopoulos's avatar
      Shared block storage support · b6135bbc
      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>
      b6135bbc
  6. 01 Mar, 2011 1 commit
    • Apollon Oikonomopoulos's avatar
      Core shared file storage support · 4b97f902
      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>
      4b97f902
  7. 25 Feb, 2011 1 commit
  8. 24 Feb, 2011 1 commit
  9. 20 Jan, 2011 1 commit
  10. 13 Jan, 2011 1 commit
    • 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
  11. 11 Jan, 2011 1 commit
  12. 07 Jan, 2011 1 commit
  13. 14 Dec, 2010 1 commit
  14. 13 Dec, 2010 3 commits
  15. 08 Dec, 2010 2 commits
  16. 06 Dec, 2010 1 commit
  17. 02 Dec, 2010 1 commit
    • 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
  18. 29 Nov, 2010 2 commits
  19. 22 Nov, 2010 1 commit
  20. 27 Oct, 2010 1 commit
  21. 26 Oct, 2010 1 commit
    • Iustin Pop's avatar
      Rename node.nodegroup to node.group · f936c153
      Iustin Pop authored
      
      
      In the context of a node, its group has (at least today) only one
      meaning, that is the node's node group. As such, we rename
      node.nodegroup to just node.group.
      
      Note: if we want to keep node in there, it should be at least
      node_group, for consistency with the other node attributes.
      
      Similarly, we rename the OpAddNode nodegroup attribute to group.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      f936c153
  22. 12 Oct, 2010 1 commit
  23. 05 Oct, 2010 1 commit
  24. 30 Sep, 2010 2 commits
    • 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
  25. 15 Sep, 2010 1 commit
  26. 14 Sep, 2010 4 commits
  27. 06 Sep, 2010 1 commit
  28. 19 Aug, 2010 1 commit
  29. 26 Jul, 2010 1 commit
  30. 08 Jul, 2010 1 commit
  31. 06 Jul, 2010 2 commits