-
Notifications
You must be signed in to change notification settings - Fork 394
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create mirrors.cicku.me #1030
base: master
Are you sure you want to change the base?
Create mirrors.cicku.me #1030
Conversation
Please follow the geolocation example at the bottom of the page at https://wiki.almalinux.org/Mirrors.html The system uses this to serve your mirror to users geographically close to your mirror. |
Just noticed the filename doesn't end in .yml. Please rename the file to mirrors.cicku.me.yml |
My mirror is behind CDN, what country should I fill it? It is available everywhere. Even |
I see. Are the files pre-cached basically everywhere or only cached on each edge based on need? I see CF Magic Transit is what's behind it. This is certainly an interesting situation that we've not encountered yet. Where is the actual server that sits behind the CDN in this case? |
There are 4 bare metal servers powering the mirror:
And I have additional VPSs which will act as the warm-up site. Files will not always be stored in each metal, but if more users visit the same edge, these requested files will be cached in the same PoP (referred as Magic Transit is not directly used by the mirror site (my homepage is the same across different subdomains 💡), it is behind the scene though. I do have a rsync service behind Spectrum, but it is a private one and due to bandwidth concern I do not plan to announce it. |
CDNs are a bit tricky for the mirror system because it goes against what it was designed to do. The mirror system distributes traffic to local mirrors and having potentially cold caches where files don't currently exist would degrade the user experience. The best thing will be to set the geolocation on this to the primary location where the files will always be with a DNS entry tied only to that location, and not one that'd fall back to other locations which even if hot, would result in sub-par user experience by potentially serving users across the country/world. |
My understanding of a modern mirror ecosystem is that CDN can co-exist with local mirrors because CDN may not technically be the best/fastest, it is for load balancing global traffic instead. A package manager should regularly perform latency check/speed test and select the best, like
I have a long list of subdomains like |
I do have 1 question about yaml format, should I put all subdomains in a single file and create one by one? |
We do not rely on fastestmirror, instead our mirror system does the logic to try to serve the best mirror to you and that's why CDNs don't play nicely with our mirror system. Since we expect one mirror to represent one location for our geolocation logic a CDN that can exist from any number of places poses a problem. Furthermore, when said CDN has an endpoint that dies and it redirects traffic to another endpoint that is great, but it causes the user sub-par performance if it is redirect to one far away. We can do a better job of removing problematic mirrors from the list and redirecting users to other mirrors that are close to them rather than the CDN doing potentially less than ideal things. Having said all that - if you have records to each of your locations, and it sounds like you do, the solution here is to create a mirror entry in If you must use a hot/cold caching architecture then there are some TTLs we could provide that would result in good UX, but you'd have to bypass any rules that'd remove things based on infrequent access...but again direct storage is much preferred. Thanks for working on setting up mirroring, it is very much appreciated :) Let me know what you think about my comments. |
Add a new mirror