Push Mirroring

Push mirroring is a form of mirroring that minimizes the time it takes for changes to the archive to reach mirrors. The master server uses a triggering mechanism to immediately inform the client mirror that it needs to be updated.

Push mirroring takes a more effort to set up since the maintainers of the upstream and downstream mirror must exchange information. The benefit is that the upstream mirror initiates the mirror process immediately after its archive has been updated. This allows changes to the archive to propagate quickly.

Explanation of the method

Triggers are done using ssh. The push-server sshs into the pushed server's mirror account using public-key authentication. The key is set up such that this action may only trigger a mirror run, no other commands. The pushed server then runs ftpsync to update the archive using rsync as normal.
Exchanging public keys and potentially access to restricted rsync servers requires coordination between a mirror operator and their upstream source.

Setting up a push client mirror

To become a push client for the FTP archive, you will need to set up mirroring using our standard ftpsync script set.
Once that is working, add the public sshkey of your upstream mirror in your ~/.ssh/authorized_keys with a command="~/bin/ftpsync restriction. (You may have ftpsync in a different directory, adapt accordingly.)

Push-Primary client sites

Push-Primary client mirrors, also referred to as Tier-1 mirrors, are the push client mirrors which sync directly from Debian's internal syncproxy network.

If your site is very well connected (both very good bandwidth and well connected to major backbones) and you are willing to let other sites mirror from your site, you may want to let us know so we can consider you for a push mirror. Please contact the Debian mirrors team for set-up details. Note however, that we can't accept all requests for becoming a primary push mirror as we already have a fair number of Tier-1 mirrors.

Setting up a push server mirror

Given the large number of mirrors and the size of the Debian archive, it is not feasible for all the mirrors to use Debian's internal syncproxies as the upstream source for Debian. It is much more efficient if the load is distributed among a number of push mirrors distributed throughout the globe.

Therefore, a number of Push-Primary sites are, in turn, push servers for their downstreams. If you want to configure your site as a push server for your downstream sites, see the details on setting up a push server.