(Add tracker bug) |
(joe taking over from sandro) |
||
Line 6: | Line 6: | ||
== Owner == | == Owner == | ||
* Name: Cloud SIG / [[User: | * Name: Cloud SIG / [[User:jzb|Joe Brockmeier]] | ||
* Email: | * Email: jzb@fedoraproject.org | ||
* Release notes owner: <!--- To be assigned by docs team [[User:FASAccountName| Release notes owner name]] <email address> --> | * Release notes owner: <!--- To be assigned by docs team [[User:FASAccountName| Release notes owner name]] <email address> --> | ||
<!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo) | <!--- UNCOMMENT only for Changes with assigned Shepherd (by FESCo) | ||
Line 17: | Line 17: | ||
== Current status == | == Current status == | ||
* Targeted release: [[Releases/21 | Fedora 21 ]] | * Targeted release: [[Releases/21 | Fedora 21 ]] | ||
* Last updated: 2014- | * Last updated: 2014-07-10 | ||
<!-- After the change proposal is accepted by FESCo, tracking bug is created in Bugzilla and linked to this page | <!-- After the change proposal is accepted by FESCo, tracking bug is created in Bugzilla and linked to this page | ||
Bugzilla states meaning as usual: | Bugzilla states meaning as usual: |
Latest revision as of 15:11, 10 July 2014
Smaller Cloud Image Footprint
Summary
Shrink the footprint of our cloud images as far as reasonably, and within the given timeframe, possible.
Owner
- Name: Cloud SIG / Joe Brockmeier
- Email: jzb@fedoraproject.org
- Release notes owner:
- Product: All Cloud Images (duh!)
- Responsible WG: Cloud
Current status
Detailed Description
Space is precious in the cloud, therefore the Cloud SIG tries to keep the images' footprint as small as reasonably possible. Several approaches are ongoing in this regard and while they are hardly worth mentioning individually, the combined effort is going to be noticeable.
Benefit to Fedora
- Official Fedora cloud images will become smaller.
- Possibility to install Fedora with a smaller footprint.
Scope
As mentioned, there's really various changes that are quite independent of each other but share the common goal.
- Proposal owners:
- Investigate replacing network initscripts with systemd-networkd (if it is ready; ifcfg-* file compatibility is probably a requirement)
- Make sure only just kernel-core, not kernel and kernel-drivers, is installed (see the related change: Changes/Modular_Kernel_Packaging_for_Cloud).
- Make sure only the packages really required are installed.
- Use %packages --excludedocs to to skip installing docs.
- Use %packages --instLangs= to ship only just English.
- Tweak the locales (in %post) so that local-archive ships with only just English instead of all languages. We might skip this one if it seems too much tinkering. Work is going on to have proper support for this in the glibc package (see rhbz#156477 - also, c#30 shows the necessary tinkering).
- Other developers:
- Packages that are part of any cloud image (and in the long run all packages) must use %license instead of %doc for the license file(s) so we can skip shipping docs but still ship licenses. (See separate change Changes/Use license macro in RPMs for packages in Cloud Image
- cloud-init should no longer require python-cheetah and needs to be refactored (upstream) accordingly.
- Release engineering: Nothing.
- Policies and guidelines:
- Packaging Guidelines need to reflect that license files must be tagged with %license instead of %docs (FPC#411).
Upgrade/compatibility impact
N/A because upgrading cloud images is not supported (as they target cattle, not pets). Still, none of the changes should affect (unsupported) upgrade attempts.
How To Test
Launching one of the Fedora Cloud Images in your favorite IaaS cloud:
- Make sure everything still works as expected, particularly anything you've done regularly with the official F20 cloud image.
- Verify cloud-init functionality works expected, doing anything you've ever done with any cloud-init enabled image - or anything the upstream docs say you can do.
- Verify NetworkManager, dhclient, etc. are missing but network connectivity is up and running (i.e. was set up properly through DHCP).
- Verify kernel and kernel-drivers are missing.
- Verify docs are missing but license files are present.
- Verify non-English languages are missing.
User Experience
The same as always, except less space is used on freshly launched images, and therefore less updates become necessary which also results in less ingress being used.
Dependencies
Hopefully none other than mentioned in Scope.
Contingency Plan
Every single change is independent of the others, so if doesn't make it, the others still can. Single changes that don't meet the deadline are simply dropped and changes reverted to the previous configuration if necessary.
- Blocks release? No
- Blocks product? No
Documentation
N/A, but the hints mentioned in Scope should suffice to get the idea.
Release Notes
TODO: add notes accordingly to implemented changes.
All Fedora cloud images have now been optimized for a smaller footprint to save resources.