[Bug 2045708] Re: [SRU] Improve debian/99-gce.rules to set schedulers based on disk
Chloé Smith
2045708 at bugs.launchpad.net
Tue Feb 13 12:45:44 UTC 2024
** Description changed:
[SRU]
=======
[Overview]
We should reduce the scope of the `udev` rules in d/99-gce.rules, and
change the I/O scheduler. The previous `udev` rule was drastically
reducing the bootspeed on SSD backed instances, as the `noop` scheduler
is pretty old school.
I did pretty extensive experimentation and found that swapping to "none"
in this file yielded the best results on HDD instances (>10s improvement
in boot time on average). Letting SSD's just roll independently also
seemed to give the best speeds.
[ Impact ]
* If an end user launches an Ubuntu instance in GCE backed with a HDD, no
scheduler will be used natively.
* This package is provided upstream by Google themselves, and is part of a
collection of tools and that ensures that the Ubuntu images published to GCE
run properly on the platform.
[Test Case]
When this package lands in -proposed, the following will happen:
* an image built with this package from -proposed will be built for GCE and
published in the `ubuntu-os-cloud-image-proposed` project
* The image will go through CPC's own CTF framework, and assuming it passes
will be handed to the Google team to perform their own verification.
* This can also be done independently with a PPA hooked into CPC's bootstrap
scripts (kajiya's PPA here: [0])
If all the testing indicates that the image containing the new package
- is good, verification is considered finished. [Additional Information]
+ is good, verification is considered finished.
+
+ [ Regression potential / Where problems could occur ]
+
+ * This may affect users who are already modifying the file (d/99-gce.rules) via
+ a startup script on boot [2]; there have been no edits since 2017 so it's a
+ pretty well established file.
+
+ * There could also be issues if a non-rotating disk is interpreted as a rotating
+ disk (and vice-versa). This shouldn't be a big problem in practice though, as
+ the named scheduler is "none" which works well on both types anyway.
+
+
+ [Additional Information]
This bug is used to track the release of this new version for all the
supported suites, as per the policy mentioned here [1].
[0]: https://launchpad.net/~kajiya/+archive/ubuntu/gce-compute-image-packages
[1]: https://wiki.ubuntu.com/google-compute-engine-oslogin-Updates
+ [2]: https://cloud.google.com/compute/docs/instances/startup-scripts/linux
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gce-compute-image-packages in
Ubuntu.
https://bugs.launchpad.net/bugs/2045708
Title:
[SRU] Improve debian/99-gce.rules to set schedulers based on disk
Status in gce-compute-image-packages package in Ubuntu:
Fix Released
Status in gce-compute-image-packages source package in Focal:
Fix Committed
Status in gce-compute-image-packages source package in Jammy:
Fix Committed
Status in gce-compute-image-packages source package in Mantic:
New
Bug description:
[SRU]
=======
[Overview]
We should reduce the scope of the `udev` rules in d/99-gce.rules, and
change the I/O scheduler. The previous `udev` rule was drastically
reducing the bootspeed on SSD backed instances, as the `noop`
scheduler is pretty old school.
I did pretty extensive experimentation and found that swapping to
"none" in this file yielded the best results on HDD instances (>10s
improvement in boot time on average). Letting SSD's just roll
independently also seemed to give the best speeds.
[ Impact ]
* If an end user launches an Ubuntu instance in GCE backed with a HDD, no
scheduler will be used natively.
* This package is provided upstream by Google themselves, and is part of a
collection of tools and that ensures that the Ubuntu images published to GCE
run properly on the platform.
[Test Case]
When this package lands in -proposed, the following will happen:
* an image built with this package from -proposed will be built for GCE and
published in the `ubuntu-os-cloud-image-proposed` project
* The image will go through CPC's own CTF framework, and assuming it passes
will be handed to the Google team to perform their own verification.
* This can also be done independently with a PPA hooked into CPC's bootstrap
scripts (kajiya's PPA here: [0])
If all the testing indicates that the image containing the new package
is good, verification is considered finished.
[ Regression potential / Where problems could occur ]
* This may affect users who are already modifying the file (d/99-gce.rules) via
a startup script on boot [2]; there have been no edits since 2017 so it's a
pretty well established file.
* There could also be issues if a non-rotating disk is interpreted as a rotating
disk (and vice-versa). This shouldn't be a big problem in practice though, as
the named scheduler is "none" which works well on both types anyway.
[Additional Information]
This bug is used to track the release of this new version for all the
supported suites, as per the policy mentioned here [1].
[0]: https://launchpad.net/~kajiya/+archive/ubuntu/gce-compute-image-packages
[1]: https://wiki.ubuntu.com/google-compute-engine-oslogin-Updates
[2]: https://cloud.google.com/compute/docs/instances/startup-scripts/linux
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gce-compute-image-packages/+bug/2045708/+subscriptions
More information about the foundations-bugs
mailing list