With Cinder storage[0] now available and well-tested on cloud-vps, it's time to move forward to widespread adoption. As of today, use of lvm (e.g. via role::labs::lvm::srv) is deprecated in favor of cinder volumes for all local storage outside of the initial 20GB allocated for for standard OS functions.
In support of this move we'll be making several technical changes to our infrastructure over the coming days and weeks:
- Default per-project cinder usage quotas will be increased from 10GB to 80GB
- Instance flavors with variable disk sizes will be removed. Going forward all flavors will have a default local storage size of 20GB regardless of associated cores or RAM.
- The old lvm puppet roles will continue to function as before on legacy VMs. On new VMs the roles will detect the lack of available space for partitioning and report failures[1].
- Instance resizing will be enabled in the Horizon UI. This will allow you to adjust the allocated cores and RAM allocated to a given VM without rebuilding.
Manual setup of Cinder volumes is documented here:
https://wikitech.wikimedia.org/wiki/Help:Adding_Disk_Space_to_Cloud_VPS_inst...
If your workflow involves puppet roles that depend on labs_lvm, you will need to alter both your puppet code and your manual processes. I've provided some helper roles to assist. The simplest[2] is the new 'role::labs::cindermount::srv' which in most cases can be used as a drop-in replacement for role::labs::lvm::srv: once a cinder volume is attached to a VM that role will detect, format, and mount it as /srv. The base class cinderutils::ensure[3] can be reused for other variations on this theme. Please don't hesitate to contact me or other WMCS staff for assistance with puppet patches!
In some cases the default quota of 80GB will be insufficient for a full migration to cinder from the old flavor model, especially if you have made use of the old 'large' or 'xlarge' sizes. When it comes time to to rebuild these larger VMs, please open a quota request ticket and detail what VMs (of what flavors) will be deleted and we will try to be quick and generous with quota expansions to assist in migration.
[0] https://techblog.wikimedia.org/2021/02/05/cinder-on-cloud-vps/
[1] https://gerrit.wikimedia.org/r/c/operations/puppet/+/668567
[2] https://gerrit.wikimedia.org/r/c/operations/puppet/+/669958
[3] https://gerrit.wikimedia.org/r/c/operations/puppet/+/668757
cloud-announce@lists.wikimedia.org