[Yum-devel] default yum failover method change request

Jesse Keating jkeating at redhat.com
Wed Nov 28 14:30:34 UTC 2007


For a while now yum's default failover method has been 'roundrobin'.
That is to say when presented with either a list of baseurls or a
mirror list, yum (via urlgrabber) will randomize the list of urls so
that the first one used is "random" and the failover should that one
fail is also "random".  To the best of my knowledge this has worked
well, particularly in the cases of a static list of baseurls or a
static mirror list.  Fedora used to employ these methods.

However, Fedora now has Mirror Manager.  Mirror Manager is able to
create intelligent mirror lists, both pre-randomized and even
intelligently ordered.  What is intelligently ordered?  Lets use the
site local mirror as an example.   Mirror Manager allows you to define
a site local mirror for a given netblock.  This is so that without
changing yum configuration, you can effectively drive all yum traffic
to a local mirror for your site.  However should your mirror not be
reachable for whatever reasons, a set of fallback mirrors should be
provided.  Mirror Manager can provide a list that has the site local
first, and then the randomized list based upon geoip information.
Because the list(s) are pre-sorted, failover method of roundrobin is
not necessary, and in the case of site local mirrors actively harmful.
We have worked around this issue in Fedora 8 (which was the point where
we introduced Mirror Manager pre-ordered lists) by overriding the
failover method in the repo config files to priority (which assumes a
pre-ordered list).

Unfortunately, I realized yesterday that this is not helpful for yum
based/using tools such as pungi, livecd-creator, anaconda, mock,
revisor, etc...  Each of these tools would have to grow the ability to
set the failover method, either globally or on a per repo basis.  This
is something of a usability problem, a somewhat cryptic option to
present to users, and hard to discover the correct "answer".

What I'd like to propose instead is that yum's default failover setting
of roundrobin be changed to priority.  This would allow any yum tool
using Fedora's Mirror Manager to return mirror lists work without
adjusting default config.  This would mean that consumers of static
non-ordered lists would need to override config, however I posit that
in the F8+ world this is not the most common case.  Certainly not for
Fedora.  I'm unaware of what method CentOS uses to generate mirror
lists though, however they would have a good amount of lead time before
this setting would be seen in RHEL6 (RHEL to the best of my knowledge
doesn't use mirror lists, it uses the rhn plugin to determine what repo
urls to access so this wouldn't necessarily effect RHEL).

Thoughts?

-- 
Jesse Keating
Fedora -- All my bits are free, are yours?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.baseurl.org/pipermail/yum-devel/attachments/20071128/6aaa609c/attachment.pgp 


More information about the Yum-devel mailing list