Uploaded image for project: 'Libcloud'
  1. Libcloud
  2. LIBCLOUD-402

Handle default partitioning change in Rackspace driver

    Details

    • Type: Task
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.14.0-beta3
    • Component/s: Compute
    • Labels:
      None

      Description

      http://developer.rackspace.com/blog/new-features-in-cloud-servers-key-pairs-and-manual-disk-partitioning.html
      http://www.rackspace.com/knowledge_center/article/understanding-and-using-automatic-and-manual-disk-partitioning-in-the-rackspace-cloud
      https://gist.github.com/ckrough/6b1f4de4901fc7965f6c#file-gistfile1-txt-L20-L21

      [16:05] < ckrough> | how are people dealing with the upcoming rackspace default partitioning change? (auto->manual)
      [16:18] < Kami_> | ckrough: i haven't heard anyone talking about it here yet, but should be relatively easy for us to update the
      driver to default to auto to preserve backward compatibility

      Edit: Added more links since the FAQ entry is vague and not really clear.

        Activity

        Hide
        kami Tomaz Muraus added a comment -

        Thanks I've merged the patch into trunk (I've needed to manually fix the conflicts because of the recent docstring style changes).

        This time I also used a patch from github pull request. Next time please use git format-patch so we can preserve the commit author.

        Show
        kami Tomaz Muraus added a comment - Thanks I've merged the patch into trunk (I've needed to manually fix the conflicts because of the recent docstring style changes). This time I also used a patch from github pull request. Next time please use git format-patch so we can preserve the commit author.
        Hide
        jira-bot ASF subversion and git services added a comment -

        Commit de6644d1ef2d15776bf3324a9531c9d80d3a0f59 in branch refs/heads/trunk from Brian Curtin
        [ https://git-wip-us.apache.org/repos/asf?p=libcloud.git;h=de6644d ]

        Issue LIBCLOUD-402: Support OS-DCF:diskConfig

        Rackspace is implementing a change to server creation where disk
        partitioning will not automatically fill the entire disk, leaving the
        option to the user to expand the disk or not. When creating nodes, you
        have the ability to specify if you want a MANUAL disk config, or if you
        want an AUTO disk config. The former results in quicker server creation,
        while the latter results in the entire disk being used.

        This change is exposed via an extension to the OpenStack compute APIs,
        which Rackspace's Cloud Servers are built on top of.
        "OS-DCF:diskConfig" is an attribute to be set in message bodies POST'ed
        to /servers, and is exposed as the "ex_disk_config" parameter to
        OpenStack_1_1_NodeDriver.create_node.

        Signed-off-by: Tomaz Muraus <tomaz@apache.org>

        Show
        jira-bot ASF subversion and git services added a comment - Commit de6644d1ef2d15776bf3324a9531c9d80d3a0f59 in branch refs/heads/trunk from Brian Curtin [ https://git-wip-us.apache.org/repos/asf?p=libcloud.git;h=de6644d ] Issue LIBCLOUD-402 : Support OS-DCF:diskConfig Rackspace is implementing a change to server creation where disk partitioning will not automatically fill the entire disk, leaving the option to the user to expand the disk or not. When creating nodes, you have the ability to specify if you want a MANUAL disk config, or if you want an AUTO disk config. The former results in quicker server creation, while the latter results in the entire disk being used. This change is exposed via an extension to the OpenStack compute APIs, which Rackspace's Cloud Servers are built on top of. "OS-DCF:diskConfig" is an attribute to be set in message bodies POST'ed to /servers, and is exposed as the "ex_disk_config" parameter to OpenStack_1_1_NodeDriver.create_node. Signed-off-by: Tomaz Muraus <tomaz@apache.org>
        Hide
        briancurtin Brian Curtin added a comment -

        Attached is the OS-DCF:diskConfig change from PR #152.

        Show
        briancurtin Brian Curtin added a comment - Attached is the OS-DCF:diskConfig change from PR #152.
        Hide
        kami Tomaz Muraus added a comment -

        Actually, I just reviewed the pull request and you don't need to do that.

        You've put the code in the "_create_args_to_params" method and this should already do the trick.

        This method is also called inside "ex_update", "ex_resize" and "ex_rebuild" method.

        Show
        kami Tomaz Muraus added a comment - Actually, I just reviewed the pull request and you don't need to do that. You've put the code in the "_create_args_to_params" method and this should already do the trick. This method is also called inside "ex_update", "ex_resize" and "ex_rebuild" method.
        Hide
        kami Tomaz Muraus added a comment -

        Yeah, in this case updating an existing pull request should be fine.

        Show
        kami Tomaz Muraus added a comment - Yeah, in this case updating an existing pull request should be fine.
        Hide
        briancurtin Brian Curtin added a comment -

        Eh, I just realized that isn't really complete. It doesn't yet support passing that option for things like rebuilding, resizing, etc. I can either adjust that 152 PR to include all of the places where OS-DCF:diskConfig could go, or handle the other ones separately. Either way, since this is my first PR to the project, I'll wait for some direction before proceeding.

        Show
        briancurtin Brian Curtin added a comment - Eh, I just realized that isn't really complete. It doesn't yet support passing that option for things like rebuilding, resizing, etc. I can either adjust that 152 PR to include all of the places where OS-DCF:diskConfig could go, or handle the other ones separately. Either way, since this is my first PR to the project, I'll wait for some direction before proceeding.
        Hide
        briancurtin Brian Curtin added a comment -

        I created the following pull request to address this: https://github.com/apache/libcloud/pull/152

        Like what Chris was suggesting, this just adds the ability to specify your own OS-DCF:diskConfig via the ex_disk_config parameter to create_node.

        Show
        briancurtin Brian Curtin added a comment - I created the following pull request to address this: https://github.com/apache/libcloud/pull/152 Like what Chris was suggesting, this just adds the ability to specify your own OS-DCF:diskConfig via the ex_disk_config parameter to create_node.
        Hide
        kami Tomaz Muraus added a comment -

        Chris Krough Yeah, I agree.

        We just need to be sure to add note somewhere to the documentation so people won't be surprised by this behavir.

        Show
        kami Tomaz Muraus added a comment - Chris Krough Yeah, I agree. We just need to be sure to add note somewhere to the documentation so people won't be surprised by this behavir.
        Hide
        ckrough Chris Krough added a comment -

        13:00 <@pquerna> Kami_: the method of this working is defaintely adding new UUIDs of iages
        with the same string names
        13:01 <@pquerna> so, people in libcloud commonly do the string find for Ubuntu 12.04 or
        whatevr
        13:01 <@pquerna> would get the new images

        So, this ticket should probably just introduce the ability to specify an OS-DCF:diskConfig of AUTO or MANUAL, but default behavior should do whatever the disk image defaults to. Users who are resolving their image id from an OS string on each deploy may be surprised.

        Show
        ckrough Chris Krough added a comment - 13:00 <@pquerna> Kami_: the method of this working is defaintely adding new UUIDs of iages with the same string names 13:01 <@pquerna> so, people in libcloud commonly do the string find for Ubuntu 12.04 or whatevr 13:01 <@pquerna> would get the new images So, this ticket should probably just introduce the ability to specify an OS-DCF:diskConfig of AUTO or MANUAL, but default behavior should do whatever the disk image defaults to. Users who are resolving their image id from an OS string on each deploy may be surprised.
        Hide
        ckrough Chris Krough added a comment -

        The KB article states:

        On October 1st 2013, we will be adjusting the default Disk Partition option to Manual for our Linux base images as part of our ongoing commitment to align with other OpenStack deployments and increase portability. This change is being rolled out to all of our base Linux images, but you will always retain control to select the Disk Partition option that best meets your needs.

        but, creating your first server with manual partitioning causes Rackspace to automatically generate a notification (via support ticket) which includes the following bit:

        Will this disrupt my automation?
        Beginning on September 1st, new Linux operating system images will be uploaded (with new Image IDs) with their default mode set to "Manual". If you continue to use the existing Image IDs, servers will continue to be built with Disk Config set to "Automatic". We recommend using the latest images (by name) when possible, so you may wish to modify your automation to pass in the "Automatic" disk configuration when building servers if you require greater than a 20 GB root partition.

        It's unclear whether the KB article is saying that they will go back and change existing images.

        Show
        ckrough Chris Krough added a comment - The KB article states: On October 1st 2013, we will be adjusting the default Disk Partition option to Manual for our Linux base images as part of our ongoing commitment to align with other OpenStack deployments and increase portability. This change is being rolled out to all of our base Linux images, but you will always retain control to select the Disk Partition option that best meets your needs. but, creating your first server with manual partitioning causes Rackspace to automatically generate a notification (via support ticket) which includes the following bit: Will this disrupt my automation? Beginning on September 1st, new Linux operating system images will be uploaded (with new Image IDs) with their default mode set to "Manual". If you continue to use the existing Image IDs, servers will continue to be built with Disk Config set to "Automatic". We recommend using the latest images (by name) when possible, so you may wish to modify your automation to pass in the "Automatic" disk configuration when building servers if you require greater than a 20 GB root partition. It's unclear whether the KB article is saying that they will go back and change existing images.

          People

          • Assignee:
            kami Tomaz Muraus
            Reporter:
            kami Tomaz Muraus
          • Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development