Project:Infrastructure/Mirrors/Source

From Gentoo Wiki
Jump to:navigation Jump to:search

Source (or "distfile") mirrors distribute the source archives for the software included in Gentoo as well as stages and tree snapshots for installation.

This document is intended for parties interested in providing a community source mirror.

Requirements

Bandwidth
You need to have a minimum of 5 MBit/s upstream capacity on a permanent connection, but we strongly recommend at least 100 Mbit/s upstream. DSL, cable, or other dial-up connections are not suited for hosting a mirror. The very low requirement is intended for parts of the world where high bandwidth is not available.
Storage
Hosting a mirror requires a minimum of 800 GiB available disk space.
Transmission protocols
Users must be able to reach your mirror via HTTP and/or HTTPS (with valid certificates). In addition to either or both of these protocols, you can provide access via rsync. IPv6 connectivity is strongly encouraged. Previously, this document also offered FTP, but that is no longer recommended.
Simultaneous connections
We ask that you support a minimum of 15 and preferably 30 or more concurrent user connections.
Update frequency
All mirrors must be synchronized every four hours, starting at midnight in your local time zone.
Contact and information policy
Your administrative contact must react to enquiries as soon as possible and resolve issues within two weeks. We expect to be notified in the event of any changes or prolonged outages.

Becoming a community mirror

If your hardware and connection fulfill the requirements stated above, we would love to have you as a community mirror.

Note
Please note that there might be longer delays between your submission and inclusion in the mirror list, depending on the current need for additional bandwidth.
Mirrors in areas with no or little existing coverage will be added preferentially.

Initial setup

First, you need to fetch the mirror data. You can do so via rsync from rsync://masterdistfiles.gentoo.org/gentoo.

Note: there was previously a separate mirror prior to the master source mirror, but the master is now freely available. Thanks to the Unix Systems Support Group (USSG) at Indiana University for previously hosting the old mirror, and Oregon State University Open Source Lab (OSUOSL) for being able to open up their master source mirror directly.

You should have the following directories:

  • /distfiles
  • /experimental (HTTP mirrors: Directory listing required)
  • /releases (HTTP mirrors: Directory listing required)
  • /snapshots (HTTP mirrors: Directory listing required)

You may exclude /releases/historical to save some space. Do not exclude any other directories.

Be sure to set up a cronjob to update your data according to the requirements (every 4 hours, starting midnight local time).

Requesting inclusion

When your mirror has completed fetching the data and your update cronjob is in place, please file a ticket to inform us about your new mirror: File ticket

You need to have an account on bugs.gentoo.org and be logged in to file the ticket. Please fill in all fields with the relevant information, and include whatever else you think may be important to let us know.

Inclusion process

When we are ready to process your request, your mirror is added to our mirror monitoring system for a period of at least 2 weeks. During this time, we will update you with any issues we find on the ticket you have filed.

Should the service quality of your mirror meet our standards, we will then add it to the community mirror listing and provide you with access information to the master source mirror.

If any issues remain after a certain period of time that would impact the service negatively, we may decline your request. In this case, you can re-request the inclusion of your mirror after a period of 6 months.

After the inclusion

First of all, thank you for contributing to the Gentoo project.

Please ensure that your administrative contact is subscribed to the low traffic gentoo-mirrors mailing list which is used to publish announcements for all mirror admins. You can do so by sending an empty message to gentoo-mirrors+subscribe@lists.gentoo.org.

When anything changes (be it that you're physically moving, or need to change the URL, or have a new admin contact), please be sure to let us know immediately. You can reach us via email at mirror-admin@gentoo.org, or you can file a ticket on bugs.gentoo.org in the Mirrors product.