fedora-infra / mirrormanager2

Rewrite of the MirrorManager application in Flask and SQLAlchemy
https://mirrormanager.fedoraproject.org
GNU General Public License v2.0
65 stars 49 forks source link

Global mirrors are not possible #309

Open ott opened 2 years ago

ott commented 2 years ago

Three larger CDNs, Fastly, Amazon CloudFront and Cloudflare, offer their services the Debian project without charge and act like mirror servers for the project. All of them have CDN server worldwide and use anycast and GeoDNS direct clients to the nearest CDN server.

Perhaps this offering is extended to projects that use MirrorManager2 or other mirror operators want to offer mirror in multiple countries or globally. Therefore, it seems to be useful to have the possibility to indicate that a mirror operates globally and that it has mirror servers in many or almost all countries. A ISO 3166-1 user-assigned code element like XX could be used to represent this.

carlwgeorge commented 5 months ago

https://mirror.rackspace.com also uses something similar to GeoDNS to return different IPs based on the requestor's location. I'm not a maintainer of MirrorManager, but as far as I understand the software doesn't support that directly. You need one thing in control of the geo-balancing, either MM or DNS. Rackspace works around this by having additional region-specific subdomains that take you directly to a region's IP address, and those are what are used in MM, as independent "hosts" within a "site".