Skip to content
This repository has been archived by the owner on Jul 24, 2018. It is now read-only.

Finalize storage CIs required #3

Open
sh8121att opened this issue Feb 16, 2017 · 2 comments
Open

Finalize storage CIs required #3

sh8121att opened this issue Feb 16, 2017 · 2 comments

Comments

@sh8121att
Copy link
Member

Storage configuration on nodes can be quite complex - how much of that complexity do we need to support?

@alanmeadows
Copy link
Contributor

As an initial requirement, we need to support:

  • OS Disk Installation Targeting. When there are several disks, and several types of disks, which disk will receive the operating system and the MBR. MaaS supports this:
        post = {'op': 'set_boot_disk'}
        self.client.post(u"nodes/%s/blockdevices/%s/" % (node_id, id_to_boot), **post).read()

We could offer something simple, such as offering targets based on type, of which maas conveniently tags disks with a physical type, i.e. virtual, rotary, ssd:

        # iterate over the block devices, looking for our tag
        disks = self.get_node_disks(node_id)

        id_to_boot = None
        for disk in disks:
           if tag in disk['tags']:
               id_to_boot = disk['id']

  • Custom Partitioning. This is not infinite in complexity, primarily this means supporting the bulk of the operating system on the targeted disk, with support for separate mounts (e.g. /var) on another disk entity. This is common on compute hosts with local storage where the OS is on /dev/sda, the "VM data" lives on /dev/sdb which is presented by the RAID array as a large SCSI device. We simplify this by delineating between "/" (sda) and "/var" (sdb). For this latter bit, an updated investigation in how this can be achieved in the curtin installer will be necessary (or avoid using it). In the past, it has lacked support for custom partitioning, and thus a curtin "post-step" (within curtin itself) involving something messy like spelling out post commands to do mounting of /dev/sdb, syncing /var to it, removing /var, and fidgeting mounts, prior to first boot was necessary. Today, curtin may natively support this properly. I hope.

@sh8121att
Copy link
Member Author

MaaS supports custom partitioning natively.

alanmeadows pushed a commit that referenced this issue May 24, 2017
Convert the object model to use oslo.versionedobjects (OVO)
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants