[Bug 1037727] Re: support adding region/availability to mirror selection
Scott Moser
smoser at ubuntu.com
Thu Nov 8 19:24:54 UTC 2012
** Description changed:
+
+ === Begin SRU Information ===
+ [Impact]
+ * Currently, local mirror selection is done specifically for EC2 instances
+ in the DataSource code. cloud-init will select
+ 'us-east-1a.ec2.archive.ubuntu.com' as a mirror in EC2. However, in other
+ clouds, there is no way to get a local mirror selected.
+
+ The change here is to allow mirrors to be specified in configuration based
+ on templates that can include the "availability-zone". This makes the EC2
+ code generic and allows a cloud provider to have cloud-init select a local
+ mirror simply by presenting 'availability-zone' in the metadata.
+
+ With this change, if a cloud provider puts 'region-1.mycloud' into their
+ datasource metadata as the availability-zone, cloud-init will select
+ a mirror at 'region-1.mycloud.clouds.archive.ubuntu.com'. By default,
+ Canonical's dns will return that as a wildcard for archive.ubuntu.com,
+ but the information is availble now in the dns request to specify
+ the address of a local mirror.
+
+ [Test Case]
+ * This is really a feature backport. There is no specific bug here.
+ However, the behavior change is easily seen by running an instance on a
+ openstack cloud. Previously, the mirror selected would be
+ 'archive.ubuntu.com'. With the change in place, the mirror will be:
+ 'nova.clouds.archive.ubuntu.com' as by default openstack provides the
+ string 'nova' as the availability-zone.
+
+ [Regression Potential]
+ * Mirror selection will change. It is possible that users relying on
+ the old behavior will have to modify something.
+
+ [Other Information]
+ * We want this behavior brought back to 12.04 so that LTS images can "just work"
+ to select a local mirror simply by a change in DNS records. It will enable
+ large clouds to provide local mirrors easily.
+
+ === End SRU Information ===
+
currently, the ec2 datasource has some code that selects the mirror location by looking at the availability-zone.
I think this is generally a pretty good idea. I'd like to extend that to other datasources, and not limit to ".ec2.archive.ubuntu.com".
The goal would be to basically check for a mirror at:
- <availability-zone>[.<cloud>][dns-subdomain]
+ <availability-zone>[.<cloud>][dns-subdomain]
dns subdomain would default to '.cloud.archive.ubuntu.com'.
if the datasource provided the 'cloud' value, we'd use that, but
otherwise just use availability-zone.
This would fit in with what we're currently doing on ec2, but would extend to others.
I'd just treat the "cc-direction-[0-9]" availability-zones specially, to know that this is an ec2 one. Then basically append ".ec2" in that case.
--
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to cloud-init in Ubuntu.
https://bugs.launchpad.net/bugs/1037727
Title:
support adding region/availability to mirror selection
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cloud-init/+bug/1037727/+subscriptions
More information about the Ubuntu-server-bugs
mailing list